Bluetooth LE Friend USB - Custom Firmware Install

For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
dude3333
 
Posts: 12
Joined: Mon Jun 05, 2023 7:24 am

Bluetooth LE Friend USB - Custom Firmware Install

Post by dude3333 »

Hello,

I have purchased the Bluefruit LE Sniffer USB

I want to flash a custom firmware on it, but the sniffer doesn't show up on the Bluefruit Connect app
Attachments
image_2023-06-05_045124579.png
image_2023-06-05_045124579.png (49.51 KiB) Viewed 682 times

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by mikeysklar »

Take a look at this FAQ entry.

My Bluefruit LE device is stuck in DFU mode ... what can I do?

Despite the name this item walks you through DFU mode and flashing custom firmware.
If your device is stuck in DFU mode for some reason and the firmware was corrupted, you have several options.

First, try a factory reset by holding down the DFU button for about 10 seconds until the CONN LED starts flashing, then release the DFU button to perform a factory reset.

If this doesn't work, you may need to reflash your firmware starting from DFU mode, which can be done in one of the following ways:

Bluefruit LE Connect (Android)
Place the module in DFU mode (constant LED blinky)
Open Bluefruit LE Connect
Connect to the 'DfuTarg' device
Once connected, you will see a screen with some basic device information. Click the '...' in the top-right corner and select Firmware Updates
Click the Use Custom Firmware button
Select the appropriate .hex and .init files (copied from the Bluefruit LE Firmware repo) ... for the BLEFRIEND32 firmware version 0.6.7, this would be:
Hex File: blefriend32_s110_xxac_0_6_7_150917_blefriend32.hex
Init File: blefriend32_s110_xxac_0_6_7_150917_blefriend32_init.dat
Click Start Update
Unfortunately, the iOS app doesn't yet support custom firmware updates from DFU mode yet, but we will get this into the next release.

Nordic nRF Toolbox
You can also use Nordic's nRF Toolbox application to update the firmware using the OTA bootloader.

On Android:

Open nRF Toolbox (using the latest version)
Click the DFU icon
Click the Select File button
Select Application from the radio button list, then click OK
Find the appropriate .hex file (ex. 'blefriend32_s110_xxac_0_6_7_150917_blefriend32.hex')
When asked about the 'Init packet', indicate Yes, and select the appropriate *_init.dat file (for example: 'blefriend32_s110_xxac_0_6_7_150917_blefriend32_init.dat').
Click the Select Device button at the bottom of the main screen and find the DfuTarg device, clicking on it
Click the Upload button, which should now be enabled on the home screen
This will begin the DFU update process which should cause the firmware to be updated or restored on your Bluefruit LE module
On iOS:

Create a .zip file containing the .hex file and init.dat file that you will use for the firmware update. For example:
Rename 'blefriend32_s110_xxac_0_6_7_150917_blefriend32.hex' to application.hex
Rename 'blefriend32_s110_xxac_0_6_7_150917_blefriend32_init.dat' to application.dat
Upload the .zip file containing the application.hex and application.dat files to your iPhone using uTunes, as described here
Open the nRF Toolbox app (using the latest version)
Click the DFU icon
Click the Select File text label
Switch to User Files to see the .zip file you uploaded above
Select the .zip file (ex. blefriend32_065.zip)
On the main screen select Select File Type
Select application
On the main screen select SELECT DEVICE
Select DfuTarg
Click the Upload button which should now be enabled
This will begin the DFU process and your Bluefruit LE module will reset when the update is complete
If you get the normal 2 or 3 pulse blinky pattern, the update worked!
Adafruit_nRF51822_Flasher
As a last resort, if you have access to a Raspberry Pi, a Segger J-Link or a STLink/V2, you can also try manually reflashing the entire device, as described in the FAQ above, with further details on the Software Resources page.

User avatar
dude3333
 
Posts: 12
Joined: Mon Jun 05, 2023 7:24 am

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by dude3333 »

mikeysklar wrote: Mon Jun 05, 2023 4:31 pm Take a look at this FAQ entry.

My Bluefruit LE device is stuck in DFU mode ... what can I do?

Despite the name it walk you through DFU mode and flashing custom firmware.
If your device is stuck in DFU mode for some reason and the firmware was corrupted, you have several options.

First, try a factory reset by holding down the DFU button for about 10 seconds until the CONN LED starts flashing, then release the DFU button to perform a factory reset.

If this doesn't work, you may need to reflash your firmware starting from DFU mode, which can be done in one of the following ways:

Bluefruit LE Connect (Android)
Place the module in DFU mode (constant LED blinky)
Open Bluefruit LE Connect
Connect to the 'DfuTarg' device
Once connected, you will see a screen with some basic device information. Click the '...' in the top-right corner and select Firmware Updates
Click the Use Custom Firmware button
Select the appropriate .hex and .init files (copied from the Bluefruit LE Firmware repo) ... for the BLEFRIEND32 firmware version 0.6.7, this would be:
Hex File: blefriend32_s110_xxac_0_6_7_150917_blefriend32.hex
Init File: blefriend32_s110_xxac_0_6_7_150917_blefriend32_init.dat
Click Start Update
Unfortunately, the iOS app doesn't yet support custom firmware updates from DFU mode yet, but we will get this into the next release.

Nordic nRF Toolbox
You can also use Nordic's nRF Toolbox application to update the firmware using the OTA bootloader.

On Android:

Open nRF Toolbox (using the latest version)
Click the DFU icon
Click the Select File button
Select Application from the radio button list, then click OK
Find the appropriate .hex file (ex. 'blefriend32_s110_xxac_0_6_7_150917_blefriend32.hex')
When asked about the 'Init packet', indicate Yes, and select the appropriate *_init.dat file (for example: 'blefriend32_s110_xxac_0_6_7_150917_blefriend32_init.dat').
Click the Select Device button at the bottom of the main screen and find the DfuTarg device, clicking on it
Click the Upload button, which should now be enabled on the home screen
This will begin the DFU update process which should cause the firmware to be updated or restored on your Bluefruit LE module
On iOS:

Create a .zip file containing the .hex file and init.dat file that you will use for the firmware update. For example:
Rename 'blefriend32_s110_xxac_0_6_7_150917_blefriend32.hex' to application.hex
Rename 'blefriend32_s110_xxac_0_6_7_150917_blefriend32_init.dat' to application.dat
Upload the .zip file containing the application.hex and application.dat files to your iPhone using uTunes, as described here
Open the nRF Toolbox app (using the latest version)
Click the DFU icon
Click the Select File text label
Switch to User Files to see the .zip file you uploaded above
Select the .zip file (ex. blefriend32_065.zip)
On the main screen select Select File Type
Select application
On the main screen select SELECT DEVICE
Select DfuTarg
Click the Upload button which should now be enabled
This will begin the DFU process and your Bluefruit LE module will reset when the update is complete
If you get the normal 2 or 3 pulse blinky pattern, the update worked!
Adafruit_nRF51822_Flasher
As a last resort, if you have access to a Raspberry Pi, a Segger J-Link or a STLink/V2, you can also try manually reflashing the entire device, as described in the FAQ above, with further details on the Software Resources page.
Hello,
The device never shows up on the Bluefruit Connect app to be able to connect to. I am using the iOS app.
It is also not showing on the NRF Toolbox app.

Also, the LED is always rapidly blinking. Holding down the DFU button shows no change in the behavior of the LED

Edit: I have now booted up my android phone, and the device does not come up in the Bluefruit Connect app on Android either.

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by mikeysklar »

Does the 10-second hold to do a factory reset change behavior? Does anything appear during that process in Bluefruit Connect? It might have an unusual device name.
First, try a factory reset by holding down the DFU button for about 10 seconds until the CONN LED starts flashing, then release the DFU button to perform a factory reset.

User avatar
dude3333
 
Posts: 12
Joined: Mon Jun 05, 2023 7:24 am

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by dude3333 »

mikeysklar wrote: Tue Jun 06, 2023 4:10 pm Does the 10-second hold to do a factory reset change behavior? Does anything appear during that process in Bluefruit Connect? It might have an unusual device name.
First, try a factory reset by holding down the DFU button for about 10 seconds until the CONN LED starts flashing, then release the DFU button to perform a factory reset.
There's no change, but now that you mention it there are several devices that appear only as MAC addresses.
Do you know what the MAC address would start with for one of these?

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by mikeysklar »

The Adafruit Bluefruit LE Sniffer appears has some different behaviors than the Bluefruit LE Friend version. I hooked up my black v2 Sniffer (with SWD) and have the same situation that you have encountered. The device is not broadcasting BLE that my iPad can detect with the Bluefruit LE Connect or nRF Toolbox apps.

Take a look at this guide which is Sniffer specific.

Which model do you have is it the v1, v2 or v3?

User avatar
dude3333
 
Posts: 12
Joined: Mon Jun 05, 2023 7:24 am

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by dude3333 »

mikeysklar wrote: Wed Jun 07, 2023 6:34 pm The Adafruit Bluefruit LE Sniffer appears has some different behaviors than the Bluefruit LE Friend version. I hooked up my black v2 Sniffer (with SWD) and have the same situation that you have encountered. The device is not broadcasting BLE that my iPad can detect with the Bluefruit LE Connect or nRF Toolbox apps.

Take a look at this guide which is Sniffer specific.

Which model do you have is it the v1, v2 or v3?
It appears to be the v2
Attachments
ble-2.png
ble-2.png (484.7 KiB) Viewed 638 times

User avatar
adafruit2
 
Posts: 22111
Joined: Fri Mar 11, 2005 7:36 pm

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by adafruit2 »

the sniffer isnt running BLE DFU, its running the custom sniffer firmware - you would need to jlink new firmware on

User avatar
dude3333
 
Posts: 12
Joined: Mon Jun 05, 2023 7:24 am

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by dude3333 »

adafruit2 wrote: Thu Jun 08, 2023 10:51 am the sniffer isnt running BLE DFU, its running the custom sniffer firmware - you would need to jlink new firmware on
So how would I do that?
are the Jlink devices really 500 dollars?

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by mikeysklar »

Your Sniffer is the v3 model.

I have a v2 which is black and includes the jlink 10-pin SWD connector.
IMG_2023-6-8-115333.jpeg
IMG_2023-6-8-115333.jpeg (175.36 KiB) Viewed 626 times
You can pickup a j-link starting at $60.

Without the connector I don’t see an easy way to jlink new firmware onto the version you have.

Your best bet would be to use a Bluefruit LE Friend v3 which allows the OTA (over the air) updates.

User avatar
adafruit2
 
Posts: 22111
Joined: Fri Mar 11, 2005 7:36 pm

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by adafruit2 »

there's pads on the bottom, but yeah its not easy either way and requires a separate programmer

User avatar
dude3333
 
Posts: 12
Joined: Mon Jun 05, 2023 7:24 am

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by dude3333 »

mikeysklar wrote: Thu Jun 08, 2023 2:46 pm Your Sniffer is the v3 model.

I have a v2 which is black and includes the jlink 10-pin SWD connector.

IMG_2023-6-8-115333.jpeg

You can pickup a j-link starting at $60.

Without the connector I don’t see an easy way to jlink new firmware onto the version you have.

Your best bet would be to use a Bluefruit LE Friend v3 which allows the OTA (over the air) updates.
This v3 that you have linked which supports OTA updates is different than mine?

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by mikeysklar »

You have the Bluefruit LE Sniffer ADA# 2269, but it is the Bluefruit LE Friend ADA# 2267 that supports connecting to BLE apps and OTA updates. They are different products.

User avatar
dude3333
 
Posts: 12
Joined: Mon Jun 05, 2023 7:24 am

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by dude3333 »

mikeysklar wrote: Sat Jun 10, 2023 8:14 pm You have the Bluefruit LE Sniffer ADA# 2269, but it is the Bluefruit LE Friend ADA# 2267 that supports connecting to BLE apps and OTA updates. They are different products.
Hm ok.

So how can I use the one that I have with it's normal firmware?

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: Bluetooth LE Friend USB - Custom Firmware Install

Post by mikeysklar »

The only way to change the firmware on the Sniffer model is to use a JLINK programmer and connect to the SWDIO pads on the bottom side. This process is not recommended as it is not fully documented and possible to brick your unit.

Locked
Please be positive and constructive with your questions and comments.

Return to “Wireless: WiFi and Bluetooth”