Compatible devices
Hardware devices
The following chart summarizes the various hardware devices supported by WHAD by running custom firmware:
Device |
BLE |
Dot15d4 |
ESB |
PHY |
Unifying |
---|---|---|---|---|---|
X |
X |
X |
X |
X |
|
X |
X |
X |
X |
X |
|
X |
|||||
X |
|||||
X |
Virtual devices
The following chart summarizes the various devices that are supported by WHAD through an adaptation layer:
Device |
BLE |
Dot15d4 |
ESB |
PHY |
Unifying |
---|---|---|---|---|---|
Bluetooth HCI adapter |
X |
||||
APIMote |
X |
||||
Bastille RFStorm |
X |
X |
X |
||
ATMEL RZUSBSTICK |
X |
||||
Yard Stick One |
X |
||||
Ubertooth One |
X |
Makerdiary nRF52840 MDK USB Dongle
The nRF52840 MDK USB Dongle is a nRF52-based development kit in the form of an USB stick. It is based on Nordic Semiconductor’s nRF52840 SoC that is fully compatible with WHAD.
Where to buy
The Makerdiary’s nRF52840 MDK USB Dongle is sold by Amazon, SeeedStudio, Tindie and Makerdiary (see their official purchase page). It costs around $22 USD.
Installing Butterfly firmware on an nRF52840 MDK dongle (UF2 Bootloader)
Follow this procedure to install a WHAD-compatible firmware on this device:
Download the latest version of Butterfly for nRF52840 MDK USB Dongle (UF2 file).
Push and hold the button and plug your dongle into the USB port of your computer. Release the button after your dongle is connected. The RGB LED turns green.
It will mount as a Mass Storage Device called UF2BOOT.
Access with a file explorer the new mass storage device and copy the firmware update file into it.
Replug your dongle to run the new firmware.
Nordic nRF52840 Dongle
Nordic nRF52840 dongle is pretty similar to Makerdiary’s nR52840 MDK dongle, and costs around $10 USD.
Where to buy
Nordic nRF52840 dongle can be purchased on various resellers websites as listed on Nordic nRF52840 website.
Installing Butterfly firmware on a Nordic nRF52840 Dongle
Follow this procedure to install a WHAD-compatible firmware on this device:
Download the latest version of Butterfly built for Nordic nRF52840 dongle (zip archive).
Download and install Nordic nrfutil on your computer (see below for specific instructions for ARM Linux)
Plug your Nordic nRF52840 dongle in your computer and press the RESET button (the one located close to the Nordic Semiconductor logo, it must be pushed horizontally).
Make sure a red LED blinks before continuing with next steps. If not retry step 3.
Execute the following command to upload the firmware into the dongle:
nrfutil dfu usb-serial -pkg butterfly-fwupgrade.zip -p SERIAL_PORT -b 115200
(replace SERIAL_PORT with your device serial port).
Building nrfutil for ARM Linux
On ARM Linux, we recommend using an old version of nrfutil that uses Python 2 (which is now deprecated). First, we need to install a set of packages required to build Python:
sudo apt install -y build-essential checkinstall libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev
Then download the required Python 2 archive from the Python website and build it:
wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tgz
tar -xvf Python-2.7.18.tgz
cd Python-2.7.18
./configure --enable-optimizations
make -j 10
Important
There will be SSL errors on test 142 through 248, just ignore them.
Last, install this compiled version of Python and nrfutil using pip:
sudo make install
curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
sudo python2.7 get-pip.py
pip2.7 install nrfutil
To launch nrfutil:
sudo -E python2.7 /home/user/.local/bin/nrfutil dfu usb-serial -pkg butterfly-fwupgrade.zip -p /dev/ttyACM0
SeeedStudio LoRa-e5-Mini
SeeedStudio LoRa-e5-Mini dongle is produced by SeeedStudio and its cost is really attractive. This dongle is based on SeeedStudio’s Wio-e5 module that relies on an STM32WLE5 system-on-chip.
Where to buy
SeeedStudio LoRa-e5-Mini are available for around $22 USD on SeeedStudio website.
Installing a WHAD-compatible firmware
Attention
This section will be completed pretty soon, firmware is available in our STM32WL dedicated repository
STM32WL55 Nucleo board
This board is a development board produced and sold by ST Microelectronics based on a STM32WL55 system-on-chip.
Where to buy
Directly on ST Microelectronics online store or its affiliates, for around $41 USD.
Installing a WHAD-compatible firmware
Attention
You must have the STM32 Cube Programmer installed on your machine to flash this firmware.
Download the latest version of our WHAD-compatible firmware from the [corresponding repository](https://github.com/whad-team/stm32wlxx-firmware/releases/latest) named
nucleo_wl55.hex
.Launch STM32 Cube Programmer, connect the Nucleo STM32WL55 board to your computer and click Connect.
Go to the programming/upload tab, select the
nucleo_wl55.hex
file previously downloaded and upload it to the board.
Espressif ESP32-WROOM
ESP32-WROOM is a development board designed by Espressif that includes a 240 Mhz capable dual-core CPU and WiFi and Bluetooth Low Energy capabilities. We developed a compatible firmware but it’s still experimental. It’s kinda working but needs some adjustments to be really stable, so expect some disconnections.
Where to buy
ESP32-WROOM are widely available, sold on Amazon or AliExpress for around $10 USD.
Install a WHAD-compatible firmware
Warning
We are currently reworking the source code of the ESP32 NodeMCU to make it use our C/C++ library and the latest version of our WHAD protocol. It will be updated here as soon as possible.