Cellular Connection Process

I’m going through the XBee Cat-M connection status example on github (https://github.com/digidotcom/xbee-micropython/tree/master/samples/cellular/connection_status) and noticed the modem will initialize and register to the network twice.

Is this a race condition, a timeout, or can someone explain what is going on under the hood and why it goes through this process twice?

  • AI Changed!
    • New AI: 0xFF (MODEM_INITIALIZING)
  • AI Changed!
    • New AI: 0x22 (REGISTERING_TO_NETWORK)
  • AI Changed!
    • New AI: 0xFF (MODEM_INITIALIZING)
  • AI Changed!
    • New AI: 0x22 (REGISTERING_TO_NETWORK)
  • AI Changed!
    • New AI: 0x23 (CONNECTING_TO_INTERNET)
  • AI Changed!
    • New AI: 0x00 (CONNECTED)

Much Appreciated.

Soter,

Yes, it is simply that the first channel you selected that there was a tower on, did not allow the connection to occur. It could simply be that it was not a CAT M/NBiOT tower or that it did not support your carrier.

1 Like

Ah that makes sense, so a follow up question. If it iterates through channels and hangs on REGISTERING_TO_NETWORK does this mean there are no supported towers in range? Thank you for your help mvut.

Yes, I would suspect that would be the case. Either that or wrong APN depending on what the last I value was before it started over.