Swiflash PORT not found

Does it work on single device?

Same response with only one device connected (still in BOOTHOLD mode)

sudo ./fwdwl-litehostx86_64 -f ~/GHS_Qt/ -s GHS_Full_firmware_001.spk
[sudo] password for mango:
Application version: 1.0.2303.0
Device info unknown. Either no device or multiple devices are found. Application terminates.

swiflash seems to be working
swiflash -m “wp77xx” -i /home/mango/GHS_Qt/GHS_Full_firmware_001.spk
Detecting USB of the target
DONE
Communicating with the target
DONE
Downloading the firmware

Seems you did not follow the parameters here

Why no port is specified here

I installed the usb driver and got a different result

sudo ./fwdwl-litehostx86_64 -f ~/GHS_Qt/ -s GHS_Full_firmware_001.spk
Application version: 1.0.2303.0
INFO: QDL Port:
INFO: Device Path: /dev/cdc-wdm0
INFO: FW Path: /home/mango/GHS_Qt/
Switching device into download mode …
Waiting for modem to disconnect from the host …
Modem disconnected from host.
Waiting for modem to come up in BOOT and HOLD mode …
QDL port found: /dev/ttyUSB0
BOOT and HOLD Mode. Downloading firmware …
FW download failed: eSDP_FWDWL_ERR_SDP_TIMEOUT(112)

The device is mounted in boot mode,

I tried to add the parameters

sudo ./fwdwl-litehostx86_64 -m 4 -f ~/GHS_Qt/ -s GHS_Full_firmware_001.spk -t 1 -d /dev/ttyUSB0 -p /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_AT32365056151007-if00-port0
Application version: 1.0.2303.0
info: option requires an argument – ‘p’
Unable to locate the device or determine device mode.

Not sure what it’s complaining about ?
I dont have a “-p /dev/cdc-wdm0”

I have tried the following to flash FW to two module connected to linux PC at the same time:

  1. here shows WP7608 and WP7607 are connected:
owner@ubuntu:~$ ls /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP760*
/dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7607_VN73048508010300-if00-port0
/dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7608_XG20743006031035-if00-port0
  1. open a terminal and type the following:
owner@ubuntu:~$ swiflash -m "wp76xx" -i /home/owner/Desktop/WP76xx_Release16.0.1_GENERIC.spk -p /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7608_XG20743006031035-if00-port0 
Detecting USB of the target
DONE
Communicating with the target
DONE
Downloading the firmware

  1. open another terminal and enter the following:

owner@ubuntu:~$ swiflash -m "wp76xx" -i /home/owner/Desktop/WP76xx_Release16.0.1_GENERIC.spk -p /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7607_VN73048508010300-if00-port0 
Detecting USB of the target
DONE
Communicating with the target
DONE
Downloading the firmware
......
  1. both module can successfully upgrade FW

If you are using fwdwl application in boot and hold mode, you need to add “-c QMI” parameter:



owner@ubuntu:~/QMI/MBPL/MBPL_SDK_R32_ENG2-fwdwl.bin/SampleApps/lite-fw-download$ sudo ./bin/fwdwl-litehostx86_64 -c QMI  -m 4 -d /dev/ttyUSB0 -f /home/owner/Desktop/FW_WP76/
Application version: 1.0.2303.0
INFO: QDL Port: /dev/ttyUSB0
INFO: Device Path: 
INFO: FW Path: /home/owner/Desktop/FW_WP76/
Modem is already in QDL mode. Continuing FW download.
Waiting for modem to come up in BOOT and HOLD mode ...
BOOT and HOLD Mode. Downloading firmware ...
Downloading: /home/owner/Desktop/FW_WP76//WP76xx_Release16.0.1_GENERIC.spk
All image data was downloaded successfully.
Device is about to reset ...
Waiting for modem to come up in ONLINE mode ...

$ ll /dev/serial/by-id/
usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_18f04b10-if00-port0 → …/…/ttyUSB3
usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_18f04b10-if02-port0 → …/…/ttyUSB4
usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_18f04b10-if03-port0 → …/…/ttyUSB5
usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_a841eb8b-if00-port0 → …/…/ttyUSB0
usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_a841eb8b-if02-port0 → …/…/ttyUSB1
usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_a841eb8b-if03-port0 → …/…/ttyUSB2
terminal1:
swiflash -m “wp77xx” -i /home/mango/GHS_Qt/GHS_Full_firmware_001.spk -p /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_18f04b10-if00-port0
Detecting USB of the target
DONE
Communicating with the target
DONE
Switching to firmware download mode
…ERROR: Failed to enter download mode

terminal2:

swiflash -m “wp77xx” -i /home/mango/GHS_Qt/GHS_Full_firmware_001.spk -p /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_a841eb8b-if00-port0
Detecting USB of the target
DONE
Communicating with the target
DONE
Switching to firmware download mode
.ERROR: Firmware Download failed. Callback status 59399ERROR: Firmware Download failed. Callback status 59399.^[[A.^Cmango@mango-OptiPlex-3050:~$ swiflash -m “wp77xx” -i /home/mango/GHS_Qt/GHS_Full_firmware_001.spk -p /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_a841eb8b-if00-port0
Detecting USB of the target
DONE
Communicating with the target
DONE
Switching to firmware download mode
…ERROR: Failed to enter download mode

Afterwards (seems like both modules is in BOOTHOLD)
$ ll /dev/serial/by-id/
usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_AT32365056071007-if00-port0 → …/…/ttyUSB0
usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_AT32365056151007-if00-port0 → …/…/ttyUSB3

I will try the -c QMI

my test is first entering AT!BOOTHOLD to let module go to download mode before using swiflash

The -c QMI seemed to work but it only did one not sure if it can do multiple modules ?

sudo ./fwdwl-litehostx86_64 -c QMI -m 4 -f ~/GHS_Qt/ -s ‘GHS_Full_firmware_001.spk’ -t 1 -d /dev/ttyUSB0 -d /dev/ttyUSB3
[sudo] password for mango:
Application version: 1.0.2303.0
INFO: QDL Port: /dev/ttyUSB3
INFO: Device Path:
INFO: FW Path: /home/mango/GHS_Qt/
Target image Info:
Carrier :ATT
FW Version :02.36.06.00
Model ID :SWI9X06Y
Package ID :005
PRI Version:001.067
SKU :9999999
Modem is already in QDL mode. Continuing FW download.
Waiting for modem to come up in BOOT and HOLD mode …
BOOT and HOLD Mode. Downloading firmware …
Downloading: /home/mango/GHS_Qt//GHS_Full_firmware_001.spk
All image data was downloaded successfully.
Device is about to reset …
Waiting for modem to come up in ONLINE mode …
^C

And it had to be killed just sitting there and the module was up and running again?

how about opening another terminal for another download for another module?

I can do this with swiflash on two modules at the same time

I just tried the multi module

swiflash -m “wp77xx” -i /home/mango/GHS_Qt/GHS_Full_firmware_001.spk -p /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_AT32365056151007-if00-port0 -p /dev/serial/by-id/usb-Sierra_Wireless__Incorporated_Sierra_Wireless_WP7702_AT32365056071007-if00-port0
Detecting USB of the target
No device connected

and two seperate terminals with one device each but same result.

Detecting USB of the target
No device connected

no idea then, i don’t see problem here with separate terminals with swiflash
you might try another terminal for fwdwl application

I tried this from within a C program and it seem to be doing both of them in parallel,
but “Waiting for modem to come up in ONLINE mode …” never returns even though both are up and running?
Well it timed out 240 second!!!

system(“echo … | sudo -S /home/mango/MBPL/MBPL_SDK_R32_ENG2-fwdwl.bin/SampleApps/lite-fw-download/bin/fwdwl-litehostx86_64 -c QMI -m 4 -f ~/GHS_Qt/ -s ‘GHS_Full_firmware_001.spk’ -t 1 -d /dev/ttyUSB0 &”);
system(“echo … | sudo -S /home/mango/MBPL/MBPL_SDK_R32_ENG2-fwdwl.bin/SampleApps/lite-fw-download/bin/fwdwl-litehostx86_64 -c QMI -m 4 -f ~/GHS_Qt/ -s ‘GHS_Full_firmware_001.spk’ -t 1 -d /dev/ttyUSB1 &”);

[sudo] password for mango: Application version: 1.0.2303.0
Application version: 1.0.2303.0
Target image Info:
Carrier :ATT
FW Version :02.36.06.00
Model ID :SWI9X06Y
Package ID :005
PRI Version:001.067
SKU :9999999
Target image Info:
Carrier :ATT
FW Version :02.36.06.00
Model ID :SWI9X06Y
Package ID :005
PRI Version:001.067
SKU :9999999
Downloading: /home/mango/GHS_Qt//GHS_Full_firmware_001.spk
Downloading: /home/mango/GHS_Qt//GHS_Full_firmware_001.spk
All image data was downloaded successfully.
All image data was downloaded successfully.
Device is about to reset …
Waiting for modem to come up in ONLINE mode …
Device is about to reset …
Waiting for modem to come up in ONLINE mode …

Failed to detect modem ONLINE mode in 240 seconds. Application terminates.
INFO: QDL Port: /dev/ttyUSB1
INFO: Device Path:
INFO: FW Path: /home/mango/GHS_Qt/
Modem is already in QDL mode. Continuing FW download.
Waiting for modem to come up in BOOT and HOLD mode …
BOOT and HOLD Mode. Downloading firmware …
Failed to detect modem ONLINE mode in 240 seconds. Application terminates.
INFO: QDL Port: /dev/ttyUSB0
INFO: Device Path:
INFO: FW Path: /home/mango/GHS_Qt/
Modem is already in QDL mode. Continuing FW download.
Waiting for modem to come up in BOOT and HOLD mode …
BOOT and HOLD Mode. Downloading firmware …

have you just tried one module connected and see if there is any “Waiting for modem to come up in ONLINE mode …”?
does the firmware change inside the module after this operation?

You really need to do some debug or investigation on this (e.g. step-by-step testing instead of doing two modules at the same time to make sure your environment and parameter are good)

It does the same thing,

I found why it takes 240 seconds

-R --retry
(Command is optional, should only be used for troubleshooting)
Specifies number of device connection retries after a FW download is completed.
The retry interval is 5 seconds.
The default number of retries is 48.
Example: -R 3 (3 retries)

What is it waiting for?

I am pretty sure it is updating the firmware but i will make a test, is there a way to see it on the device like an last update time? I have been using the same image

Are you using a single command with multiple -p options ?

if you confirm the FW is updated, probably you can ignore the message “Waiting for modem to come up in ONLINE mode …”. I think this message is just to check if the module is back to normal mode instead of download mode.

Are you using a single command with multiple -p options ?

do you mean swiflash with multiple -p option?
seems it does not work…

Yes i meant swiflash with multiple -p, good you verified it was not working.
I tried the -R option for fwdwl but that does not change the timeout?
I might kill the app and check when the devices attach