I recently purchased an MKR NB 1500 and have been trying to get it working with very little success. I have a Hologram sim card. I've been trying the TestModem and NBScanNetwork sketches.
The TestModem sketch works less than half the time, by which I mean of the time I get the following in the serial monitor:
19:36:17.090 -> Starting modem test...ERROR, no modem answer.
19:36:27.389 -> Checking IMEI...Error: Could not get IMEI
Sometimes it'll successfully return the IMEI then after a reset cannot find the modem even moments later.
And for the NBScanNetwork sketch it just sits endlessly with the following showing in the serial monitor:
18:18:21.794 -> NB IoT/LTE Cat M1 networks scanner
After reading through a number of other forum threads where people were experiencing similar issues I've tried the solutions they've found helpful- with and without a battery connected, connected direct to my laptop (bypassing the USB hub I normally connect external devices through), even several different USB cables. All to no avail. I've seen a number of people who have had bad boards and received replacements from Arduino (some of whom have received multiple bad boards).
I haven't reached out to Arduino support yet, but seems like the logical next step unless there is something else I should try. Any input is appreciated. So far I'm very frustrated.
You might have a bad board, before you contact support, could you please try the following change in the NBScanNetwork sketch and paste the output from the Serial Monitor in a reply.
Change the "NB nbAccess;" line to "NB nbAccess(true);", this will enable debug output.
Thanks for the suggestion. So after enabling debug output this is what I see in the serial monitor. I'm not sure what these results towards the top of the output mean.
10:28:22.508 -> NB IoT/LTE Cat M1 networks scanner
10:28:24.208 -> AT
10:28:24.208 -> OK
10:28:24.308 -> AT
10:28:24.308 -> OK
10:28:24.410 -> AT+CMEE=0
10:28:24.410 -> OK
10:28:24.615 -> AT+CFUN=0
10:28:24.615 -> OK
10:28:24.820 -> AT+CPIN?
10:28:24.820 -> +CPIN: READY
10:28:24.820 ->
10:28:24.820 -> OK
10:28:25.023 -> AT+CMGF=1
10:28:25.023 -> OK
10:28:25.227 -> AT+UDCONF=1,1
10:28:25.227 -> OK
10:28:25.430 -> AT+CTZU=1
10:28:25.430 -> OK
10:28:25.635 -> AT+CGDCONT=1,"IP",""
10:28:25.635 -> OK
10:28:25.839 -> AT+UAUTHREQ=1,0
10:28:25.839 -> OK
10:28:26.044 -> AT+CFUN=1
10:28:26.044 -> OK
10:28:26.248 -> AT+CEREG?
10:28:26.248 -> +CEREG: 0,0
10:28:26.248 ->
10:28:26.248 -> OK
10:28:26.451 -> AT+CEREG?
10:28:26.451 -> +CEREG: 0,0
10:28:26.451 ->
10:28:26.451 -> OK
10:28:26.656 -> AT+CEREG?
And the last section seems to just continue repeating indefinitely. I let it sit for a minute or two and saw nothing else but that in the rest of the output to the serial monitor.
My sim is specifically for cat-m1 / nb iot and I'm in an area with plenty of coverage. I haven't moved around to other areas of my house aside from my desk, but I can't imagine the service is that spotty since I'm in a metro area.
Do you still have the issue with TestModem where SAMD cannot talk to ublox module? I remember having similar issue but didn't spend too much time on it.
Are you using the antenna sent by Arduino in the kit? If so, maybe try to use an antenna tuned for the band you are in. I've had very mitigate experience with this antenna.
yes I am still having issues with both sketches. I have tried with the included antenna and with a different antenna that is specific for nb iot / cat m1 applications with the same results- the TestModem sketch works less than half the time and the NBScanNetwork appears to just never connect with or even find a network.
At this point I'm thinking I probably need to contact Arduino support and request a new board. But let me know if you have any other suggestions or thoughts.
I must be missing something basic, but I can't get this simple NBConstructor sketch to work. The 1nce SIM is active and working in another device. I would at least like to see the debug info during connection attempts but "NB nbAccess(true) doesn't seem to work. Is PINNUMBER required? Repeatedly, I just get "Not connected". This is my first attempt at programming an MKR NB 1500, so there may be something simple that I am missing.
Thanks in advance.
// libraries #include <MKRNB.h>
// PIN Number #define PINNUMBER ""
// initialize the library instance
NB nbAccess(true); // include a 'true' parameter for debug enabled
void setup()
{
// initialize serial communications
Serial.begin(9600);
// connection state
boolean notConnected = true;
// Start NB Module
// If your SIM has PIN, pass it as a parameter of begin() in quotes
while(notConnected)
{
if(nbAccess.begin(PINNUMBER,"iot.1nce.net")==NB_READY){
notConnected = false;
Serial.println("Connected to network");
}
else
{
Serial.println("Not connected");
delay(1000);
}
}
}