NB-IoT Firmware Upgrade

uBlox has just release firmware version 6.57 for the whole range of SARA NB-IoT modules. With this new firmware they have also released an new tool that (unfortunately only) runs on Windows with which you can flash the new firmware on the module in less than a minute. Its called the UEUpdater.

But first you need to check which NB-IoT module you actually have.
If you check the label on the module:

You see marked in blue here the module version (e.g. SARA-N200) and marked in red the sub version number (01B or 02B).

Some of the early boards we shipped were fitted with the 01B while for the later production batches uBlox has provided us with the 02B modules.

The firmware for these two sub versions is distinctly different. If you have version 01B please follow click the following link to follow the update process for 01B modules. If you have version 02B please continue reading here.

The UEUpdater tool allows you to update the firmware over the USB interface of your Windows computer. This means the uBlox module needs to be connected to USB. If you have an Arduino M0 or compatible board (like the Crowduino or SODAQ ExpLoRer)  this is really easy.
All you need to do is to load this passthrough sketch on the board, which takes care of passing everything from the USB port to the module and back directly.

This unfortunately doesn’t work on the older 8 bits Arduino board like the Leonardo. We have tried extensively to make it work, but the older boards simply aren’t fast enough. Normally the NB-IoT modules communicate at 9600 bits/s, but during the update process the the speed is changed to 115200 bits/s which is just a tad too fast for these 8 bit microcontrollers.

If you don’t have a 32 bits Arduino board, the firmware update can also be done using a USB to serial converter. If you want to use this method, follow this link.

Well like I said, it works like a charm on the faster 32 bit M0 based boards (and probably on a whole range of other 32 bit Arduino’s too). The speed switching is handled in the Arduino sketch by just these few lines of code:

// check if the USB virtual serial wants a new baud rate
  if (USB.baud() != baud) {
    baud = USB.baud();
       UBLOX.begin(baud);
  }

So once you have loaded the passthrough sketch you can install the UEUpdater on your computer by downloading the latest firmware here.

With the UEUpdater you can load the firmware. The firmware comes in different versions, depending on the type of SARA-N2xx module you have (like N200, N211, etc.).

Please make sure again that your module is of the 02B version and choose the right firmware version from the archive you just downloaded. For example if your module is a SARA-N211-02B you choose sara-N211-02B-00.fwpkg.
Note that if you have a version 01B module please use the following link

The new firmware comes with a new set of documentation, which you can download here.

What you need to be aware of is that with this version of the firmware for some of the commands the syntax has change. For instance the command AT+NMGS use to be used as:

AT+NMGS=3,AA11BB

But in this new version of the firmware the payload needs to be in quotes. So the new syntax is:

AT+NMGS=3,”AA11BB”