Telit Cinterion IoT Developer Community
MV31: How to do FW update via QDU over MBIM on Linux ARM64 OS
Showcase, November 21, 2022 - 11:51am, 918 views
Background:
The MV31/MV32 5G data cards have the embedded QDU function over MBIM interface for its FW download, update/upgrade.
QDU over MBIM is dedicated on both Microsoft Windows 10/11 and on Linux Kernel (up from 5.x).
->Refer to details about QDU over Libmbim (up from V1.26) on Linux OS, see:
https://gitlab.freedesktop.org/mobile-broadband/libmbim/-/blob/main/NEWS
https://www.freedesktop.org/software/libmbim/libmbim-glib/latest/libmbim-glib-QDU.html
Show Case:
Here is a show case about MV3x FW update using QDU function over MBIM on the Linux OS for ARM64.
For the target host HW platform, customers will need to build the libmbim library firstly.
For instructions, refer to: https://modemmanager.org/docs/libmbim/building/
$ git clone https://gitlab.freedesktop.org/mobile-broadband/libmbim.git
$ cd libmbim
$ meson setup build --prefix=/usr
$ ninja -C build
Then install the new libmbim library:
$ sudo ninja -C build install
Note:
Regarding rebuild & install the new libmbim library, there are many dependencies, compile tools and make options of the library, for the customer target embedded HW system /e.g. gudev, glib, gobject, gio and gmodule, and the libmbim-glib)
Ussually these function blocks are however not in the standard Linux distributions for embedded HW platform (e.g. ARM), customers need to check out the details on their target HW platforms / Linux distributions
fxQDU Tool:
Once the libmbim library has been built, then copy the ota.bin into the directory, and use the FW download tool from Thales DIS AIS (NDA is required)
$ ./fxQDU
See below log, which is on the test device “rockpro64 ARM64” HW platform which we use as reference unit (https://www.pine64.org/rockpro64/).
Pre-condition: it is necessary to disable the Modem Manager before running the fxQDU tool.
sudo systemctl disable ModemManager.service
Steps:
============
root@rockpro64: /MV31/mnt# uname -r
5.15.74-rockchip64
root@rockpro64:/MV31/mnt# uname -a
Linux rockpro64 5.15.74-rockchip64 #22.08.6 SMP PREEMPT Tue Oct 18 06:50:17 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux
root@rockpro64:/MV31/mnt# ./fxQDU
[/dev/wwan0mb im0] Successfully requested modem to update session Asynchronously
opening QDU file... ./ota.bin
[/dev/wwanOmbim0] Successfully opening QOU file
========> Update OTA file: 100% Successfully upgrade OTA image
Wait switch bootup partition and reboot
root@rockpro64:/MV31/mnt#
============
Afterwards, re-enable again the Modem Manager when the fxQDU tool is finished
sudo systemctl enable ModemManager.service
Please contact Thales IOT support for the fxQDU tool