Update BG96 using Raspberry

Hi there, is it possible to update the BG96 firmware via Raspberry Raspbian? If so, how?


Yes, the BG96 modules FW can be updated using the Linux OS(including Raspberry Pi OS).
The QFirehose tool is required to accomplish the process. The guide is included with the tool.

The Firmware files are included in the Firmware tab of the product page.

Dear saeed, thank you very much for your response.
I downloaded QFirehose, compiled it and downloaded both firmware versions and unzipped them, too.
This is what I get:

pi@raspberrypi:~ $ ./qfirehose/QFirehose -f BG96MAR02A10M1G_01.013.01.013/
[000.000] QFirehose Version: Quectel_LTE&5G_QFirehose_Linux&Android_V1.2
[000.001] Builded: May 21 2021 21:27:22
[000.001] Find md5 check file <BG96MAR02A10M1G_01.013.01.013/md5.txt>
[000.001] Totals checking 0 files md5 value, 0 file fail!
[000.001] qfirehose.c system_ready 94 fail
[000.001] qfirehose.c main 194 fail
pi@raspberrypi:~ $

What am I doing wrong? I already replaced the backslashes in md5.txt with normal slashes as I am using Linux (not Windows), but same result. Also for the other firmware version.

Do you know what else I can try?

An update to QFirehose 1.3.2 also yields same results:

$ sudo qfirehose1.3/QFirehose -f BG96MAR02A10M1G_01.013.01.013
[000.000]: QFirehose Version: Quectel_LTE&5G_QFirehose_Linux&Android_V1.3.2
[000.000]: Builded: May 22 2021 20:29:03
[000.000]: Find md5 check file <BG96MAR02A10M1G_01.013.01.013/md5.txt>
[000.000]: Totals checking 0 files md5 value, 0 file fail!
[000.000]: qfirehose.c system_ready 122 fail
[000.000]: qfirehose.c main 294 fail
pi@raspberrypi:~ $


Let us check with the OEM for this error as the error description is not available.
Thank you

The issue is the old firmware version.

This is what we have learned.

BG96 old release doesn’t support firehose protocol. Please use QFLASH to upgrade the module.

For the firmware update, you should use the Windows host and QFlash tool.

Thank you very much again for the fast reply.

To connect the IoT HAT with Windows I need to connect it to a PC directly, correct? In the FAQ it says:

How can I use Cellular IoT HAT without stacking it on top of RPi and use it via USB?

To use the HAT Standalone, the [5V & VBUS](https://sixfab.com/wp-content/uploads/2020/12/Cellular-IoT-HAT-USB.jpg) needs to be shorted.

But I don’t know what “needs to be shorted” mean. Can you hint me to further information?

Yes, you will need to connect it to the Windows PC via USB. You will need the USB driver for the Windows PC here.

What is your current FW version of the module?

You can find the VBUS and the 5V on the HAT,

I’m really sorry, I honestly don’t know what to do with these pins. I never did much with embedded and can’t follow the instruction in the FAQ to “shorten” these pins. I tried googling it with no success. Do I need to solder a special kind of USB cable onto them?

The firmware version is BG96MAR02A07M1G_01.007.01.007.


You can solder a wire/jumper in these 2 points. The aim is to connect these pins together.