EM9191 FDT2.exe multiple firmware and PRI image loading

I’m trying to flash multiple firmware images (and PRI) onto an EM9191 module with fdt2.exe but it will only flash them on firmware slot “1”, and “2” If I flash one image at a time, it keeps overwriting the last one, thus not allowing me to swap PRI with !IMPREF as I’m guessing they are getting orphaned.

TLDR: What is the syntax to flash multiple images and PRI and have it use all firmware image slots, NOT just slot “1” so that I can swap PRI images at will?

Command I’m using:

fdt2.exe -d g5k -resettimeout 3 -timeout 15 -f SWIX55C_03.04.03.00-001.cwe SWIX55C_01.07.23.00-001.cwe SWIX55C_01.07.13.00-005.cwe SWIX55C_03.04.03.00-001_GENERIC_030.012_000.nvu SWIX55C_01.07.23.00-001_VERIZON_012.019_000.nvu SWIX55C_01.07.13.00_ATT_012.007_002.nvu SWIX55C_01.07.13.00_TMO_001.005_003.nvu -mi -impref SWIX55C_03.04.03.00-001.cwe SWIX55C_03.04.03.00-001_GENERIC_030.012_000.nvu -force -log logs

Command outcome:

Prior to running commands over and over again, lol:

Here you see the multiple PRI exist after running the above command, but there are only two FW image slots being populated with an image. It’s skipping, or overwriting, SWIX55C_01.07.23.00-001.cwe. This making the Verizon PRI an orphan.
image

Maybe My fdt2.exe command syntax is off somewhere?

halp!

Honestly I’m not sure how I got the image #2 to stick. I tried duplicating on a fresh module and it will not flash to fw image slot #2 or #3. It just writes the first image and the others go into the ether and the PRIs get put in and orphaned.

image

Edit: I updated to the images just posted a few days ago for this one.

how about without the “-force” parameter?

Tried with and without. Same outcome.

I’ve messed with it more on a fresh modem and now I have NO idea how I got a second firmware slot to populate on the first modem. I can only get it to repeatedly overwrite the first slot.

No other modem I have does this, except these 5G modems.

I can see three images in AT!IMAGE?


ati3
Manufacturer: Sierra Wireless, Incorporated
Model: EM9191
Revision: SWIX55C_03.09.11.00 7bf975 jenkins 2022/06/10 20:36:01
IMEI: 355890340726368
IMEI SV: 22
FSN: 782147512003A1
+GCAP: +CGSM


OK
at!image?
TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
FW   1    GOOD   134 0 0      ?_?         03.09.06.00_?
FW   2    GOOD   128 0 0      ?_?         03.09.03.00_?
FW   3    GOOD   135 0 0      ?_?         03.09.11.00_?
Max FW images: 3
Active FW image is at slot 3

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
PRI  FF   GOOD   0   0 0      030.044_000 03.09.11.00_GENERIC
PRI  FF   GOOD   0   0 0      030.035_000 03.09.06.00_TMO
PRI  FF   GOOD   0   0 0      030.046_000 03.09.11.00_VERIZON
Max PRI images: 50


OK

normally i used this command ( of course you need to change the FW name and nvu name according to your environment)

fdt2.exe -d g5k -ignswto -f SWIX55C_01.07.23.00-001.cwe SWIX55C_01.07.23.00-001_VERIZON_012.019_000.nvu

BTW, does anyone can tell “-ignswto” means? Thanks.

if you follow my command and run three times, can it install 3 images like my module?

Yes, one by one upgrade F/W OK, But it will take a long time to upgrade,
Windows 10 will waste long time to detect new device every time,
and I have a lot of modules need to upgrade, so wanna upgrade 3 .cwe at a time. Thanks.

you can try this as example to download two images:

fdt2.exe -d g5k -ignswto -mi -impref SWIX55C_03.09.06.00-001.cwe SWIX55C_03.09.06.00-001_GENERIC_030.038_000.nvu -f SWIX55C_03.09.06.00-001.cwe SWIX55C_03.09.03.00-001.cwe SWIX55C_03.09.06.00-001_GENERIC_030.038_000.nvu SWIX55C_03.09.06.00-001_ATT_030.038_000.nvu SWIX55C_03.09.03.00-001_VERIZON_030.033_000.nvu 1105050_9911102_EM9190_03.09.06.00_01_Generic_001.000_000.nvu 1105050_9911102_EM9190_03.09.06.00_01_Generic_001.000_000.cwe

have you tried my command?
Seems you are using different parameters…

how about removing -fd & -log parameters?

-fd FW is F/W directory
-log d:\log is upgrade F/W status log only, if skip, the test result is the same.
only image FW 1 OK, FW 2 & FW3 still Empty.

I tried the following, I can download 3 images:


at!image?
TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
FW   1    GOOD   3   0 0      ?_?         03.09.06.00_?
FW   2    GOOD   2   0 0      ?_?         03.09.03.00_?
FW   3    EMPTY  0   0 0
Max FW images: 3
Active FW image is at slot 1

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
PRI  FF   GOOD   0   0 0      030.035_000 03.09.03.00_GENERIC
PRI  FF   GOOD   0   0 0      030.035_000 03.09.06.00_TMO
PRI  FF   GOOD   0   0 0      030.035_000 03.09.06.00_VERIZON
Max PRI images: 50


OK


fdt2.exe -d g5k -ignswto -f SWIX55C_03.09.11.00-001.cwe SWIX55C_03.09.11.00-001_VERIZON_030.046_000.nvu SWIX55C_03.09.03.00-001.cwe SWIX55C_03.09.03.00-001_GENERIC_030.035_000.nvu SWIX55C_03.09.06.00-001.cwe SWIX55C_03.09.06.00-001_TMO_030.035_000.nvu 


at!image?
TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
FW   1    GOOD   3   0 0      ?_?         03.09.06.00_?
FW   2    GOOD   4   0 0      ?_?         03.09.03.00_?
FW   3    GOOD   5   0 0      ?_?         03.09.11.00_?
Max FW images: 3
Active FW image is at slot 3

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
PRI  FF   GOOD   0   0 0      030.035_000 03.09.03.00_GENERIC
PRI  FF   GOOD   0   0 0      030.035_000 03.09.06.00_TMO
PRI  FF   GOOD   0   0 0      030.046_000 03.09.11.00_VERIZON
Max PRI images: 50


OK

you can use AT!IMPREF to switch after download

Maybe you can try my command and see if it can download to slot 3

I was able to get it done in Linux only. The Windows app refuses to do it properly. I have opened a ticket with my devices distributor and they stated that Sierra has acknowledged that it is an issue and are working to resolve it.

I will test your exact syntax as soon as I get a second to do so again. What version of Windows are you using?

I am using Windows 10.
But I think there is something wrong on the fdt2 tool (using -mi option) which will overwrite the slot 1.

will you consider linux machine ?

Does this help?