Firmware updating Dell 5811e with ancient firmware (SWI9X30C_00.08.02.00)

I have a dell 5811e with ancient firmware, which I’ve been unable to firmware update. Its running this:

Revision: SWI9X30C_00.08.02.00 r1706 carmd-fwbuild4 2015/03/10 08:07:02

Although I can easily change its pid:vid to be generic, I’ve been unable to update to any firmware. I dont easily have access to a dell laptop, but I’m unsure of whether or not even that would work using the Dell firmware updater.

I’d appreciate any help on getting this running recent firmware.

Thanks in advance

any luck with this? I am having the same issue.

Pay now or pay later. I’ll just assume you , like me, got yours from Aliexpress. I’d bet yours doesn’t have any Regulatory labels either…

Check this post out, I was able to get mine working with it:

However, I could not get mine to flash automagically, and had to do it by hand, with the fdt/fdt2 exe inside the Sierra Tools directory.

In all of my experimenting, at the end, I have a strange impref setting, which tells me the config name is GENERIC_001.007_000, even though !priid says its GENERIC_002.021_000; I think this may be because I found an old Dell driver and managed to flash it completely (spk file), which got me from 00.08.02.00 to 01.08.07.00.

If the post doesn’t help, I can try to dig out my notes for you…

eBay, but same issue. I didn’t even realize all the differences in this chip until after I got it.

you were able to get it updated though?

I tried this:

.\fdt2.exe -d 9x30 -f .\SWI9X30C_02.24.05.06.cwe SWI9X30C_02.24.05.06_GENERIC_002.026_000.nvu
FDT version: 1.0.1804.0
Awaiting suitable port or adapter ...
Switching to boot & hold mode ...
Disabling selective suspend ...
Awaiting DM port ...
Switching to boot & hold mode ...
Disabling selective suspend ...
Awaiting port removal ...
Awaiting download port ...
Downloading images ...
Writing image -
Flashing image \
Writing image |
Flashing image /
Awaiting adapter ...
Enabling selective suspend ...
Firmware download failed.
Primary error code: 82 - Failed in checking modem mode.
Secondary error code: 55 - Failed in closing unframed data write.
Device error code: 0x2 - Flash write failure.

Preexisting images information:
        Current:
                Firmware:
                        ImageId:
                        BuildId:
                Configuration:
                        ImageId:
                        BuildId:
Final images information:
        Current:
                Firmware:
                        ImageId:
                        BuildId:
                Configuration:
                        ImageId:
                        BuildId:

OEM PRI:

IMEI:

Total time elapsed: 282828 ms.

Time to switch to boot mode: 22610 ms.

Images downloaded:
        Image ID: ?_?
        Build ID: 02.24.05.06_?
                write time: 9562 ms
                additional flash time: 0 ms
        Image ID: 002.026_000
        Build ID: 02.24.05.06_GENERIC
                write time: 0 ms
                additional flash time: 0 ms

Time to reset to application mode: -1 ms.

not sure why it is failing though. Maybe I need an intermediate firmware version?

Looks vaguely familiar.

You’ll need to find this driver on the Dell website
R9YXH_WN32_7.8.4376.507_A01

Use 7Zip to extract the DELL7455DriverSetup.exe file, and again 7Zip to extract that (I did this originally on linux, where I had funny directory names; if you do it on Windows, you only need to extract the directory thats named “7455”). Inside the 7455 directory, you will find SWI9X30C_01.08.07.00 and SWI9X30C_02.01.03.00. I think that I managed to flash 01.08.07.00 and the matching GENERIC PRI, and never bothered with the 02.01.03 version, and then went to 02.24.03, after rebranding (Note you have to use the older AT!UDPID and AT!UDVID to rebrand).

Its also not clear to me what the difference between the fdt and fdt2 binaries are. did you try both ? I think that I used fdt and not fdt2 (i got that hint from a Russian forum and google translate!)

can you do me a favor?

What do you have set for all of these?

AT!UDVID?
AT!UDPID?
AT!UDUSBCOMP?
at!priid?

I was able to get the 01.08.07.00 files, but FDT2.exe is having the same issue. FDT.exe is having a different one, so I will continue to play with that.

Thanks so much for your feedback so far, I was worried I was up a creek.

okay, I got it to 1.08.08.00!

It turns out, there are not only differences between fdt and fdt2 but there are actually 2 different fdt.exe files in that DELL7455DriverSetup

It would still be helpful to know that info from before when you get the chance. I am gonna go work to upgrade to the latest.

To anyone else having this issue, it is fixable! thank you to panachoi. I though I bricked this chip at least 4 different times (different behavior) including windows refusing to see it, but thankfully I used linux and was able to screen /dev/ttyUSB2 to pass AT commands and fix it.

Cheers

Edit: got it to 02.24.05.06 tonight. Thanks again.

I’d be interested in actually seeing your output from:

at!impref?
AT!PRIID?
at!image?

I’m curious, because I got mine into a working state with SWI9X30C_02.24.03.00, after (like you) spending many hours (i.e. more than I would have paid for an original Sierra Module), but I have bizzare artifacts like this:

at!image?
TYPE SLOT STATUS LRU FAILURES UNIQUE_ID BUILD_ID
FW 1 EMPTY 0 0 0
FW 2 EMPTY 0 0 0
FW 3 EMPTY 0 0 0
FW 4 EMPTY 0 0 0
Max FW images: 4
Active FW image is at slot 255

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID BUILD_ID
PRI FF GOOD 0 0 0 002.021_000 02.24.03.00_GENERIC
Max PRI images: 50

Notice how there is no firmware (at least its reporting that) in any of the slots.

And this:

at!impref?
!IMPREF:
preferred fw version: 02.24.03.00
preferred carrier name: GENERIC
preferred config name: GENERIC_001.007_000
current fw version: 02.24.03.00
current carrier name: GENERIC
current config name: GENERIC_001.007_000

Notice the config names ? It says that, but its not true:

AT!PRIID?
PRI Part Number: 9904609
Revision: 002.021
Customer: GENERIC

Carrier PRI: 9999999_9904609_SWI9X30C_02.24.03.00_00_GENERIC_002.021_000

Note sure how/if the output from impref and priid are related…

If yours looks “normal”, I’m sure others might benefit of how exactly you got your module from the ancient version to the latest, with detailed steps…

I don’t think mine is normal, but I am actually not sure what the consequences of having it screwed up are. I am able to use it in Windows as a LTE Modem just fine.

My actual goal is to be able to use AT commands in Linux to do some LTE reception scanning and that work fine as well.

at!impref?

!IMPREF:
 preferred image setting does not exist
 current fw version:      02.24.05.06
 current carrier name:
 current config name:

 fw version mismatch
 carrier name mismatch
 config name mismatch

AT!PRIID?

PRI Part Number: 9902812
Revision: 01.07
Customer: GENERIC

Carrier PRI: 9999999_9904609_SWI9X30C_02.24.05.06_00_GENERIC_002.026_000

at!image?

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
FW   1    EMPTY  0   0 0
FW   2    EMPTY  0   0 0
FW   3    EMPTY  0   0 0
FW   4    EMPTY  0   0 0
Max FW images: 4
Active FW image is at slot 255

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
PRI  FF   GOOD   0   0 0      002.026_000 02.24.05.06_GENERIC
Max PRI images: 50

Do you have the GPS working on yours? I have mine in an external case with 2 antenna, one attached to main, and I’ve tried the other on both GPS and AUX, but it never gets a GPS lock…any suggestions?

Are you sure that its actually working ? I’m pretty sure it doesn’t work in this state, as it will remain in low-power mode, and not actually power up the modem; this may be the reason you have no GPS

What does the output of at!pcinfo? say ? It should look like this:

at!pcinfo?
State: Online
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:0, BIOS:0, LWM2M:0, 0
LPM persistence - None

If it doesn’t, the modem is not actually operational (did you make an LTE connection under windows ?)

But I guess its “good” that yours too, doesn’t show any firmware in any of the slots, although, similar to mine.

A “genuine” 7455 looks like this (this is the mPCIe version of the 7455):

AT!PRIID?
PRI Part Number: 9904514
Revision: 001.006
Customer: Generic-M2M

Carrier PRI: 9999999_9904609_SWI9X30C_02.24.03.00_00_GENERIC_002.021_000

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

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID BUILD_ID
PRI FF GOOD 0 0 0 002.021_000 02.24.03.00_GENERIC
Max PRI images: 50

My guess is that these are all very early engineering samples, hence they are missing all of the regulartory approval IDs, etc, and come with a 00.xx firmware.

Once you get it out of LPM, the GPS should work just fine. My works without anything connected to the GPS antenna connector (I also have mine in a USB to M.2 adapter, all metal)

@panachoi, they’re not. I’m also not sure that PRIID actually does anything other than serve as a inventory label of sorts.

If you want to make your modem look “normal”, you can do these steps:

  1. Clear all firmware entries and NVUs:
    AT!ENTERCND="A710"
    AT!IMAGE=0
    AT!RESET
    
  2. Reflash
  3. Make PRIID reflect reality:
    • For 9999999_9904609_SWI9X30C_02.24.05.06_00_GENERIC_002.026_000
      • PRI Part Number is 9904609
      • Revision is 002.026
    AT!ENTERCND="A710"
    AT!PRIID="9904609","002.026","GENERIC"
    AT!RESET
    
  4. Your end result will look like this:
    AT!IMAGE?
    TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
    FW   1    GOOD   1   0 0      ?_?         02.24.05.06_?
    FW   2    EMPTY  0   0 0                  
    FW   3    EMPTY  0   0 0                  
    FW   4    EMPTY  0   0 0                  
    Max FW images: 4
    Active FW image is at slot 1
    
    TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
    PRI  FF   GOOD   0   0 0      002.026_000 02.24.05.06_GENERIC
    Max PRI images: 50
    
    
    OK
    
    AT!IMPREF?
    !IMPREF: 
     preferred fw version:    02.24.05.06
     preferred carrier name:  GENERIC
     preferred config name:   GENERIC_002.026_000
     current fw version:      02.24.05.06
     current carrier name:    GENERIC
     current config name:     GENERIC_002.026_000
    
    OK
    
    
    AT!PRIID?
    PRI Part Number: 9904609
    Revision: 002.026
    Customer: GENERIC
    
    Carrier PRI: 9999999_9904609_SWI9X30C_02.24.05.06_00_GENERIC_002.026_000
    
    OK
    

@panachoi & @JawnZ,

I have one of these ancient cards I got from eBay. I am trying to rebrand but before that I need to update the firmware. I cannot locate the driver R9YXH_WN32_7.8.4376.507_A01 that you recommend moving the card to first before jump to the latest generic firmware. Any additional hints to help me out. Dell’s site is not yielding any hits. On the plus side I have a old dell laptop to try all this with.

https://www.dell.com/support/home/us/en/04/Drivers/DriversDetails?driverId=R9YXH

You can find any Dell driver with the code at the end of that url. For example, x5xkn is a later driver version.

Thx danielwood for the link :-). You seem like you know these devices. Maybe you, someone, can let me know what you think about these steps.

The card I have has firmware: SWI9X30C_00.08.02.00 r1706 carmd-fwbuild4 2015/03/10 08:07:02

I am assuming I cannot just jump to the latest firmware. Should I update to an intermediate firmware? I am concern with bricking this unit. I cannot do nvbackup since this command does not work with the ancient firmware. A lot of commands don’t work with this very old firmware. This is my plan.

  • Download the dell driver (Communications_Driver_R9YXH_WN32_7.8.4376.507_A01.EXE)
  • Install the dell driver on Win7 dell laptop
  • Extract the firmware using 7zip from the dell driver and use 7zip to get the 7455 folder.
  • Upgrade the firmware using:
    – fdt.exe -d 9x30 -f SWI9X30C_1.08.07.00.cwe SWI9X30C_01.08.07.00_GENERIC_001.007_000.nvu
  • Change PID and VID to make generic using:
    – AT!UDPID=9071,9070
    – AT!UDVID=1199
    – AT!RESET
  • Uninstall the dell driver ( Communications_Driver_R9YXH_WN32_7.8.4376.507_A01.EXE)
  • Install to the latest Sierra Generic windows driver (GenericDriverSetup_4773.exe)
  • Upgrade to the Sierra generic firmware 9999999_9904609_swi9x30c_02.24.05.06_00_GENERIC_002.026_000
    – fdt.exe -d 9x30 -f SWI9X30C_02.24.05.06.cwe SWI9X30C_02.24.05.06_GENERIC_002.026_000.nvu
  • Run AT!PRIID command to point to the firmware and done?

I have already verified the 7455 is udusbcomp=8 so I can access the COM on the card with putty. How do I load the .spk file onto the card? Do you think this will work?

Theoretically that will work.
There is a 1102424_9904336_EM7455_01.08.07.00_00_Dell_001.001_000.spk in that Dell package under DELL7455DriverSetup.exe\Images\7455\Generic\OEM\

That may be worth trying if the CWE/NVU does not work:
fdt.exe -d 9x30 -f 1102424_9904336_EM7455_01.08.07.00_00_Dell_001.001_000.spk

As for AT!PRIID, that part is completely un-needed as far as I can tell. But there is no harm in setting it.
In fact, what I would do (and have done 10x in developing some scripts) is this in place of your last step(Only after you have the latest firmware):

  1. Clear all Carrier Preferences/Firmwares other than current.
ATE1
AT!ENTERCND="A710"
AT!IMAGE=0
AT!RESET
  1. Run the Generic Flasher again. It will reflash Slot 1 with the image, and set the NVU. They will now be the only images on the modem and it will have no other version or NVUs. AT!IMAGE? will also show matching firmwares.

Thx danielwood. What is the spk file for?

AFAICT it is a combo of the CWU and NVU in a single file.

You can use fdt to flash this file, thats what I did. I could not flash the nvu+cwe file with fdt at all (I dont have a dell laptop, so perhaps it might work there), and ended up flashing the spk file, which got me to 1.08, and then I flashed to 2.24.03 using the generic Sierra firwmare. But it seems to have left “artifacts”:

at!impref?
!IMPREF:
preferred fw version: 02.24.03.00
preferred carrier name: GENERIC
preferred config name: GENERIC_001.007_000
current fw version: 02.24.03.00
current carrier name: GENERIC
current config name: GENERIC_001.007_000

Notice how the config name does not “match” the actual PRI version, but this seems not to matter; my card is “locked” to this config name (I’ve given up trying to change this). Attempting to change this to anything else leads the card to remain in low-power state because of configuration mismatch, and essentially non-functional.

Mine is working in this state, and that’s good enough for me, its running the LTE Internet link in our vacation apartment, and seems stable enough.

There’s a general rule that says “Pay now or Pay Later”; if I were to count the number of hours spent getting this to work, I could have gotten a genuine Sierra card for a lot less time and aggravation.

BTW, I tried clearing the firmware entries and nvus many times, but still end up with the same, with no actual firmware being listed in any of the slots (but booting and running nonetheless).

@danielwood: Are you speaking from direct experience in upgrading one of these exact cards ? My real Sierra card behaves exactly as you state, but my engineering sample Dell card definitely does not.

@ctx1001: Let us know what happens, there seem to be MANY of these cards floating around on Ebay/Ali – Anyone considering purchasing one from the aformentioned should insist that the cards have the regulatory approval numbers on them (i.e. it won’t be a engineering sample)

I have two Dells and one Lenovo. The Dells dont have any regulatory labels and are now running the most current FW and NVU, with no cruft left over.

AT!IMPREF?
!IMPREF: 
 preferred fw version:    02.24.05.06
 preferred carrier name:  GENERIC
 preferred config name:   GENERIC_002.026_000
 current fw version:      02.24.05.06
 current carrier name:    GENERIC
 current config name:     GENERIC_002.026_000

OK

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

TYPE SLOT STATUS LRU FAILURES UNIQUE_ID   BUILD_ID
PRI  FF   GOOD   0   0 0      002.026_000 02.24.05.06_GENERIC
Max PRI images: 50


OK

@danielwood & @panachoi

I was able to successful fdt the spk file and the card is acting like it is working. However when I try to upgrade to sierra Generic firmware 02.24.05.06 I end up in LPW with IMSWITCH=1 set. I have restored to the spk version 01.08.07.00 and I am NOT in LPW or IMSWTICH=1.

@danielwood do I need to download ubuntu live 18.04 for your script? My other laptop is ubuntu 16.04 and I have a live usb with ubuntu 16.10. Do you think your script will work with those versions of ubuntu? Should I change the VID, PID, USBCOMP before using the script?

@panachoi what utilities did you use to upgrade to the latest generic? Sierra exe and the fdt/fdt2 do not work for me, leaves the card LPW and IMSWITCH=1.

I think I am close but not sure what combo of utilities will let me upgrade.

I am trying to get the generic firmware on the 7455 so I can connect with sprint.

EDIT: I think I am in some kind of boot loop :frowning: . I can briefly putty into the 7455 before is recycles.
Here is what I can pull before I get disconnected:

ati
Manufacturer: Sierra Wireless, Incorporated
Model: EM7455
Revision: SWI9X30C_02.01.03.00 r4214 CARMD-EV-FRMWR2 2015/09/19 10:11:03
IMEI: 359073060008145
IMEI SV: 3
FSN: LF511100140202
+GCAP: +CGSM

at!pcinfo?
State: Offline
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:1, BIOS:0
LPM persistence - None

@danielwood maybe my only hope is to try your script?