BG96 – initial connectivity testing

For BG96 setup, the main commands are:

AT+CGDCONT=1,"IP","<APNstring>"  //reboot after any change of this
AT+QCFG=”nwscanmode”,3     // select LTE only (except if GSM really needed - there is only VDF NZ with GSM)
AT+QCFG=”iotopmode”,0      // select CAT.M1 or 1 for NBIoT radio
AT+QCFG="band",0,8000084,8000084   //restrict to B3, B8, B28 for Australia, New Zealand networks
AT+CPSMS=0;+CEDRXS=0      // make sure PSM, eDRX is off for initial connection test.
AT+CEREG?       // Check for registration +CEREG: x,1 (or x,5 for roaming) if success.

Please note and use the connect APN for the SIM card, if in doubt check with the source of the SIM card. The default APN for Telstra is: telstra.iot . Sometimes they may specify a different APN such as telstra.internet that is used for LTE data generally. If the SIM is from another 3rd party such as M2Mone, they may specify their own different APN.
To check that the module radio is active and list networks detected(especially if registration fails), try doing a manual scan of available networks. From my development kit, it can detect all networks, need to wait for up to a few minutes for the complete scan. Its best to try this after restricting the bands to search, in the command above, should give faster results.

AT+COPS=?
+COPS: (1,"vodafone AU","voda AU","50503",9),(1,"Optus AU","Optus","50502",9),(1,"Telstra Mobile","Telstra","50501",9),,(0,1,2,3,4),(0,1,2)
OK

To force it manually to Vodafone (faster search):

AT+COPS=1,2,”50503”  // or "50501" for Telstra, "50502" for Optus

Note that Vodafone NB IoT network SIMs are roaming, i.e. the SIM home country is not Australia. This presents challenges to NB IoT radio and can take 10’s of minutes to find service for 1st time. After this 1st time the cell network information is cached and following searches only take seconds. To manually force the search to Vodafone, use the above command.
Note that Vodafone NB1 APN is spe.inetd.vodafone.nbiot, or can be left blank.