Mudi V2 modem firmware update stuck

I tried to update the modem and looks like it stuck. Maybe the modem frozen or stuck in a different mode. I don't know. I followed the official guide, used the the provided files, etc. I have the EM060K-GL version and I'm using the latest beta OS. I did not restart the device yet.

Here is the output:

root@GL-E750:/usr/bin# QFirehose-ar9531-sha256-7383f4 -f /tmp/mountd/disk2_part1/mudi/
[000.000]: QFirehose Version: Quectel_LTE&5G_QFirehose_Linux&Android_V1.4
[000.001]: Builded: Apr 14 2022 04:54:50
[000.002]: Find md5 check file </tmp/mountd/disk2_part1/mudi/md5.txt>
[000.011]: md5 checking: /tmp/mountd/disk2_part1/mudi/contents.xml pass
[000.097]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/appsboot.mbn pass
[000.105]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/devcfg.mbn pass
[000.112]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/partition_complete_p2K_b128K.mbn pass
[000.114]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/patch_p2K_b128K.xml pass
[000.133]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/prog_nand_firehose_9x55.mbn pass
[000.136]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/rawprogram_nand_p2K_b128K_update.xml pass
[000.138]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/partition.mbn pass
[000.141]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/partition_nand.xml pass
[000.162]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/rpm.mbn pass
[000.197]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sbl1.mbn pass
[001.483]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-boot.img pass
[003.733]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-recoveryfs.ubi pass
[020.911]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-sysfs.ubi pass
[020.915]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sec.dat pass
[021.069]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/tz.mbn pass
[021.360]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/usrdata.ubi pass
[021.367]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/partition_complete_p2K_b128K.mbn pass
[021.369]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/patch_p2K_b128K.xml pass
[021.387]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/prog_nand_firehose_9x55.mbn pass
[021.389]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/rawprogram_nand_p2K_b128K_update.xml pass
[021.389]: Totals checking 21 files md5 value, 0 file fail!
[021.397]: [1] /sys/bus/usb/devices/1-1.2 2c7c/30b/504
[021.401]: P: /dev/bus/usb/001/005 idVendor=2c7c idProduct=030b
[021.401]: C: /dev/bus/usb/001/005 bNumInterfaces: 6
[021.401]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=30
[021.402]: E: Ad=01 Atr=02 MxPS= 2 Ivl=0ms
[021.402]: E: Ad=81 Atr=02 MxPS= 2 Ivl=0ms
[021.402]: I: If#= 1 Alt= 0 #EPs= 3 Cls=ff Sub=00 Prot=40
[021.402]: I: If#= 2 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=40
[021.403]: I: If#= 3 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=40
[021.403]: I: If#= 4 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[021.403]: I: If#= 12 Alt= 0 #EPs= 1 Cls=ff Sub=ff Prot=70
[021.405]: qusb_noblock_open port_name = /dev/ttyUSB0
[024.408]: poll_wait events=POLLIN msec=3000 timeout
[024.408]: qusb_noblock_read cur=0, min_size=1
[024.408]: qfirehose.c detect_and_judge_module_version 154 fail
[025.409]: poll_wait events=POLLIN msec=1000 timeout
[025.409]: qusb_noblock_read cur=0, min_size=1
[025.409]: switch to 'Emergency download mode'
[025.412]: successful, wait module reboot
[026.422]: P: /dev/bus/usb/001/007 idVendor=05c6 idProduct=9008
[026.422]: C: /dev/bus/usb/001/007 bNumInterfaces: 1
[026.422]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[026.422]: E: Ad=81 Atr=02 MxPS= 2 Ivl=0ms
[026.422]: E: Ad=01 Atr=02 MxPS= 2 Ivl=0ms
[026.423]: dir=/tmp/mountd/disk2_part1/mudi/update/firehose
[026.423]: d_name=prog_nand_firehose_9x55.mbn
[026.423]: prog_nand_firehose_filename = prog_nand_firehose_9x55.mbn
[026.423]: STATE <-- SAHARA_WAIT_HELLO
[026.424]: RECEIVED <--  SAHARA_HELLO_ID
[026.424]: RECEIVED <-- SAHARA_MODE_IMAGE_TX_PENDING
[026.424]: SENDING --> SAHARA_HELLO_RESPONSE
[026.424]: STATE <-- SAHARA_WAIT_COMMAND
[026.425]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.426]: 0x0000000d 0x00000000 0x00000034
[026.429]: STATE <-- SAHARA_WAIT_COMMAND
[026.430]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.430]: 0x0000000d 0x00000034 0x00000060
[026.431]: STATE <-- SAHARA_WAIT_COMMAND
[026.431]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.431]: 0x0000000d 0x00001000 0x00001000
[026.432]: STATE <-- SAHARA_WAIT_COMMAND
[026.434]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.434]: 0x0000000d 0x00002000 0x00000988
[026.435]: STATE <-- SAHARA_WAIT_COMMAND
[026.435]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.435]: 0x0000000d 0x00003000 0x00001000
[026.436]: STATE <-- SAHARA_WAIT_COMMAND
[026.437]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.437]: 0x0000000d 0x00004000 0x00001000
[026.438]: STATE <-- SAHARA_WAIT_COMMAND
[026.441]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.441]: 0x0000000d 0x00005000 0x00001000
[026.443]: STATE <-- SAHARA_WAIT_COMMAND
[026.443]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.443]: 0x0000000d 0x00006000 0x00001000
[026.448]: STATE <-- SAHARA_WAIT_COMMAND
[026.448]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.449]: 0x0000000d 0x00007000 0x00001000
[026.450]: STATE <-- SAHARA_WAIT_COMMAND
[026.451]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.451]: 0x0000000d 0x00008000 0x00001000
[026.452]: STATE <-- SAHARA_WAIT_COMMAND
[026.453]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.454]: 0x0000000d 0x00009000 0x00001000
[026.458]: STATE <-- SAHARA_WAIT_COMMAND
[026.458]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.459]: 0x0000000d 0x0000a000 0x00001000
[026.460]: STATE <-- SAHARA_WAIT_COMMAND
[026.461]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.461]: 0x0000000d 0x0000b000 0x00001000
[026.462]: STATE <-- SAHARA_WAIT_COMMAND
[026.463]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.463]: 0x0000000d 0x0000c000 0x00001000
[026.464]: STATE <-- SAHARA_WAIT_COMMAND
[026.464]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.465]: 0x0000000d 0x0000d000 0x00001000
[026.466]: STATE <-- SAHARA_WAIT_COMMAND
[026.467]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.467]: 0x0000000d 0x0000e000 0x00001000
[026.468]: STATE <-- SAHARA_WAIT_COMMAND
[026.468]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.469]: 0x0000000d 0x0000f000 0x00001000
[026.469]: STATE <-- SAHARA_WAIT_COMMAND
[026.490]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.490]: 0x0000000d 0x00010000 0x00001000
[026.491]: STATE <-- SAHARA_WAIT_COMMAND
[026.491]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.492]: 0x0000000d 0x00011000 0x00001000
[026.493]: STATE <-- SAHARA_WAIT_COMMAND
[026.494]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.494]: 0x0000000d 0x00012000 0x00001000
[026.512]: STATE <-- SAHARA_WAIT_COMMAND
[026.518]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.518]: 0x0000000d 0x00013000 0x00001000
[026.528]: STATE <-- SAHARA_WAIT_COMMAND
[026.538]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.538]: 0x0000000d 0x00014000 0x00001000
[026.548]: STATE <-- SAHARA_WAIT_COMMAND
[026.550]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.550]: 0x0000000d 0x00015000 0x00001000
[026.550]: STATE <-- SAHARA_WAIT_COMMAND
[026.557]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.557]: 0x0000000d 0x00016000 0x00001000
[026.568]: STATE <-- SAHARA_WAIT_COMMAND
[026.578]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.578]: 0x0000000d 0x00017000 0x00001000
[026.579]: STATE <-- SAHARA_WAIT_COMMAND
[026.587]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.587]: 0x0000000d 0x00018000 0x00001000
[026.608]: STATE <-- SAHARA_WAIT_COMMAND
[026.609]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.609]: 0x0000000d 0x00019000 0x00001000
[026.611]: STATE <-- SAHARA_WAIT_COMMAND
[026.618]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.618]: 0x0000000d 0x0001a000 0x00001000
[026.633]: STATE <-- SAHARA_WAIT_COMMAND
[026.638]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.638]: 0x0000000d 0x0001b000 0x00001000
[026.639]: STATE <-- SAHARA_WAIT_COMMAND
[026.648]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.648]: 0x0000000d 0x0001c000 0x00001000
[026.649]: STATE <-- SAHARA_WAIT_COMMAND
[026.650]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.650]: 0x0000000d 0x0001d000 0x00001000
[026.658]: STATE <-- SAHARA_WAIT_COMMAND
[026.659]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.660]: 0x0000000d 0x0001e000 0x00001000
[026.660]: STATE <-- SAHARA_WAIT_COMMAND
[026.661]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.661]: 0x0000000d 0x0001f000 0x00001000
[026.663]: STATE <-- SAHARA_WAIT_COMMAND
[026.667]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.667]: 0x0000000d 0x00020000 0x00001000
[026.670]: STATE <-- SAHARA_WAIT_COMMAND
[026.688]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.688]: 0x0000000d 0x00021000 0x00001000
[026.699]: STATE <-- SAHARA_WAIT_COMMAND
[026.700]: RECEIVED <-- SAHARA_READ_DATA_ID
[026.700]: 0x0000000d 0x00022000 0x00000830
[026.700]: STATE <-- SAHARA_WAIT_COMMAND
[026.733]: RECEIVED <-- SAHARA_END_IMAGE_TX_ID
[026.733]: image_id = 13, status = 0
[026.733]: SENDING --> SAHARA_DONE
[026.733]: STATE <-- SAHARA_WAIT_DONE_RESP
[026.734]: RECEIVED <-- SAHARA_DONE_RESP_ID
[026.734]: image_tx_status = 0
[026.734]: Sahara protocol completed
[026.736]: dir=/tmp/mountd/disk2_part1/mudi/update/firehose
[026.736]: d_name=rawprogram_nand_p2K_b128K_update.xml
[027.759]: <log value="Binary build date: Jul 19 2022 @ 20:54:16"/>
[027.759]: <log value="Supported Functions: program configure power benchmark read getstorageinfo erase nop "/>
[028.812]: inf[0] ep_in -1/1024, errno = 145 (Operation timed out), timeout=1000
[028.812]: qusb_noblock_read read=0, errno: 145 (Operation timed out)
[028.812]: qusb_noblock_read cur=0, min_size=1
[028.812]: firehose_protocol.c fh_recv_cmd 327 fail
[028.812]: <configure MemoryName="nand" Verbose="0" AlwaysValidate="0" MaxDigestTableSizeInBytes="2048" MaxPayloadSizeToTargetInBytes="8192"  ZlpAwareHost="1" SkipStorageInit="0" />
[028.813]: <response value="ACK" MemoryName="NAND" MaxPayloadSizeFromTargetInBytes="2048" MaxPayloadSizeToTargetInBytes="8192" MaxPayloadSizeToTargetInBytesSupported="8192" TargetName="9x55" />
[028.814]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="640" physical_partition_number="0" start_sector="0"    />
[028.814]: <log value="start_sector = 0 and num_partition_sectors =0x280)"/>
[028.823]: <response value="ACK" />
[028.823]: <erase a_rawdata_start_sector="13952" b_rawdata_num_sector="512" c_project_name="EM060KGL" d_project_type="STD" vendor="quectel"/>

[028.824]: <log value="[chongyu] project name = EM060KGL"/>
[028.824]: <log value="[chongyu] pages_in_block=64, page_size=2048"/>
[028.833]: <log value="[chongyu]name=0:RAWDATA, start_blk=218, num_blk=10"/>
[028.833]: <log value="[chongyu]start_sector=13952, num_sector=640"/>
[028.835]: <log value="magic1=0x20190424, magic2=0x20190425."/>
[028.836]: <log value="rawdata_version=V1.00."/>
[028.836]: <log value="project_name=EM060KGL."/>
[028.837]: <log value="project_type=STD."/>
[028.837]: <log value="--- modified firmware name length = 8, name = EM060KGL"/>
[028.838]: <log value="--- modified xml file project name length = 8, name = EM060KGL"/>
[028.843]: <log value="[chongyu] project name or type = EM060KGL ok!"/>
[028.844]: <log value="start_sector = 0 and num_partition_sectors =0x280)"/>
[028.851]: <response value="ACK" />
[028.852]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="512" physical_partition_number="0" start_sector="11136"    />
[028.853]: <log value="start_sector = 11136 and num_partition_sectors =0x200)"/>
[028.859]: <response value="ACK" />
[028.860]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="512" physical_partition_number="0" start_sector="14592"    />
[028.862]: <log value="start_sector = 14592 and num_partition_sectors =0x200)"/>
[028.868]: <response value="ACK" />
[028.868]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="768" physical_partition_number="0" start_sector="15104"    />
[028.870]: <log value="start_sector = 15104 and num_partition_sectors =0x300)"/>
[028.881]: <response value="ACK" />
[028.881]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="5632" physical_partition_number="0" start_sector="15872"    />
[028.883]: <log value="start_sector = 15872 and num_partition_sectors =0x1600)"/>
[028.974]: <response value="ACK" />
[028.974]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="5632" physical_partition_number="0" start_sector="23808"    />
[028.975]: <log value="start_sector = 23808 and num_partition_sectors =0x1600)"/>
[029.069]: <response value="ACK" />
[029.069]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="6912" physical_partition_number="0" start_sector="29440"    />
[029.070]: <log value="start_sector = 29440 and num_partition_sectors =0x1b00)"/>
[029.240]: <response value="ACK" />
[029.240]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="38912" physical_partition_number="0" start_sector="36608"    />
[029.241]: <log value="start_sector = 36608 and num_partition_sectors =0x9800)"/>
[029.713]: <response value="ACK" />
[029.713]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="55552" physical_partition_number="0" start_sector="75520"    />
[029.714]: <log value="start_sector = 75520 and num_partition_sectors =0xd900)"/>
[030.644]: <response value="ACK" />
[030.644]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="1152" physical_partition_number="0" start_sector="9984"    />
[030.646]: <log value="start_sector = 9984 and num_partition_sectors =0x480)"/>
[030.705]: <response value="ACK" />
[030.725]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="640" physical_partition_number="0" start_sector="640"    />
[030.729]: <log value="start_sector = 640 and num_partition_sectors =0x280)"/>
[030.737]: <response value="ACK" />
[030.737]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="partition_complete_p2K_b128K.mbn" num_partition_sectors="4"  physical_partition_number="0" start_sector="640" />
[030.738]: <log value="INSIDE HANDLE PROGRAM"/>
[030.738]: <log value="start_sector 640, last_sector_address 644"/>
[030.738]: <response value="ACK" rawmode="true" />
[030.739]: send partition_complete_p2K_b128K.mbn, filesize=8192
.
[030.743]: upgrade progress 0% 8192/122474124
[030.743]: send finished
[030.745]: <log value="Finished sector address 640"/>
[030.746]: <response value="ACK" rawmode="false" />
[030.746]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\tz.mbn" num_partition_sectors="505"  physical_partition_number="0" start_sector="9984" />
[030.747]: <log value="INSIDE HANDLE PROGRAM"/>
[030.748]: <log value="start_sector 9984, last_sector_address 10489"/>
[030.748]: <response value="ACK" rawmode="true" />
[030.749]: send ../tz.mbn, filesize=1032980
.............
[031.103]: upgrade progress 0% 1041172/122474124
[031.103]: send finished
[031.104]: <log value="Finished sector address 9984"/>
[031.105]: <response value="ACK" rawmode="false" />
[031.105]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\devcfg.mbn" num_partition_sectors="20"  physical_partition_number="0" start_sector="11136" />
[031.107]: <log value="INSIDE HANDLE PROGRAM"/>
[031.108]: <log value="start_sector 11136, last_sector_address 11156"/>
[031.109]: <response value="ACK" rawmode="true" />
[031.109]: send ../devcfg.mbn, filesize=39252
.
[031.130]: upgrade progress 0% 1080424/122474124
[031.131]: send finished
[031.132]: <log value="Finished sector address 11136"/>
[031.133]: <response value="ACK" rawmode="false" />
[031.133]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\appsboot.mbn" num_partition_sectors="291"  physical_partition_number="0" start_sector="15104" />
[031.138]: <log value="INSIDE HANDLE PROGRAM"/>
[031.139]: <log value="start_sector 15104, last_sector_address 15395"/>
[031.141]: <response value="ACK" rawmode="true" />
[031.141]: send ../appsboot.mbn, filesize=594072
........
[031.380]: upgrade progress 1% 1674496/122474124
[031.380]: send finished
[031.381]: <log value="Finished sector address 15104"/>
[031.382]: <response value="ACK" rawmode="false" />
[031.383]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sdxnightjar-boot.img" num_partition_sectors="4047"  physical_partition_number="0" start_sector="15872" />
[031.384]: <log value="INSIDE HANDLE PROGRAM"/>
[031.385]: <log value="start_sector 15872, last_sector_address 19919"/>
[031.386]: <response value="ACK" rawmode="true" />
[031.387]: send ../sdxnightjar-boot.img, filesize=8288256
......................................................................................................
[035.481]: upgrade progress 8% 9962752/122474124
[035.481]: send finished
[035.482]: <log value="Finished sector address 15872"/>
[035.488]: <response value="ACK" rawmode="false" />
[035.489]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sdxnightjar-boot.img" num_partition_sectors="4047"  physical_partition_number="0" start_sector="23808" />
[035.508]: <log value="INSIDE HANDLE PROGRAM"/>
[035.510]: <log value="start_sector 23808, last_sector_address 27855"/>
[035.518]: <response value="ACK" rawmode="true" />
[035.519]: send ../sdxnightjar-boot.img, filesize=8288256
......................................................................................................
[039.075]: upgrade progress 14% 18251008/122474124
[039.075]: send finished
[039.076]: <log value="Finished sector address 23808"/>
[039.078]: <response value="ACK" rawmode="false" />
[039.079]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sdxnightjar-recoveryfs.ubi" num_partition_sectors="4864"  physical_partition_number="0" start_sector="29440" />
[039.082]: <log value="INSIDE HANDLE PROGRAM"/>
[039.082]: <log value="start_sector 29440, last_sector_address 34304"/>
[039.083]: <response value="ACK" rawmode="true" />
[039.084]: send ../sdxnightjar-recoveryfs.ubi, filesize=9961472
..........................................................................................................................
[043.956]: upgrade progress 23% 28212480/122474124
[043.956]: send finished
[043.958]: <log value="Finished sector address 29440"/>
[043.959]: <response value="ACK" rawmode="false" />
[043.959]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\usrdata.ubi" num_partition_sectors="960"  physical_partition_number="0" start_sector="36608" />
[043.960]: <log value="INSIDE HANDLE PROGRAM"/>
[043.961]: <log value="start_sector 36608, last_sector_address 37568"/>
[043.962]: <response value="ACK" rawmode="true" />
[043.962]: send ../usrdata.ubi, filesize=1966080
........................
[044.752]: upgrade progress 24% 30178560/122474124
[044.752]: send finished
[044.753]: <log value="Finished sector address 36608"/>
[044.754]: <response value="ACK" rawmode="false" />
[044.755]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sdxnightjar-sysfs.ubi" num_partition_sectors="44864"  physical_partition_number="0" start_sector="75520" />
[044.756]: <log value="INSIDE HANDLE PROGRAM"/>
[044.757]: <log value="start_sector 75520, last_sector_address 120384"/>
[044.758]: <response value="ACK" rawmode="true" />
[044.759]: send ../sdxnightjar-sysfs.ubi, filesize=91881472
..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
[085.634]: upgrade progress 99% 122060032/122474124
[085.708]: send finished
[085.924]: <log value="Finished sector address 75520"/>
[085.927]: <response value="ACK" rawmode="false" />
[085.948]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\rpm.mbn" num_partition_sectors="82"  physical_partition_number="0" start_sector="14592" />
[085.951]: <log value="INSIDE HANDLE PROGRAM"/>
[085.952]: <log value="start_sector 14592, last_sector_address 14674"/>
[085.953]: <response value="ACK" rawmode="true" />
[085.954]: send ../rpm.mbn, filesize=167652
...
[086.008]: upgrade progress 99% 122227684/122474124
[086.008]: send finished
[086.010]: <log value="Finished sector address 14592"/>
[086.010]: <response value="ACK" rawmode="false" />
[086.011]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sbl1.mbn" num_partition_sectors="121"  physical_partition_number="0" start_sector="0" />
[086.012]: <log value="INSIDE HANDLE PROGRAM"/>
[086.013]: <log value="start_sector 0, last_sector_address 121"/>
[086.014]: <response value="ACK" rawmode="true" />
[086.014]: send ../sbl1.mbn, filesize=246440
.

After about an hour waiting I stopped the process and tried the update again:

root@GL-E750:/usr/bin# QFirehose-ar9531-sha256-7383f4 -f /tmp/mountd/disk2_part1/mudi/
[000.000]: QFirehose Version: Quectel_LTE&5G_QFirehose_Linux&Android_V1.4
[000.001]: Builded: Apr 14 2022 04:54:50
[000.001]: Find md5 check file </tmp/mountd/disk2_part1/mudi/md5.txt>
[000.006]: md5 checking: /tmp/mountd/disk2_part1/mudi/contents.xml pass
[000.054]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/appsboot.mbn pass
[000.058]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/devcfg.mbn pass
[000.061]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/partition_complete_p2K_b128K.mbn pass
[000.062]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/patch_p2K_b128K.xml pass
[000.075]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/prog_nand_firehose_9x55.mbn pass
[000.077]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/rawprogram_nand_p2K_b128K_update.xml pass
[000.079]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/partition.mbn pass
[000.082]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/partition_nand.xml pass
[000.099]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/rpm.mbn pass
[000.131]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sbl1.mbn pass
[001.229]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-boot.img pass
[002.967]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-recoveryfs.ubi pass
[016.242]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-sysfs.ubi pass
[016.245]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sec.dat pass
[016.362]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/tz.mbn pass
[016.581]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/usrdata.ubi pass
[016.584]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/partition_complete_p2K_b128K.mbn pass
[016.585]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/patch_p2K_b128K.xml pass
[016.600]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/prog_nand_firehose_9x55.mbn pass
[016.603]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/rawprogram_nand_p2K_b128K_update.xml pass
[016.604]: Totals checking 21 files md5 value, 0 file fail!
[016.610]: [1] /sys/bus/usb/devices/1-1.2 5c6/9008/0
[016.613]: P: /dev/bus/usb/001/007 idVendor=05c6 idProduct=9008
[016.613]: C: /dev/bus/usb/001/007 bNumInterfaces: 1
[016.614]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[016.615]: E: Ad=81 Atr=02 MxPS= 2 Ivl=0ms
[016.616]: E: Ad=01 Atr=02 MxPS= 2 Ivl=0ms
[016.618]: dir=/tmp/mountd/disk2_part1/mudi/update/firehose
[016.619]: d_name=prog_nand_firehose_9x55.mbn
[016.620]: prog_nand_firehose_filename = prog_nand_firehose_9x55.mbn
[016.622]: STATE <-- SAHARA_WAIT_HELLO
[021.672]: inf[0] ep_in -1/4096, errno = 145 (Operation timed out), timeout=5000
[021.672]: qusb_noblock_read read=0, errno: 145 (Operation timed out)
[021.672]: qusb_noblock_read cur=0, min_size=1
[021.673]: RECEIVED <-- SAHARA_CMD_UNKONOW_1836597052
[021.673]: Sahara protocol error
[021.674]: Upgrade module failed.

Hello,

Can use this qfirehose tool to update the modem and try it again?
QFirehose.zip (44.8 KB)

Please give me more details. What should I check exactly? And how? I am a Linux user and it is a bit confusing that you just share only a single binary with me without any clear instructions at this point.

  1. Please download the zip file and extract it. Upload the QFirehose file to router via ssh, put the file to the folder /usr/bin
  2. Grant executable permissions by command chmod 775 /usr/bin/QFirehose
  3. Then you can use the QFirehose tool to update the modem:
    QFirehose -f /tmp/mountd/disk2_part1/mudi/

Thanks. Here is the output:

root@GL-E750:/usr/bin# QFirehose -f /tmp/mountd/disk2_part1/mudi/
[000.000]: Version: QFirehose_Linux_Android_V1.4.21
[000.001]: Builded: Apr  9 2023 12:27:46
[000.002]: Find md5 check file </tmp/mountd/disk2_part1/mudi/md5.txt>
[000.007]: md5 checking: /tmp/mountd/disk2_part1/mudi/contents.xml pass
[000.058]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/appsboot.mbn pass
[000.064]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/devcfg.mbn pass
[000.066]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/partition_complete_p2K_b128K.mbn pass
[000.068]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/patch_p2K_b128K.xml pass
[000.081]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/prog_nand_firehose_9x55.mbn pass
[000.083]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/firehose/rawprogram_nand_p2K_b128K_update.xml pass
[000.085]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/partition.mbn pass
[000.087]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/partition_nand.xml pass
[000.102]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/rpm.mbn pass
[000.125]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sbl1.mbn pass
[000.885]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-boot.img pass
[001.788]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-recoveryfs.ubi pass
[012.072]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sdxnightjar-sysfs.ubi pass
[012.074]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/sec.dat pass
[012.172]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/tz.mbn pass
[012.357]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/usrdata.ubi pass
[012.359]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/partition_complete_p2K_b128K.mbn pass
[012.361]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/patch_p2K_b128K.xml pass
[012.373]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/prog_nand_firehose_9x55.mbn pass
[012.375]: md5 checking: /tmp/mountd/disk2_part1/mudi/update/wu/rawprogram_nand_p2K_b128K_update.xml pass
[012.376]: Totals checking 21 files md5 value, 0 file fail!
[012.378]: find 'prog_nand_firehose_9x55.mbn'
[012.378]: find_firehose_mbn prog_nand_firehose_9x55.mbn
[012.379]: main prog_nand_firehose_9x55.mbn
[012.385]: [1] /sys/bus/usb/devices/1-1.2 5c6/9008/0
[012.387]: qusb_read_speed_atime speed: 480, st_atime: 20250806_10:45:47
[012.388]: P: /dev/bus/usb/001/007 idVendor=05c6 idProduct=9008
[012.388]: C: /dev/bus/usb/001/007 bNumInterfaces: 1
[012.388]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[012.389]: E: Ad=81 Atr=02 MxPS= 2 Ivl=0ms
[012.389]: E: Ad=01 Atr=02 MxPS= 2 Ivl=0ms
[012.390]: tmp=/sys/bus/usb/devices/usb1/../driver, driver=../../../../bus/platform/drivers/ehci-platform
[017.425]: inf[0] ep_in -1/4096, errno = 145 (Operation timed out), timeout=5000
[017.425]: qusb_noblock_read read=0, errno: 145 (Operation timed out)
[017.425]: qusb_noblock_read cur=0, min_size=1
[017.426]: <=== SAHARA_CMD_UNKONOW_1836597052
[017.426]: Sahara protocol error
[017.426]: Upgrade module failed.

Can we have a remote check?
Please refer to Technical Support via GoodCloud - GL.iNet Router Docs 4 to share device through Goodcloud for remote investigation.

Done. The share is ready.

Great. Can you provide the MAC address and the admin password of the router? Send it via private message

Done. Please check the PMs.

Hi @ViBE please perform a reset and use the QFirehose tool to flash the modem firmware once again.

If the upgrade still fails, then it will need to disassemble the device and upgrade the modem separately. Or please contact the support@glinet.biz and bring the link of the post for further assistance.

Reset is done. Update process stuck at the same position.

As I understand the modem is alive and basically soft bricked. But writing the sbl1 partition fails all the time and it seems like some kind of offset or size mismatching. Or the modem revision differs. Are you 100% sure that a disassembly needed? I have no M.2(?) adapter for these devices.

The provided link or mail does not work.

Would it be a good idea to test the update process with the recent EM060KGLAAR01A11M2G firmware?

Yes, router cannot recognize the module. The module needs to be removed and upgraded separately. Please contact support@glinet.biz for support

I tried to be as patient as I can. I am a laid back guy, but this time this device triggered me so much. I felt like cursed. I never bricked any of my devices before. Or if I did, I fixed it (one single case in my entire life). And I am pretty sure that the GL.iNet staff still try to figure out what cause the issue in my case. But I cannot wait for the answer. Time is ticking and I need the Mudi. So I decided to check everything again.

I checked the forum again with different keywords. And looks like this time I found a very similar case. Even if it was old. it is still relevant, SADLY:

To me it is not exactly clear what are the differences between the QFirehose-ar9531-sha256-7383f4 and the QFirehose file what @Cathy shared with me. I thought the difference might be related with the hardware architecture. The article mentions the same method what @Cathy also mentioned above. But with one single twist. @ywp does not mentioned any need of uploading or changing the already existing binary which is part of the OS. Somehow it worked for @lion1 and fixed his soft bricked modem.

Then I decided to check again these binaries. I realized that the one which is already in the OS is a different one. So I though it might worth a shot to check what happens if I use that:

root@GL-E750:/usr/bin# QFirehose -f /tmp/mountd/disk1_part1/mudi/
[000.000]: Version: QFirehose_Linux_Android_V1.4.7
[000.000]: Builded: Apr  9 2023 12:27:46
[000.001]: Find md5 check file </tmp/mountd/disk1_part1/mudi/md5.txt>
[000.007]: md5 checking: /tmp/mountd/disk1_part1/mudi/contents.xml pass
[000.226]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/appsboot.mbn pass
[000.231]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/devcfg.mbn pass
[000.401]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/firehose/partition_complete_p2K_b128K.mbn pass
[000.403]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/firehose/patch_p2K_b128K.xml pass
[000.415]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/firehose/prog_nand_firehose_9x55.mbn pass
[000.418]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/firehose/rawprogram_nand_p2K_b128K_update.xml pass
[000.420]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/partition.mbn pass
[000.423]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/partition_nand.xml pass
[000.437]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/rpm.mbn pass
[000.459]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/sbl1.mbn pass
[001.250]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/sdxnightjar-boot.img pass
[002.241]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/sdxnightjar-recoveryfs.ubi pass
[011.509]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/sdxnightjar-sysfs.ubi pass
[011.512]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/sec.dat pass
[011.608]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/tz.mbn pass
[011.784]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/usrdata.ubi pass
[011.953]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/wu/partition_complete_p2K_b128K.mbn pass
[011.955]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/wu/patch_p2K_b128K.xml pass
[011.967]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/wu/prog_nand_firehose_9x55.mbn pass
[011.969]: md5 checking: /tmp/mountd/disk1_part1/mudi/update/wu/rawprogram_nand_p2K_b128K_update.xml pass
[011.969]: Totals checking 21 files md5 value, 0 file fail!
[011.974]: [1] /sys/bus/usb/devices/1-1.2 5c6/9008/0
[011.975]: P: /dev/bus/usb/001/004 idVendor=05c6 idProduct=9008
[011.976]: C: /dev/bus/usb/001/004 bNumInterfaces: 1
[011.976]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[011.976]: E: Ad=81 Atr=02 MxPS= 2 Ivl=0ms
[011.977]: E: Ad=01 Atr=02 MxPS= 2 Ivl=0ms
[011.977]: tmp=/sys/bus/usb/devices/usb1/../driver, driver=../../../../bus/platform/drivers/ehci-platform
[011.978]: dir=/tmp/mountd/disk1_part1/mudi/update/firehose
[011.978]: d_name=prog_nand_firehose_9x55.mbn
[011.979]: prog_nand_firehose_filename = prog_nand_firehose_9x55.mbn
[011.979]: STATE <-- SAHARA_WAIT_HELLO
[011.980]: RECEIVED <--  SAHARA_HELLO_ID
[011.980]: RECEIVED <-- SAHARA_MODE_IMAGE_TX_PENDING
[011.980]: SENDING --> SAHARA_HELLO_RESPONSE
[011.981]: STATE <-- SAHARA_WAIT_COMMAND
[011.982]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.982]: 0x0000000d 0x00000000 0x00000034
[011.984]: STATE <-- SAHARA_WAIT_COMMAND
[011.984]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.984]: 0x0000000d 0x00000034 0x00000060
[011.985]: STATE <-- SAHARA_WAIT_COMMAND
[011.985]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.986]: 0x0000000d 0x00001000 0x00001000
[011.987]: STATE <-- SAHARA_WAIT_COMMAND
[011.987]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.988]: 0x0000000d 0x00002000 0x00000988
[011.988]: STATE <-- SAHARA_WAIT_COMMAND
[011.989]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.989]: 0x0000000d 0x00003000 0x00001000
[011.990]: STATE <-- SAHARA_WAIT_COMMAND
[011.991]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.991]: 0x0000000d 0x00004000 0x00001000
[011.992]: STATE <-- SAHARA_WAIT_COMMAND
[011.993]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.993]: 0x0000000d 0x00005000 0x00001000
[011.994]: STATE <-- SAHARA_WAIT_COMMAND
[011.995]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.995]: 0x0000000d 0x00006000 0x00001000
[011.996]: STATE <-- SAHARA_WAIT_COMMAND
[011.996]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.997]: 0x0000000d 0x00007000 0x00001000
[011.997]: STATE <-- SAHARA_WAIT_COMMAND
[011.998]: RECEIVED <-- SAHARA_READ_DATA_ID
[011.998]: 0x0000000d 0x00008000 0x00001000
[011.999]: STATE <-- SAHARA_WAIT_COMMAND
[011.999]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.000]: 0x0000000d 0x00009000 0x00001000
[012.000]: STATE <-- SAHARA_WAIT_COMMAND
[012.001]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.001]: 0x0000000d 0x0000a000 0x00001000
[012.002]: STATE <-- SAHARA_WAIT_COMMAND
[012.002]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.003]: 0x0000000d 0x0000b000 0x00001000
[012.004]: STATE <-- SAHARA_WAIT_COMMAND
[012.004]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.005]: 0x0000000d 0x0000c000 0x00001000
[012.005]: STATE <-- SAHARA_WAIT_COMMAND
[012.006]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.007]: 0x0000000d 0x0000d000 0x00001000
[012.009]: STATE <-- SAHARA_WAIT_COMMAND
[012.010]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.011]: 0x0000000d 0x0000e000 0x00001000
[012.013]: STATE <-- SAHARA_WAIT_COMMAND
[012.014]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.014]: 0x0000000d 0x0000f000 0x00001000
[012.016]: STATE <-- SAHARA_WAIT_COMMAND
[012.017]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.018]: 0x0000000d 0x00010000 0x00001000
[012.019]: STATE <-- SAHARA_WAIT_COMMAND
[012.020]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.021]: 0x0000000d 0x00011000 0x00001000
[012.022]: STATE <-- SAHARA_WAIT_COMMAND
[012.023]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.023]: 0x0000000d 0x00012000 0x00001000
[012.024]: STATE <-- SAHARA_WAIT_COMMAND
[012.025]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.025]: 0x0000000d 0x00013000 0x00001000
[012.027]: STATE <-- SAHARA_WAIT_COMMAND
[012.028]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.028]: 0x0000000d 0x00014000 0x00001000
[012.028]: STATE <-- SAHARA_WAIT_COMMAND
[012.029]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.029]: 0x0000000d 0x00015000 0x00001000
[012.030]: STATE <-- SAHARA_WAIT_COMMAND
[012.030]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.031]: 0x0000000d 0x00016000 0x00001000
[012.031]: STATE <-- SAHARA_WAIT_COMMAND
[012.032]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.032]: 0x0000000d 0x00017000 0x00001000
[012.032]: STATE <-- SAHARA_WAIT_COMMAND
[012.033]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.034]: 0x0000000d 0x00018000 0x00001000
[012.034]: STATE <-- SAHARA_WAIT_COMMAND
[012.035]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.035]: 0x0000000d 0x00019000 0x00001000
[012.035]: STATE <-- SAHARA_WAIT_COMMAND
[012.036]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.036]: 0x0000000d 0x0001a000 0x00001000
[012.037]: STATE <-- SAHARA_WAIT_COMMAND
[012.039]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.039]: 0x0000000d 0x0001b000 0x00001000
[012.039]: STATE <-- SAHARA_WAIT_COMMAND
[012.040]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.040]: 0x0000000d 0x0001c000 0x00001000
[012.041]: STATE <-- SAHARA_WAIT_COMMAND
[012.041]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.042]: 0x0000000d 0x0001d000 0x00001000
[012.042]: STATE <-- SAHARA_WAIT_COMMAND
[012.043]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.043]: 0x0000000d 0x0001e000 0x00001000
[012.043]: STATE <-- SAHARA_WAIT_COMMAND
[012.044]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.045]: 0x0000000d 0x0001f000 0x00001000
[012.045]: STATE <-- SAHARA_WAIT_COMMAND
[012.046]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.046]: 0x0000000d 0x00020000 0x00001000
[012.046]: STATE <-- SAHARA_WAIT_COMMAND
[012.047]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.047]: 0x0000000d 0x00021000 0x00001000
[012.048]: STATE <-- SAHARA_WAIT_COMMAND
[012.049]: RECEIVED <-- SAHARA_READ_DATA_ID
[012.049]: 0x0000000d 0x00022000 0x00000830
[012.049]: STATE <-- SAHARA_WAIT_COMMAND
[012.081]: RECEIVED <-- SAHARA_END_IMAGE_TX_ID
[012.081]: image_id = 13, status = 0
[012.081]: SENDING --> SAHARA_DONE
[012.082]: STATE <-- SAHARA_WAIT_DONE_RESP
[012.082]: RECEIVED <-- SAHARA_DONE_RESP_ID
[012.082]: image_tx_status = 0
[012.082]: Sahara protocol completed
[012.084]: dir=/tmp/mountd/disk1_part1/mudi/update/firehose
[012.084]: d_name=rawprogram_nand_p2K_b128K_update.xml
[013.067]: <log value="Binary build date: Jul 19 2022 @ 20:54:16"/>
[013.068]: <log value="Supported Functions: program configure power benchmark read getstorageinfo erase nop "/>
[014.069]: <configure MemoryName="nand" Verbose="0" AlwaysValidate="0" MaxDigestTableSizeInBytes="2048" MaxPayloadSizeToTargetInBytes="8192"  ZlpAwareHost="1" SkipStorageInit="0" />
[014.071]: <response value="ACK" MemoryName="NAND" MaxPayloadSizeFromTargetInBytes="2048" MaxPayloadSizeToTargetInBytes="8192" MaxPayloadSizeToTargetInBytesSupported="8192" TargetName="9x55" />
[014.071]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="640" physical_partition_number="0" start_sector="0"    />
[014.072]: <log value="start_sector = 0 and num_partition_sectors =0x280)"/>
[014.081]: <response value="ACK" />
[014.081]: <erase a_rawdata_start_sector="13952" b_rawdata_num_sector="512" c_project_name="EM060KGL" d_project_type="STD" vendor="quectel"/>

[014.083]: <log value="[chongyu] project name = EM060KGL"/>
[014.083]: <log value="[chongyu] pages_in_block=64, page_size=2048"/>
[014.086]: <log value="[chongyu]name=0:RAWDATA, start_blk=218, num_blk=10"/>
[014.087]: <log value="[chongyu]start_sector=13952, num_sector=640"/>
[014.090]: <log value="magic1=0x20190424, magic2=0x20190425."/>
[014.091]: <log value="rawdata_version=V1.00."/>
[014.091]: <log value="project_name=EM060KGL."/>
[014.092]: <log value="project_type=STD."/>
[014.092]: <log value="--- modified firmware name length = 8, name = EM060KGL"/>
[014.093]: <log value="--- modified xml file project name length = 8, name = EM060KGL"/>
[014.093]: <log value="[chongyu] project name or type = EM060KGL ok!"/>
[014.094]: <log value="start_sector = 0 and num_partition_sectors =0x280)"/>
[014.102]: <response value="ACK" />
[014.102]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="512" physical_partition_number="0" start_sector="11136"    />
[014.103]: <log value="start_sector = 11136 and num_partition_sectors =0x200)"/>
[014.110]: <response value="ACK" />
[014.110]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="512" physical_partition_number="0" start_sector="14592"    />
[014.111]: <log value="start_sector = 14592 and num_partition_sectors =0x200)"/>
[014.158]: <response value="ACK" />
[014.158]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="768" physical_partition_number="0" start_sector="15104"    />
[014.173]: <log value="start_sector = 15104 and num_partition_sectors =0x300)"/>
[014.185]: <response value="ACK" />
[014.186]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="5632" physical_partition_number="0" start_sector="15872"    />
[014.187]: <log value="start_sector = 15872 and num_partition_sectors =0x1600)"/>
[014.287]: <response value="ACK" />
[014.287]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="5632" physical_partition_number="0" start_sector="23808"    />
[014.289]: <log value="start_sector = 23808 and num_partition_sectors =0x1600)"/>
[014.382]: <response value="ACK" />
[014.383]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="6912" physical_partition_number="0" start_sector="29440"    />
[014.383]: <log value="start_sector = 29440 and num_partition_sectors =0x1b00)"/>
[014.498]: <response value="ACK" />
[014.498]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="38912" physical_partition_number="0" start_sector="36608"    />
[014.499]: <log value="start_sector = 36608 and num_partition_sectors =0x9800)"/>
[014.965]: <response value="ACK" />
[014.965]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="55552" physical_partition_number="0" start_sector="75520"    />
[014.966]: <log value="start_sector = 75520 and num_partition_sectors =0xd900)"/>
[015.913]: <response value="ACK" />
[015.913]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="1152" physical_partition_number="0" start_sector="9984"    />
[015.914]: <log value="start_sector = 9984 and num_partition_sectors =0x480)"/>
[015.931]: <response value="ACK" />
[015.931]: <erase PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" num_partition_sectors="640" physical_partition_number="0" start_sector="640"    />
[015.932]: <log value="start_sector = 640 and num_partition_sectors =0x280)"/>
[015.940]: <response value="ACK" />
[015.940]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="partition_complete_p2K_b128K.mbn" num_partition_sectors="4"  physical_partition_number="0" start_sector="640" />
[015.941]: <log value="INSIDE HANDLE PROGRAM"/>
[015.941]: <log value="start_sector 640, last_sector_address 644"/>
[015.941]: <response value="ACK" rawmode="true" />
[015.942]: send partition_complete_p2K_b128K.mbn, filesize=8192
.
[015.944]: upgrade progress 0% 8192/122474124
[015.944]: send finished
[015.946]: <log value="Finished sector address 640"/>
[015.946]: <response value="ACK" rawmode="false" />
[015.947]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\tz.mbn" num_partition_sectors="505"  physical_partition_number="0" start_sector="9984" />
[015.947]: <log value="INSIDE HANDLE PROGRAM"/>
[015.948]: <log value="start_sector 9984, last_sector_address 10489"/>
[015.948]: <response value="ACK" rawmode="true" />
[015.949]: send ../tz.mbn, filesize=1032980
.
[016.223]: upgrade progress 0% 1041172/122474124
[016.224]: <log value="Finished sector address 9984"/>
[016.224]: <response value="ACK" rawmode="false" />
[016.225]: send finished
[016.225]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\devcfg.mbn" num_partition_sectors="20"  physical_partition_number="0" start_sector="11136" />
[016.226]: <log value="INSIDE HANDLE PROGRAM"/>
[016.227]: <log value="start_sector 11136, last_sector_address 11156"/>
[016.227]: <response value="ACK" rawmode="true" />
[016.228]: send ../devcfg.mbn, filesize=39252
.
[016.240]: upgrade progress 0% 1080424/122474124
[016.241]: send finished
[016.242]: <log value="Finished sector address 11136"/>
[016.243]: <response value="ACK" rawmode="false" />
[016.243]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\appsboot.mbn" num_partition_sectors="291"  physical_partition_number="0" start_sector="15104" />
[016.244]: <log value="INSIDE HANDLE PROGRAM"/>
[016.245]: <log value="start_sector 15104, last_sector_address 15395"/>
[016.245]: <response value="ACK" rawmode="true" />
[016.246]: send ../appsboot.mbn, filesize=594072
.
[016.417]: upgrade progress 1% 1674496/122474124
[016.417]: send finished
[016.418]: <log value="Finished sector address 15104"/>
[016.418]: <response value="ACK" rawmode="false" />
[016.419]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sdxnightjar-boot.img" num_partition_sectors="4047"  physical_partition_number="0" start_sector="15872" />
[016.420]: <log value="INSIDE HANDLE PROGRAM"/>
[016.420]: <log value="start_sector 15872, last_sector_address 19919"/>
[016.421]: <response value="ACK" rawmode="true" />
[016.422]: send ../sdxnightjar-boot.img, filesize=8288256
........
[018.876]: upgrade progress 8% 9962752/122474124
[018.877]: send finished
[018.878]: <log value="Finished sector address 15872"/>
[018.878]: <response value="ACK" rawmode="false" />
[018.879]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sdxnightjar-boot.img" num_partition_sectors="4047"  physical_partition_number="0" start_sector="23808" />
[018.880]: <log value="INSIDE HANDLE PROGRAM"/>
[018.880]: <log value="start_sector 23808, last_sector_address 27855"/>
[018.881]: <response value="ACK" rawmode="true" />
[018.881]: send ../sdxnightjar-boot.img, filesize=8288256
........
[021.121]: upgrade progress 14% 18251008/122474124
[021.122]: send finished
[021.122]: <log value="Finished sector address 23808"/>
[021.123]: <response value="ACK" rawmode="false" />
[021.123]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sdxnightjar-recoveryfs.ubi" num_partition_sectors="4864"  physical_partition_number="0" start_sector="29440" />
[021.125]: <log value="INSIDE HANDLE PROGRAM"/>
[021.125]: <log value="start_sector 29440, last_sector_address 34304"/>
[021.125]: <response value="ACK" rawmode="true" />
[021.126]: send ../sdxnightjar-recoveryfs.ubi, filesize=9961472
..........
[024.091]: upgrade progress 23% 28212480/122474124
[024.092]: send finished
[024.093]: <log value="Finished sector address 29440"/>
[024.093]: <response value="ACK" rawmode="false" />
[024.094]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\usrdata.ubi" num_partition_sectors="960"  physical_partition_number="0" start_sector="36608" />
[024.095]: <log value="INSIDE HANDLE PROGRAM"/>
[024.095]: <log value="start_sector 36608, last_sector_address 37568"/>
[024.095]: <response value="ACK" rawmode="true" />
[024.096]: send ../usrdata.ubi, filesize=1966080
..
[024.608]: upgrade progress 24% 30178560/122474124
[024.609]: send finished
[024.610]: <log value="Finished sector address 36608"/>
[024.610]: <response value="ACK" rawmode="false" />
[024.611]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sdxnightjar-sysfs.ubi" num_partition_sectors="44864"  physical_partition_number="0" start_sector="75520" />
[024.612]: <log value="INSIDE HANDLE PROGRAM"/>
[024.612]: <log value="start_sector 75520, last_sector_address 120384"/>
[024.613]: <response value="ACK" rawmode="true" />
[024.613]: send ../sdxnightjar-sysfs.ubi, filesize=91881472
........................................................................................
[051.957]: upgrade progress 99% 122060032/122474124
[051.958]: send finished
[051.959]: <log value="Finished sector address 75520"/>
[051.959]: <response value="ACK" rawmode="false" />
[051.960]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\rpm.mbn" num_partition_sectors="82"  physical_partition_number="0" start_sector="14592" />
[051.961]: <log value="INSIDE HANDLE PROGRAM"/>
[051.961]: <log value="start_sector 14592, last_sector_address 14674"/>
[051.962]: <response value="ACK" rawmode="true" />
[051.962]: send ../rpm.mbn, filesize=167652
.[052.012]: <log value="Finished sector address 14592"/>
[052.012]: <response value="ACK" rawmode="false" />

[052.015]: upgrade progress 99% 122227684/122474124
[052.015]: send finished
[052.017]: <program PAGES_PER_BLOCK="64" SECTOR_SIZE_IN_BYTES="2048" filename="..\sbl1.mbn" num_partition_sectors="121"  physical_partition_number="0" start_sector="0" />
[052.019]: <log value="INSIDE HANDLE PROGRAM"/>
[052.020]: <log value="start_sector 0, last_sector_address 121"/>
[052.020]: <response value="ACK" rawmode="true" />
[052.022]: send ../sbl1.mbn, filesize=246440
.[052.027]: <log value="rx_length_sectors=4 fh.attrs.start_sector=0"/>

[052.096]: upgrade progress 100% 122474124/122474124
[052.097]: <log value="Finished sector address 0"/>
[052.097]: <response value="ACK" rawmode="false" />
[052.098]: send finished
[052.100]: <power value="reset" />
[052.101]: <log value="Inside handlePower() - Requested POWER_RESET"/>
[052.102]: <response value="ACK" />
[053.066]: inf[0] ep_in -1/1024, errno = 71 (Protocol error)
[053.066]: qusb_noblock_read read=-1, errno: 71 (Protocol error)
[053.066]: qusb_noblock_read cur=0, min_size=1
[053.105]: THE TOTAL DOWNLOAD TIME IS 41.127 s
[053.105]: Upgrade module successfully.

And voilà! The built in binary which is not mentioned in the OFFICIAL UPGRADE GUIDE done the upgrade nicely.

Again. What @Cathy shared with me:

[000.000]: Version: QFirehose_Linux_Android_V1.4.21
[000.001]: Builded: Apr  9 2023 12:27:46

The one which is present in the 4.7.2 beta OS:

[000.000]: Version: QFirehose_Linux_Android_V1.4.7
[000.000]: Builded: Apr  9 2023 12:27:46

@lion1 reported this issue already in October 2024. It's been a while, isn't it?! SO PLEASE GUYS, UPDATE THE GUIDE AND EVERYTHING ELSE WHICH ARE RELATED. It feels very unprofessional that the official guide bricks the hardware and even the staff has no clue how to solve it. Then users have to figure out a solution while it is already mentioned BUT IGNORED.

Before I close my RMA ticket via mail I would like to ask the staff to check my Mudi's modem remotely. It is up and running and the share is on. Please let me know if the modem has been correctly restored. Thanks.

Hello, glad to hear it's working. Just checked the modem status and it should be updated properly now. Module EM060K should use a new QFirehose tool to update the modem firmware. We will verify and update the official guide.

Thanks. Should I reply to the RMA team now to close my case?

Yes, please. I think the device can work properly now.