The BLEFriend module includes a special 'DFU' bootloader that allows you to update the firmware over the air using a compatible device (such as a recent iPhone or iPod or a BLE-enabled Android device running Android 4.3 or later).
The benefit of this bootloader is that you can reprogram the flash contents of the MCU without having to purchase a HW debugger, using nothing but your tablet or phone to update the flash memory contents of the BLEFriend.
In order to perform over the air field updates of the firmware on the nRF51822 based Bluefruit LE modules, you will need access to the following resources:
- A Bluetooth Low Energy enabled iOS device (iPad 3rd generation or later, iPhone 5 or later, or a recent iPod Touch) or a BLE enabled Android device (running Android 4.3 or higher, for example the Nexus 4, Nexus 5, and the Nexus 7 2013)
- The Bluefruit LE Connect app for Android (for Android devices)
- The Bluefruit LE Connect app for iOS (for iOS devices)
To update using your Android or iOS device, continue on to the appropriate page in this guide.
Performing firmware updates from within the Bluefruit LE Connect app will automatically cause the board to reset into DFU mode, but there may be situations where you need to force the device into DFU mode as well.
To force the device into DFU mode (to enable firmare updates on devices that are locked up from a bad Arduino sketch, for example) press and hold the DFU button when inserting the device if a button is available, or by setting hte DFU pin to GND when powering the device up (depending on the exact board you are using).
You will know that you are in DFU mode because the MODE LED will blink at a constant rate:
By default, the DFU code has a 5-minute timeout. After 5 minutes in DFU mode, the device will revert back to the normal user code if any user code is present on the device. To return back to DFU mode, you will need to hold down the DFU button and reset the device via a power cycle.
Once you're in DFU mode, continue on to the iOS or Android pages ahead.
Bluefruit LE Connect will automatically download the appropriate firmware image for you, but if you need direct access to them the latest Bluefruit LE firmware images are always available in our Github repo at https://github.com/adafruit/Adafruit_BluefruitLE_Firmware