Modem Firmware Update
Last updated
Last updated
Important: When upgrading your modem for the first time, even if you have updated it in the past with the old firmware update method, you MUST use the "recovery" upgrade method described below. Otherwise you will risk breaking your module
Please read the following instructions carefully as there are some significant changes compared to the previous updater version.
Most importantly, the updater is now integrated in the latest stable firmware release (we will also publish a new development and pybytes firmware in the coming days), so you no longer need to upload any scripts to your module. The built-in updater will take precedence over any scripts uploaded.
Please start with the following steps:
Upgrade the Pycom Firmware Updater tool to latest version
Select Firmware Type stable
in the communication window to upgrade to version v1.18.1.r1
You can find the different versions of firmwares available here:
There are two packages available, one for the latest CAT-M1 firmware, and another for the latest NB-IoT firmware.
After unpacking the zip archive, you will find each firmware packages contains two files, one being the firmware file (CATM1-38638.dup
or NB1-37781.dup
) and the updater.elf
file, which is required when using the "recovery" firmware update method or if a previous upgrade failed and the modem is in recovery mode.
Please note that the updater.elf
file is only around 300K so you can also store it inside the flash file system of the module. The firmware dup files will NOT fit into the available /flash
file system on the module, so you either need to use an SD card or upload it directly from your computer.
To transfer the firmware files onto the SD card you have two options:
Format your SD card as with the FAT file system and then copy the files onto the card using your computer
Make sure your SD card has an MBR and a single primary partition, the format it directly on the module and mount it:
Transfer the firmware files onto the SD card using FTP. Please ensure the transfer is successful and that the file on the module has the same size as the original file.
Once you copied/uploaded the firmware files on to the SD card you can flash the LTE modem using the following command:
To flash the CAT-M1 firmware onto your device:
To flash the NB-IOT firmware onto your device:
Please note you can directly flash the desired firmware onto your module, it is not necessary to upgrade to the latest CAT-M1 firmware before switching to NB-IoT.
If you have already mounted the SD card, please use the path you used when mounting it. Otherwise, if an absolute path other than /flash
is specified, the script will automatically mount the SD card using the path specified.
Once update is finished successfully you will have a summary of new updated versions. The full output from the upgrade will looks similar to this:
After you have updated your modem once using the recovery method, you can now flash your modem again using just the CATM1-38638.dup
or NB1-37781.dup
file without specifying the updater.elf
file. However, should the upgrade fail, your modem may end up in recovery mode and you will need the updater.elf
file again. The updater will check for this and prompt you if using the updater.elf
file is necessary.
Example output using just the firmware file:
If you can't use an SD card to hold the firmware images, you can use the existing UART interface you have with the board to load these firmware files from your Computer.
You will need the following software installed on your computer:
First, you need to prepare your modem for upgrade mode by using the following commands:
After this command is executed a message will be displayed asking you to close the port.
You must close the terminal/Atom or Visual Studio Code console to run the following commands from your computer:
Go to the directory where you saved the sqnsupgrade
scripts run the following commands in terminal
In case of any failure or interruption to the process of LTE modem upgrade you can repeat the same steps after doing a hard reset to the board (i.e disconnecting and reconnecting power), pressing the reset button is not enough.
, if it's not directly available through your OS distributor
You will also need to download the following Python scripts: