- Breakout boards
This is an old revision of the document!
Please note: The current implementation of the bootloader/scripts are not 100% safe. If you upgrade you firmware, make sure that the script says “Verification succeded!” before you unplug the dongle. Other wise you risk “bricking” it (and then it has to be re-programmed via SPI).
Do not do development and flash you own firmware on the dongle without having access to hardware that makes SPI programming possible. If firmware that doesn't work is flashed on the dongle you will need to re-program it using SPI
The Crazyradio contains a USB bootloader that gives the possibility to upgrade the firmware without any external hardware (see warnings above).
Please note that you might have to exchange python with python2 if you distro uses python3.
First Crazyradio has to be rebooted in USB bootloader mode. To do so insert the dongle in the pc, open a terminal window and run the bootloader launcher:
> cd crazyradio-firmware > python usbtools/launchBootloader.py Launch bootloader . Bootloader started
After running this tool the Crazyradio dongle should have disappeared and a new device named nRF24LU1P-F32 BOOT LDR should appear.
To flash the firmware use the nrfbootload.py script:
> cd crazyradio-firmware > python usbtools/nrfbootload.py flash cradio-0.51.bin Found nRF24LU1 bootloader version 18.0 Flashing: Flashing 5771 bytes... Flashing done! Verifying: Reading cradio-0.51.bin... Reading 5771 bytes from the flash... Verification succeded!
Below is a short guide with step-by-step instructions on how to upgrade the Crazyradio with the latest firmware using the Bitcraze VM
> cd ~/projects/crazyradio-firmware > python usbtools/launchBootloader.py Launch bootloader . Bootloader started
> python usbtools/nrfbootload.py flash cradio-0.52.bin Found nRF24LU1 bootloader version 18.0 Flashing: Flashing 5771 bytes... Flashing done! Verifying: Reading cradio-0.52.bin... Reading 5766 bytes from the flash... Verification succeded!
Run the following command:
> lsusb -d 1915:7777 -v | grep bcdDevice
This should return the version (e.g. “0.52”).