[EM7565-9] Segmentation fault when trying to flash firmware

Hello

I need some help with an EM7565-9 m2 module which I have connected to my x86 device running latest OpenWrt release.

Current firmware:

root@OpenWrt:/sierrafirmware# qmicli -d /dev/cdc-wdm0 --dms-swi-get-current-firmware
[/dev/cdc-wdm0] Successfully retrieved current firmware:
Model: EM7565-9
Boot version: SWI9X50C_00.06.02.00
AMSS version: SWI9X50C_00.06.02.00
SKU ID: 1103489
Package ID: unknown
Carrier ID: 1
Config version: unknown

I downloaded the following firmware:

SWI9X50C_01.14.22.00.cwe

SWI9X50C_01.14.22.00_GENERIC_002.059_002.nvu

I tried flashing using

qmi-firmware-update -w /dev/cdc-wdm0 --verbose --update SWI9X50C_01.14.22.00.cwe SWI9X50C_01.14.22.00_GENERIC_002.059_002.nvu

I got to the point where the device enters into download mode, but immediately after that, the process ends with a segmentation fault:

rebooting in download mode…
[26 May 2026, 01:10:57] [Debug] [qfu-updater] reset requested, now waiting for serial device…
[26 May 2026, 01:10:57] [Debug] [/dev/cdc-wdm0] closing device…
[26 May 2026, 01:10:57] [Debug] [/dev/cdc-wdm0] sent message…
<<<<<< RAW:
<<<<<< length = 12
<<<<<< data = 02:00:00:00:0C:00:00:00:0C:00:00:00…

[26 May 2026, 01:10:57] [Debug] [/dev/cdc-wdm0] sent message (translated)…
<<<<<< Header:
<<<<<< length = 12
<<<<<< type = close (0x00000002)
<<<<<< transaction = 12

Segmentation fault

At this point, I need to power down the device before it can become responsive again.

Considering the current firmware is very old, is this the correct way to update it, or should I first install some intermediary firmware instead of making the leap to the newest one?

See if this helps

I also wonder if AVMS upgrade can help

You can also have a look on this one which says it needs intermediate firmware for very old firmware

I just tried the old firmware and got the same result:

qmi-firmware-update -w /dev/cdc-wdm0 --verbose --update SWI9X50C_01.05.01.00.cwe SWI9X50C_01.05.01.00_GENERIC_001.028_000.nvu

(…)

rebooting in download mode…
[26 May 2026, 15:30:52] [Debug] [qfu-updater] reset requested, now waiting for serial device…
[26 May 2026, 15:30:52] [Debug] [/dev/cdc-wdm0] closing device…
[26 May 2026, 15:30:52] [Debug] [/dev/cdc-wdm0] sent message…
<<<<<< RAW:
<<<<<< length = 12
<<<<<< data = 02:00:00:00:0C:00:00:00:0C:00:00:00…

[26 May 2026, 15:30:52] [Debug] [/dev/cdc-wdm0] sent message (translated)…
<<<<<< Header:
<<<<<< length = 12
<<<<<< type = close (0x00000002)
<<<<<< transaction = 12

[26 May 2026, 15:30:52] [Debug] [/dev/cdc-wdm0] received message…

RAW:
length = 16
data = 02:00:00:80:10:00:00:00:0C:00:00:00…

[26 May 2026, 15:30:52] [Debug] [/dev/cdc-wdm0] received message (translated)…

Header:
length = 16
type = close-done (0x80000002)
transaction = 12
Contents:
status error = ‘None’ (0x00000000)

[26 May 2026, 15:30:52] [Debug] [/dev/cdc-wdm0] channel destroyed
Segmentation fault

have you tried other tools to verify if your tool has problem?

Thank you, it worked. I followed the guide posted in the other thread where I first need to flash to SWI9X50C_01.05.01.00_00_GENERIC_001.028_000 and only then to the newest firmware.

One thing to note which happened to me, I had to add “-i 1” to the first script as it failed at the initial check with:

unpack_dms_GetCrashAction error

maybe because the firmware I started was so old it did not support that option.

But after that it went just fine.

I also did not have to boot to a different distro, I could flash it natively in OpenWrt.