BG95 firmware update

Hello. My BG95-M3 is crashing from times to times (shutting down while I am sending commands too fast). May I ask you to indicate me location of latest firmware ? (I am going to move to BG95-S5 then so please send me a version that is as close as possible despite missing features in S5. I already stopped to use QLTS & QLBS. Please indicate if there is other groups of commands not available.) Thank you.

Could you please tell me the current detailed version?

AT+QGMR
BG95M3LAR02A03_01.005.01.005

Thank you

I have send you the latest version and check your email please.

Hello

Thank you

i could understand that I need qfirehose to perform update:
git clone https://github.com/nippynetworks/qfirehose
autoscan && autoreconf --install
./configure
make
sudo ./QFirehose -f …/BG95_firmware/ -p /dev/ttyUSB0

It does not work. May I ask you a firmware update guide ?

Thank you

[000.000]: Version: QFirehose_Linux_Android_V1.4.17
[000.000]: Builded: Dec 1 2024 20:56:39
[000.000]: Find md5 check file <…/BG95_firmware/md5.txt>
[000.000]: md5 checking: …/BG95_firmware/dam/recover/firehose/partition_complete_p2K_b128K.mbn pass
[000.000]: md5 checking: …/BG95_firmware/dam/recover/firehose/patch_p2K_b128K.xml pass
[000.001]: md5 checking: …/BG95_firmware/dam/recover/firehose/prog_firehose_nand_mdm9x05.elf pass
[000.001]: md5 checking: …/BG95_firmware/dam/recover/firehose/rawprogram_nand_p2K_b128K_dam_recover.xml pass
[000.001]: md5 checking: …/BG95_firmware/dam/update/firehose/partition_complete_p2K_b128K.mbn pass
[000.001]: md5 checking: …/BG95_firmware/dam/update/firehose/patch_p2K_b128K.xml pass
[000.002]: md5 checking: …/BG95_firmware/dam/update/firehose/prog_firehose_nand_mdm9x05.elf pass
[000.002]: md5 checking: …/BG95_firmware/dam/update/firehose/rawprogram_nand_p2K_b128K_dam.xml pass
[000.002]: md5 checking: …/BG95_firmware/mbn/common/ROW/Commercial/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/EU/DT/DT/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/EU/Telefonica/telefonica/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/EU/Vodafone/vodafone/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/NA/ATT/FirstNet/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/NA/ATT/Non_VoLTE/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/NA/Rogers/rogers/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/NA/Telus/telus_consumer/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/NA/Telus/telus_jasper/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/NA/TMO/Commercial/mcfg_sw.mbn pass
[000.002]: md5 checking: …/BG95_firmware/mbn/NA/VERIZON/IMSless/mcfg_sw.mbn pass
[000.003]: md5 checking: …/BG95_firmware/qsr4/msg_hash_271d8d49-5c4f-bc48-beba-9c5a573c70ce.qsr4 pass
[000.013]: md5 checking: …/BG95_firmware/qsr4/msg_hash_b67f6f30-198a-407a-8fde-26e72e72c3ed.qsr4 pass
[000.020]: md5 checking: …/BG95_firmware/update/apps.mbn pass
[000.020]: md5 checking: …/BG95_firmware/update/cmnlib.mbn pass
[000.020]: md5 checking: …/BG95_firmware/update/devcfg.mbn pass
[000.020]: md5 checking: …/BG95_firmware/update/firehose/partition.mbn pass
[000.020]: md5 checking: …/BG95_firmware/update/firehose/partition_nand.xml pass
[000.020]: md5 checking: …/BG95_firmware/update/firehose/patch_p2K_b128K.xml pass
[000.021]: md5 checking: …/BG95_firmware/update/firehose/prog_firehose_nand_mdm9x05.elf pass
[000.021]: md5 checking: …/BG95_firmware/update/firehose/rawprogram_nand_p2K_b128K.xml pass
[000.021]: md5 checking: …/BG95_firmware/update/keymasterapp32.mbn pass
[000.021]: md5 checking: …/BG95_firmware/update/multi_image.mbn pass
[000.021]: md5 checking: …/BG95_firmware/update/multi_image_qti.mbn pass
[000.021]: md5 checking: …/BG95_firmware/update/partition_complete_p2K_b128K.mbn pass
[000.039]: md5 checking: …/BG95_firmware/update/qdsp6sw.mbn pass
[000.044]: md5 checking: …/BG95_firmware/update/qdsp6sw_2.mbn pass
[000.053]: md5 checking: …/BG95_firmware/update/qdsp6sw_paging.bin pass
[000.054]: md5 checking: …/BG95_firmware/update/rpm.mbn pass
[000.055]: md5 checking: …/BG95_firmware/update/sbl1.mbn pass
[000.055]: md5 checking: …/BG95_firmware/update/sec.elf pass
[000.056]: md5 checking: …/BG95_firmware/update/tz.mbn pass
[000.056]: Totals checking 40 files md5 value, 0 file fail!
[000.056]: find ‘prog_firehose_nand_mdm9x05.elf’
[000.056]: find_firehose_mbn prog_firehose_nand_mdm9x05.elf
[000.057]: qusb_read_speed_atime speed: 12, st_atime: 20241201_20:43:19
[000.057]: P: /dev/bus/usb/001/004 idVendor=0403 idProduct=6001
[000.057]: C: /dev/bus/usb/001/004 bNumInterfaces: 1
[000.057]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[000.057]: E: Ad=81 Atr=02 MxPS= 64 Ivl=0ms
[000.057]: E: Ad=02 Atr=02 MxPS= 64 Ivl=0ms
[000.057]: tmp=/sys/bus/usb/devices/usb1/…/driver, driver=…/…/…/bus/pci/drivers/xhci_hcd
[000.057]: qusb_noblock_open port_name = /dev/ttyUSB0
[000.065]: retrieve NPRG MBN failed.
[000.071]: Upgrade module failed.

I could make some progress having the device powered by an external power supply.
Still device shuts down during upgrade.

sudo ./qfirehose/QFirehose -f BG95_firmware/
[000.000]: Version: QFirehose_Linux_Android_V1.4.17
[000.000]: Builded: Dec 1 2024 20:56:39
[000.000]: Find md5 check file <BG95_firmware/md5.txt>
[000.000]: md5 checking: BG95_firmware/dam/recover/firehose/partition_complete_p2K_b128K.mbn pass
[000.000]: md5 checking: BG95_firmware/dam/recover/firehose/patch_p2K_b128K.xml pass
[000.001]: md5 checking: BG95_firmware/dam/recover/firehose/prog_firehose_nand_mdm9x05.elf pass
[000.001]: md5 checking: BG95_firmware/dam/recover/firehose/rawprogram_nand_p2K_b128K_dam_recover.xml pass
[000.001]: md5 checking: BG95_firmware/dam/update/firehose/partition_complete_p2K_b128K.mbn pass
[000.001]: md5 checking: BG95_firmware/dam/update/firehose/patch_p2K_b128K.xml pass
[000.002]: md5 checking: BG95_firmware/dam/update/firehose/prog_firehose_nand_mdm9x05.elf pass
[000.002]: md5 checking: BG95_firmware/dam/update/firehose/rawprogram_nand_p2K_b128K_dam.xml pass
[000.002]: md5 checking: BG95_firmware/mbn/common/ROW/Commercial/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/EU/DT/DT/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/EU/Telefonica/telefonica/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/EU/Vodafone/vodafone/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/NA/ATT/FirstNet/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/NA/ATT/Non_VoLTE/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/NA/Rogers/rogers/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/NA/Telus/telus_consumer/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/NA/Telus/telus_jasper/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/NA/TMO/Commercial/mcfg_sw.mbn pass
[000.002]: md5 checking: BG95_firmware/mbn/NA/VERIZON/IMSless/mcfg_sw.mbn pass
[000.004]: md5 checking: BG95_firmware/qsr4/msg_hash_271d8d49-5c4f-bc48-beba-9c5a573c70ce.qsr4 pass
[000.013]: md5 checking: BG95_firmware/qsr4/msg_hash_b67f6f30-198a-407a-8fde-26e72e72c3ed.qsr4 pass
[000.018]: md5 checking: BG95_firmware/update/apps.mbn pass
[000.019]: md5 checking: BG95_firmware/update/cmnlib.mbn pass
[000.019]: md5 checking: BG95_firmware/update/devcfg.mbn pass
[000.019]: md5 checking: BG95_firmware/update/firehose/partition.mbn pass
[000.019]: md5 checking: BG95_firmware/update/firehose/partition_nand.xml pass
[000.019]: md5 checking: BG95_firmware/update/firehose/patch_p2K_b128K.xml pass
[000.020]: md5 checking: BG95_firmware/update/firehose/prog_firehose_nand_mdm9x05.elf pass
[000.020]: md5 checking: BG95_firmware/update/firehose/rawprogram_nand_p2K_b128K.xml pass
[000.020]: md5 checking: BG95_firmware/update/keymasterapp32.mbn pass
[000.020]: md5 checking: BG95_firmware/update/multi_image.mbn pass
[000.020]: md5 checking: BG95_firmware/update/multi_image_qti.mbn pass
[000.020]: md5 checking: BG95_firmware/update/partition_complete_p2K_b128K.mbn pass
[000.038]: md5 checking: BG95_firmware/update/qdsp6sw.mbn pass
[000.043]: md5 checking: BG95_firmware/update/qdsp6sw_2.mbn pass
[000.052]: md5 checking: BG95_firmware/update/qdsp6sw_paging.bin pass
[000.053]: md5 checking: BG95_firmware/update/rpm.mbn pass
[000.054]: md5 checking: BG95_firmware/update/sbl1.mbn pass
[000.054]: md5 checking: BG95_firmware/update/sec.elf pass
[000.055]: md5 checking: BG95_firmware/update/tz.mbn pass
[000.055]: Totals checking 40 files md5 value, 0 file fail!
[000.055]: find ‘prog_firehose_nand_mdm9x05.elf’
[000.055]: find_firehose_mbn prog_firehose_nand_mdm9x05.elf
[000.055]: [1] /sys/bus/usb/devices/1-1 2c7c/700/0
[000.055]: qusb_read_speed_atime speed: 480, st_atime: 20241201_21:44:51
[000.055]: P: /dev/bus/usb/001/011 idVendor=2c7c idProduct=0700
[000.055]: C: /dev/bus/usb/001/011 bNumInterfaces: 4
[000.055]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[000.055]: E: Ad=81 Atr=02 MxPS= 512 Ivl=0ms
[000.055]: E: Ad=01 Atr=02 MxPS= 512 Ivl=0ms
[000.055]: I: If#= 1 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[000.055]: E: Ad=82 Atr=02 MxPS= 512 Ivl=0ms
[000.055]: E: Ad=02 Atr=02 MxPS= 512 Ivl=0ms
[000.055]: I: If#= 2 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[000.055]: E: Ad=83 Atr=03 MxPS= 64 Ivl=5ms
[000.055]: E: Ad=84 Atr=02 MxPS= 512 Ivl=0ms
[000.055]: E: Ad=03 Atr=02 MxPS= 512 Ivl=0ms
[000.055]: I: If#= 3 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[000.055]: E: Ad=85 Atr=03 MxPS= 64 Ivl=5ms
[000.055]: E: Ad=86 Atr=02 MxPS= 512 Ivl=0ms
[000.055]: E: Ad=04 Atr=02 MxPS= 512 Ivl=0ms
[000.055]: tmp=/sys/bus/usb/devices/usb1/…/driver, driver=…/…/…/bus/pci/drivers/xhci_hcd
[000.055]: qusb_noblock_open port_name = /dev/ttyUSB0
[003.062]: poll_wait events=POLLIN msec=3000 timeout
[003.062]: qfirehose.c detect_and_judge_module_version 251 fail
[004.066]: poll_wait events=POLLIN msec=1000 timeout
[004.066]: switch to ‘Emergency download mode’
[004.071]: successful, wait module reboot
[005.084]: P: /dev/bus/usb/001/011 idVendor=2c7c idProduct=0700
[005.084]: C: /dev/bus/usb/001/011 bNumInterfaces: 4
[005.084]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[005.084]: E: Ad=81 Atr=02 MxPS= 512 Ivl=0ms
[005.084]: E: Ad=01 Atr=02 MxPS= 512 Ivl=0ms
[005.084]: I: If#= 1 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[005.084]: E: Ad=82 Atr=02 MxPS= 512 Ivl=0ms
[005.084]: E: Ad=02 Atr=02 MxPS= 512 Ivl=0ms
[005.084]: I: If#= 2 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[005.084]: E: Ad=83 Atr=03 MxPS= 64 Ivl=5ms
[005.084]: E: Ad=84 Atr=02 MxPS= 512 Ivl=0ms
[005.084]: E: Ad=03 Atr=02 MxPS= 512 Ivl=0ms
[005.084]: I: If#= 3 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[005.084]: E: Ad=85 Atr=03 MxPS= 64 Ivl=5ms
[005.084]: E: Ad=86 Atr=02 MxPS= 512 Ivl=0ms
[005.084]: E: Ad=04 Atr=02 MxPS= 512 Ivl=0ms
[005.084]: tmp=/sys/bus/usb/devices/usb1/…/driver, driver=…/…/…/bus/pci/drivers/xhci_hcd
[005.084]: qusb_noblock_open port_name = /dev/ttyUSB0
[007.885]: qusb_noblock_read read=0, errno: 0 (Success)
[007.885]: qusb_noblock_read cur=0, min_size=1
[007.885]: qfirehose.c detect_and_judge_module_version 251 fail
[007.885]: qusb_noblock_read read=0, errno: 0 (Success)
[007.885]: qusb_noblock_read cur=0, min_size=1
[007.885]: switch to ‘Emergency download mode’
[007.885]: qusb_noblock_write write=-1, errno: 5 (Input/output error)
[007.885]: qusb_noblock_write cur=0, min_size=7
[007.885]: qusb_noblock_read read=0, errno: 5 (Input/output error)
[007.885]: qusb_noblock_read cur=0, min_size=1
[008.891]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[009.894]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[010.895]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[011.898]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[012.900]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[013.900]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[014.903]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[015.924]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[016.924]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
^C

PS: I am running this under virtualbox 7.0 / Ubuntu 18.04.6 LTS

Thank you

I have send you the upgrade guide and If the firmware upgrade fails,then the log files MCU_remote.log.txt and Ubuntu_remote.log.txt under directory log in the tool package can be used to help failure analysis.

Hello

Thank you for the guide. It seems that the step 3 is no OK.
I do not see VID is 0x05c6 but see VID is 0x2c7c twice.
Device shuts down and communication is stopped.

Thank you.

[000.197]: Totals checking 40 files md5 value, 0 file fail!
[000.197]: find ‘prog_firehose_nand_mdm9x05.elf’
[000.197]: find_firehose_mbn prog_firehose_nand_mdm9x05.elf
[000.197]: [1] /sys/bus/usb/devices/1-1 2c7c/700/0
[000.197]: qusb_read_speed_atime speed: 480, st_atime: 20241202_10:58:01
[000.197]: P: /dev/bus/usb/001/002 idVendor=2c7c idProduct=0700
[000.197]: C: /dev/bus/usb/001/002 bNumInterfaces: 4
[000.197]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[000.197]: E: Ad=81 Atr=02 MxPS= 512 Ivl=0ms
[000.197]: E: Ad=01 Atr=02 MxPS= 512 Ivl=0ms
[000.197]: I: If#= 1 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[000.197]: E: Ad=82 Atr=02 MxPS= 512 Ivl=0ms
[000.197]: E: Ad=02 Atr=02 MxPS= 512 Ivl=0ms
[000.197]: I: If#= 2 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[000.198]: E: Ad=83 Atr=03 MxPS= 64 Ivl=5ms
[000.198]: E: Ad=84 Atr=02 MxPS= 512 Ivl=0ms
[000.198]: E: Ad=03 Atr=02 MxPS= 512 Ivl=0ms
[000.198]: I: If#= 3 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[000.198]: E: Ad=85 Atr=03 MxPS= 64 Ivl=5ms
[000.198]: E: Ad=86 Atr=02 MxPS= 512 Ivl=0ms
[000.198]: E: Ad=04 Atr=02 MxPS= 512 Ivl=0ms
[000.198]: tmp=/sys/bus/usb/devices/usb1/…/driver, driver=…/…/…/bus/pci/drivers/xhci_hcd
[000.198]: qusb_noblock_open port_name = /dev/ttyUSB0
[000.203]: old software version: BG95M3LAR02A03
[001.214]: poll_wait events=POLLIN msec=1000 timeout
[001.214]: switch to ‘Emergency download mode’
[001.218]: successful, wait module reboot
[002.238]: P: /dev/bus/usb/001/002 idVendor=2c7c idProduct=0700
[002.238]: C: /dev/bus/usb/001/002 bNumInterfaces: 4
[002.238]: I: If#= 0 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[002.238]: E: Ad=81 Atr=02 MxPS= 512 Ivl=0ms
[002.238]: E: Ad=01 Atr=02 MxPS= 512 Ivl=0ms
[002.238]: I: If#= 1 Alt= 0 #EPs= 2 Cls=ff Sub=ff Prot=ff
[002.238]: E: Ad=82 Atr=02 MxPS= 512 Ivl=0ms
[002.238]: E: Ad=02 Atr=02 MxPS= 512 Ivl=0ms
[002.238]: I: If#= 2 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[002.238]: E: Ad=83 Atr=03 MxPS= 64 Ivl=5ms
[002.238]: E: Ad=84 Atr=02 MxPS= 512 Ivl=0ms
[002.238]: E: Ad=03 Atr=02 MxPS= 512 Ivl=0ms
[002.238]: I: If#= 3 Alt= 0 #EPs= 3 Cls=ff Sub=ff Prot=ff
[002.238]: E: Ad=85 Atr=03 MxPS= 64 Ivl=5ms
[002.238]: E: Ad=86 Atr=02 MxPS= 512 Ivl=0ms
[002.238]: E: Ad=04 Atr=02 MxPS= 512 Ivl=0ms
[002.238]: tmp=/sys/bus/usb/devices/usb1/…/driver, driver=…/…/…/bus/pci/drivers/xhci_hcd
[002.239]: qusb_noblock_open port_name = /dev/ttyUSB0
[004.348]: qusb_noblock_read read=0, errno: 0 (Success)
[004.348]: qusb_noblock_read cur=0, min_size=1
[004.348]: switch to ‘Emergency download mode’
[004.348]: qusb_noblock_write write=-1, errno: 5 (Input/output error)
[004.348]: qusb_noblock_write cur=0, min_size=7
[004.348]: qusb_noblock_read read=0, errno: 5 (Input/output error)
[004.348]: qusb_noblock_read cur=0, min_size=1
[005.369]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[006.375]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[007.379]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)
[008.381]: fail to fopen /sys/bus/usb/devices/1-1/uevent, errno: 2 (No such file or directory)

If the device at 1-1 is not connected to the computer,the uevent file will not exist.Run the following command to see the list of USB devices and their corresponding paths:ls /sys/bus/usb/devices/.