This article discusses upgrading the Versa WWAN firmware on a Sierra wireless modem.



Upgrade the Firmware on a Sierra Wireless Modem

  1. Download the firmware file from: 

 https://versanetworks.box.com/s/do17qdm6q9etues5tojuy0fezyn5xt7g 

(or)

https://upload.versa-networks.com/index.php/s/8AUPSbtSttHPyTQ


Note: New firmware v3 has been made available since 24th Aug 2022.


  1.  When you are prompted for a password, enter @VersaLte.
  2. Copy the downloaded binary file to the /home/admin directory.
  3. Change the permission of the binary file:
    sudo chmod 755 <downloaded-bin-file>
  4. Execute the binary file to upgrade the Sierra wireless modem:  
    sudo ./<downloaded-bin-file>


The upgrade process proceeds as follows:

  1. All LTE interfaces are disconnected.
  2. The upgraded firmware starts on the LTE interface.
  3. If a second LTE interface is present, the upgraded firmware starts on that interface.
  4. After approximately 10 minutes, the LTE interface or interfaces are reconnected.

The following sample output shows the messages displayed during the firmware upgrade process on a Sierra wireless modem that has two LTE interfaces: 


NOTE: The sample logs below relate to an upgrade from 2017 Firmware to 2019 Firmware, but the same sequence would hold true while upgrading from 2019 to 2022 firmware, and so forth (this is just an sample to help you understand the installation flow)


[admin@WIFI-TEST: ~] $ sudo chmod 755 versa-wwan-20200402-045405-v1-fw-32-33.bin
[admin@WIFI-TEST: ~] $ sudo ./versa-wwan-20200402-045405-v1-fw-32-33.bin
Verifying archive integrity... All good.
Uncompressing Custom Debian binary  100%
udev stop/waiting
udev start/running, process 14412
Disconnecting wwan connections...
Stoping modemmanager process
mmanager stop/waiting
Starting wwan upgrade...
Starting upgrade, firmware  SWI9X30C_02.32.11.00_SPRINT_002.062_000.nvu SWI9X30C_02.32.11.00_ATT_002.070_000.nvu SWI9X30C_02.32.11.00_GENERIC_002.064_000.nvu SWI9X30C_02.32.11.00.cwe device /dev/cdc-wdm0
loading device information before the update...
setting firmware preference:
  firmware version: '02.32.11.00'
  config version:   '002.062_000'
  carrier:          'SPRINT'
rebooting in download mode...
download mode detected
error: error creating device: timed out waiting for the response
loading device information before the update...
setting firmware preference:
  firmware version: '02.32.11.00'
  config version:   '002.062_000'
  carrier:          'SPRINT'
rebooting in download mode...
download mode detected
downloading cwe image: SWI9X30C_02.32.11.00.cwe (64.4 MB)...
finalizing download... (may take more than one minute, be patient)
successfully downloaded in 68.12s (945.6 kB/s)
downloading cwe image: SWI9X30C_02.32.11.00_SPRINT_002.062_000.nvu (16.5 kB)...
finalizing download... (may take more than one minute, be patient)
successfully downloaded in 0.05s (305.0 kB/s)
downloading cwe image: SWI9X30C_02.32.11.00_ATT_002.070_000.nvu (13.1 kB)...
finalizing download... (may take more than one minute, be patient)
successfully downloaded in 0.03s (480.8 kB/s)
downloading cwe image: SWI9X30C_02.32.11.00_GENERIC_002.064_000.nvu (3.2 kB)...
finalizing download... (may take more than one minute, be patient)
successfully downloaded in 0.02s (127.3 kB/s)
rebooting in normal mode...
normal mode detected

To validate the firmware running in the module, the program waits for a complete boot; this process takes some time and several retries.

waiting some time for the device to boot...
loading device information after the update (1/20)...
waiting some time for the device to boot...
loading device information after the update (2/20)...
------------------------------------------------------------------------
   original firmware revision was:
      SWI9X30C_02.24.05.06 r7040 CARMD-EV-FRMWR2 2017/05/19 06:23:09
   original running firmware details:
      Model: MC7455
      Boot version: SWI9X30C_02.24.05.06
      AMSS version: SWI9X30C_02.24.05.06
      SKU ID: 1103781
      Carrier ID: 1
      Config version: 002.026_000
   original firmware preference details:
      image 'modem': unique id '000.000_000', build id '00.00.00.00_AUTO-SIM'
      image 'pri': unique id '000.000_000', build id '00.00.00.00_AUTO-SIM'
   new firmware revision is:
      SWI9X30C_02.32.11.00 r8042 CARMD-EV-FRMWR2 2019/05/15 21:52:20
   new running firmware details:
      Model: MC7455
      Boot version: SWI9X30C_02.32.11.00
      AMSS version: SWI9X30C_02.32.11.00
      SKU ID: 1103781
      Carrier ID: 11
      Config version: 002.062_000
   new firmware preference details:
      image 'modem': unique id '000.000_000', build id '00.00.00.00_AUTO-SIM'
      image 'pri': unique id '000.000_000', build id '00.00.00.00_AUTO-SIM'
      
   NOTE: this device supports stored image management
   with qmicli operations:
      --dms-list-stored-images
      --dms-select-stored-image
      --dms-delete-stored-image


   NOTE: this device supports firmware preference management
   with qmicli operations:
      --dms-get-firmware-preference
      --dms-set-firmware-preference

firmware update operation finished successfully

Firmware  SWI9X30C_02.32.11.00_SPRINT_002.062_000.nvu SWI9X30C_02.32.11.00_ATT_002.070_000.nvu SWI9X30C_02.32.11.00_GENERIC_002.064_000.nvu SWI9X30C_02.32.11.00.cwe upgraded sucessfully on device /dev/cdc-wdm0
Starting upgrade, firmware  SWI9X30C_02.33.03.00.cwe SWI9X30C_02.33.03.00_VERIZON_002.079_001.nvu device /dev/cdc-wdm0
loading device information before the update...
error: couldn't open QMI device: Transaction timed out
loading device information before the update...
error: couldn't open QMI device: Transaction timed out
loading device information before the update...
error: couldn't open QMI device: Transaction timed out
loading device information before the update...
error: couldn't open QMI device: Transaction timed out
loading device information before the update...
error: couldn't open QMI device: Transaction timed out
Trying with secondary port /dev/cdc-wdm1
loading device information before the update...
setting firmware preference:
  firmware version: '02.33.03.00'
  config version:   '002.079_001'
  carrier:          'VERIZON'
rebooting in download mode...
download mode detected
downloading cwe image: SWI9X30C_02.33.03.00.cwe (64.4 MB)...
finalizing download... (may take more than one minute, be patient)
successfully downloaded in 68.05s (946.7 kB/s)
downloading cwe image: SWI9X30C_02.33.03.00_VERIZON_002.079_001.nvu (17.4 kB)...
finalizing download... (may take more than one minute, be patient)
successfully downloaded in 0.05s (319.2 kB/s)
rebooting in normal mode...
normal mode detected

------------------------------------------------------------------------
    NOTE: in order to validate which is the firmware running in the
    module, the program will wait for a complete boot; this process
    may take some time and several retries.
------------------------------------------------------------------------

waiting some time for the device to boot...
loading device information after the update (1/20)...
waiting some time for the device to boot...
loading device information after the update (2/20)...
original firmware revision was:
      SWI9X30C_02.32.11.00 r8042 CARMD-EV-FRMWR2 2019/05/15 21:52:20
   original running firmware details:
      Model: MC7455
      Boot version: SWI9X30C_02.32.11.00
      AMSS version: SWI9X30C_02.32.11.00
      SKU ID: 1103781
      Carrier ID: 11
      Config version: 002.062_000
   original firmware preference details:
      image 'modem': unique id '000.000_000', build id '00.00.00.00_AUTO-SIM'
      image 'pri': unique id '000.000_000', build id '00.00.00.00_AUTO-SIM'

   new firmware revision is:
      SWI9X30C_02.33.03.00 r8209 CARMD-EV-FRMWR2 2019/08/28 20:59:30
   new running firmware details:
      Model: MC7455
      Boot version: SWI9X30C_02.33.03.00
      AMSS version: SWI9X30C_02.33.03.00
      SKU ID: 1103781
      Carrier ID: 5
      Config version: 002.079_001
   new firmware preference details:
      image 'modem': unique id '000.000_000', build id '00.00.00.00_AUTO-SIM'
      image 'pri': unique id '000.000_000', build id '00.00.00.00_AUTO-SIM'
      
         NOTE: this device supports stored image management
   with qmicli operations:
      --dms-list-stored-images
      --dms-select-stored-image
      --dms-delete-stored-image

   NOTE: this device supports firmware preference management
   with qmicli operations:
      --dms-get-firmware-preference
      --dms-set-firmware-preference
------------------------------------------------------------------------
 
firmware update operation finished successfully
Firmware  SWI9X30C_02.33.03.00.cwe SWI9X30C_02.33.03.00_VERIZON_002.079_001.nvu upgraded sucessfully on device /dev/cdc-wdm1
Reseting wwan to apply new Firmware
~~~~~~~All modems upgraded sucessfully~~~~~~~~~


The example output above shows that the firmware versions SWI9X30C_02.32.11.00 and SWI9X30C_02.33.03.00 are successfully loaded as part of the upgrade.


Verify the Firmware Upgrade


To check the firmware version to ensure that the firmware is upgraded to the latest version, issue the following command:

admin@WIFI-TEST-cli> show interfaces wwan status modem-info 


Depending on the wireless service provider, the modem would load either SWI9X30C_02.33.03.00 (Verizon Wireless) or  SWI9X30C_02.32.11.00 (All other wireless service providers) firmware during boot-up based on the SIM that is inserted.


The following example output shows that the upgrade firmware version is SWI9X30C_02.33.03.00


admin@WIFI-TEST-cli> show interfaces wwan status modem-info

 -------------------------
  Hardware |   manufacturer: 'Sierra Wireless, Incorporated'
           |          model: 'MC7455'
           |       revision: 'SWI9X30C_02.33.03.00 r8209 CARMD-EV-FRMWR2 2019/08/28 20:59:30'
           |      supported: 'gsm-umts
           |                  lte
           |                  gsm-umts, lte'
           |        current: 'gsm-umts, lte'
           |   equipment id: '358643079081365'
  -------------------------
  System   |         device: '/sys/devices/pci0000:00/0000:00:15.0/usb2/2-1'
           |        drivers: 'qmi_wwan, option1'
           |         plugin: 'Sierra'
           |   primary port: 'cdc-wdm0'
           |          ports: 'ttyUSB0 (qcdm), ttyUSB2 (unknown), cdc-wdm0 (qmi), wwan0 (net), wwan1 (net), cdc-wdm1 (qmi)'
  -------------------------