FX30S not reconnecting to the network after removing and re-attaching antenna

Hi all,

We have a customer in New Zeland that when he removes and attach the antenna on the modem, the modem wont reconnect to the network, the modem need to be rebooted to reconnect otherwise he has to wait a lot , we estimated like 10 to 15 minutes sometimes even more.

While debugging i’ve found that when removing the antenna the data connection state handler wont be notified real time.

Also when before the antenna get removed the signal quality is high , after removing and attaching the antenna we get very weak signal the radio state goes to LE_MRC_REG_SEARCHING
and, as i said before, we have to wait like 10 to 15 minutes or even more to get the modem reconnected to network.

I think this is an odd behavior for the modem and its a problem for us , because if i restart the modem it will reconnect right away, and we need the modem to be able to reconnect when we remove the antenna and attach it again.

We are on R14.1.1 , we updated from R11 which had the same problem and we thougth that R14.1.1 would resolve the issue

Do you have any suggestion?

To isolate if this is legato problem, you can try at+cgreg=2 to see if there is any +cgreg unsolicited message after 15 mins
Also to totally remove signal, you need to put module into shielding box

But at+cgreg=2 is for GPRS network registration status as the FX30S AT command manual states…
Shouldn’t i use CREG instead?

Also if i need to put the modem into a shielding boxt to completely remove signal, this means that the signal quality is not real?

Thanks

you can use both +CREG or +CGREG

if you don’t put in shielding box, it might still register network

Ok, what should output the at+cgreg=2 command if the problem is not related to legato?

you will see unsolicited message +CGREG:2 together with the data connection state handler saying disconnect

we did some testing , removing and plugging the antenna a few times
this is the result , in the end the modem hang up in LE_MRC_REG_SEARCHING and the last report from +crreg is :
+CREG: 3

+CGREG: 3

Does this mean this is a legato problem?

below the full log

at+cgreg=2
OK

+CREG: 1,“FFFE”,“4949579”,7

+CGREG: 1,“FFFE”,“4949579”,7

+CREG: 2

+CGREG: 2

+CREG: 1,“FFFE”,“494216F”,7

+CGREG: 1,“FFFE”,“494216F”,7

+CREG: 2

+CGREG: 2

+CREG: 0

+CGREG: 0

+CREG: 2

+CGREG: 2

+CREG: 1,“FFFE”,“494216F”,7

+CGREG: 1,“FFFE”,“494216F”,7

+CREG: 2

+CGREG: 2

+CREG: 0

+CGREG: 0

+CREG: 2

+CGREG: 2

+CREG: 3

+CGREG: 3

thanks

When +CGREG: 2 comes, does it show LE_MRC_REG_SEARCHING?

I feel this is a radio firmware issue - I have attached a test build of Release 14 which has fixed a similar issue for me. It’s too big to attach, and you can download from here.

You can still reuse your application built for R14 which should be compatible.

If you have more concern about managing the network attachment, there is an off the shelf free connManager comes with PyRTE

connManager Config Usage:
e.g.: config set /apps/connManager/app/noRxDataTimeout
noRegTimeout Specify timeout in seconds before reset radio for no registration, default 60
maxRadioRetry Specify max times of retry of reset of radio without registration, default 3
noRxDataTimeout Specify timeout in seconds before reboot for no receiveing traffic, default 900

Hope it helps.

Hi @billzhou may i ask what did you modify on this firmware?

@jyijyi im going to test and report back

thanks

@jyijyi yes when cgreg: 2 comes it shows LE_MRC_REG_SEARCHING

then legato is in sync with the AT command response, probably not the legato issue, and when you receive +CGREG:2 , that means the module is still trying to reconnect to the network

Ok, but why does the modem connect almost instantly if rebooted? Why this does not happen when the modem lose the connection?

Is there any way of menaging the network more efficiently? Like @billzhou wrote about a connManeger that menages noRegTimeout, maxRadioRetry, noRxDataTimeout. I would like to menages this options myself in my app

Thanks

how about restarting the modem by AT+CFUN=0 and AT+CFUN=1?
Can it register network immediately?

the modem by default has cfun=1 , setting to cfun=0 the modem disconnect and reconnect to network , rebooting made the cfun go back to 1

can it be a workaround for you by restarting the telecom stack by AT+CFUN?

Do you mean that the at command “at+cfun?” should restart the telecom stack?

yes, that is the function of AT+CFUN

The firmware includes a fix of dropping out from CAT M1 network. It can be the direct trigger of LE_MRC_REG_SEARCHING which is trying to register to the network option next to CAT M1. For FX30S with WP7702, the next option is 2G, and if you are using a SIM which doesn’t support 2G(e.g. Spark in NZ), it will take some time to timeout before switch back to CAT M1.

Well, this is all theory - your testing result shall verify it!

@billzhou
If its not a problem for you i would like to have the source code of this fix and acually know if you modified the framework or the kernel