This article presents the steps I followed to upgrade the firmware of a Sierra Wireless WP8546 used in a mangOH Green board.
The hardware configuration I’ll use to perform the update is based on following elements:
- a PC running Linux Mint 18.1 (a brand new installation)
- a mangOH Green board, with a WP8548, and GNSS and cellular antennas
- mangOH board is configured for USB power supply (see User Guide)
Install swiflash as described here.
Connect the board to the PC using the provided USB cable. On my PC, a dmesg command shows that the board is recognized:
[ 4276.098590] usb 2-1.7: new high-speed USB device number 10 using ehci-pci [ 4276.199239] usb 2-1.7: config 1 has an invalid interface number: 19 but max is 1 [ 4276.199244] usb 2-1.7: config 1 has an invalid interface number: 20 but max is 1 [ 4276.199246] usb 2-1.7: config 1 has an invalid interface number: 20 but max is 1 [ 4276.199248] usb 2-1.7: config 1 has no interface number 0 [ 4276.199250] usb 2-1.7: config 1 has no interface number 1 [ 4276.200235] usb 2-1.7: New USB device found, idVendor=1199, idProduct=68c0 [ 4276.200239] usb 2-1.7: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 4276.200242] usb 2-1.7: Product: WP8548-G [ 4276.200244] usb 2-1.7: Manufacturer: Sierra Wireless, Incorporated [ 4276.200246] usb 2-1.7: SerialNumber: 0123456789ABCDEF [ 4276.217522] cdc_ether 2-1.7:1.19 usb0: register 'cdc_ether' at usb-0000:00:1d.0-1.7, CDC Ethernet Device, 8a:c9:fb:5d:dc:ae [ 4276.235488] cdc_ether 2-1.7:1.19 enp0s29u1u7i19: renamed from usb0 [ 4276.256129] IPv6: ADDRCONF(NETDEV_UP): enp0s29u1u7i19: link is not ready [ 4276.256249] cdc_ether 2-1.7:1.19 enp0s29u1u7i19: kevent 12 may have been dropped [ 4276.256255] cdc_ether 2-1.7:1.19 enp0s29u1u7i19: kevent 12 may have been dropped [ 4276.260989] cdc_ether 2-1.7:1.19 enp0s29u1u7i19: kevent 12 may have been dropped
But the board appears as connected via Ethernet, not as a DM port as it should be the case according to the documentation.
The output from ifconfig command shows that the newly created network interface was assigned an IP address:
enp0s29u1u7i19 Link encap:Ethernet HWaddr 8a:c9:fb:5d:dc:ae inet addr:192.168.2.3 Bcast:192.168.2.255 Mask:255.255.255.0 inet6 addr: fe80::6226:5d43:6fa0:4f8d/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:37 errors:0 dropped:0 overruns:0 frame:0 TX packets:53 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:8031 (8.0 KB) TX bytes:6720 (6.7 KB)
So, let’s follow the instructions that allow to switch the board into bootload mode:
- ssh into the board as root (there is no password):
- display version information, for later reference:
root@swi-mdm9x15:~# cm info Device: WP8548 IMEI: 359377060009023 FSN: LL542500181303 Firmware: SWI9X15Y_07.11.09.00 r32989 CARMD-EV-FRMWR1 2016/08/11 18:03:20 Bootloader: SWI9X15Y_07.11.09.00 r32989 CARMD-EV-FRMWR1 2016/08/11 18:03:20
- switch the board into bootloader mode:
root@swi-mdm9x15:~# microcom -E /dev/ttyAT AT!BOOTHOLD
- the board answers back with OK, and the connection is closed a few seconds later.
- download the generic combined images binary file from here
- and flash the WP8548 with the downloaded file:
swiflash -m WP85XX -i WPx5xx_Release-13.1_GENERIC.spk
- when the message Rebooting the module is displayed, stop swiflash (CTRL-C)
- using ifconfig command again, check that the network interface with IP address 192.168.2.3 is available
- using ssh, connect to the board, and display version information. Now it’s as follows:
Device: WP8548 IMEI: 359377060009023 FSN: LL542500181303 Firmware: SWI9X15Y_07.11.22.00 r33729 CARMD-EV-FRMWR1 2017/01/11 18:04:06 Bootloader: SWI9X15Y_07.11.22.00 r33729 CARMD-EV-FRMWR1 2017/01/11 18:04:06 priIdPn: 9904889 priIdRev: 01.00 skuId: 1102621