BBC micro:bit¶
Support for the BBC micro:bit.
Overview¶
The micro:bit was designed by the BBC and released in 2015. The boards was distributed to all 11-12 year old children throughout the UK.
The board is based on the Nordic nRF51822 SoC, featuring 16Kb of RAM, 256Kb of ROM, and a 2.4GHz radio, that supports Bluetooth Low Energy (BLE) as well as a Nordic proprietary radio mode.
Additionally the boards features 2 buttons, a 5x5 LED matrix, a MAG3110 3-axis magnetometer, and a MMA8653 3-axis accelerometer.
Hardware¶
MCU | NRF51822QFAA |
---|---|
Family | ARM Cortex-M0 |
Vendor | Nordic Semiconductor |
RAM | 16Kb |
Flash | 256Kb |
Frequency | 16MHz |
FPU | no |
Timers | 3 (2x 16-bit, 1x 32-bit [TIMER0]) |
ADCs | 1x 10-bit (8 channels) |
UARTs | 1 |
SPIs | 2 |
I2Cs | 2 |
Vcc | 1.8V - 3.6V |
Reference Manual | Reference Manual |
Flashing and Debugging¶
There are two possibilities to flash the board: using the default ARM DAPLink or you can flash the board using Segger’s JLink.
DAPLink¶
The DAPLink interface is the default way to flash the board and works out of the box. When you plug the board to your host computer, it shows up as a flash drive. To flash the board, you can simply copy your compiled .hex
file onto the board, and thats it.
The micro:bit
port comes with a little script that does this automatically, so you can flash the board as usual with
1 2 | bash
make flash
|
The DAPLink interface provides however not means for debugging the board.
JLink¶
Recently, Segger released a JLink firmware for the interface MCU on the micro:bit
. You have to follow these instructions to flash the JLink firmware on your micro:bit
. Don’t worry, the process is very simple and you can revert the firmware back to the DAPLink default anytime (as described here).
Once you have flashed the JLink firmware, you can flash the board like this:
1 2 | bash
FLASHTOOL=jlink make flash
|
With the JLink firmware, you can now also do in-circuit debugging etc.
Note: The current version of the JLink firmware (JLink_OB_BBC_microbit_16-07-29.hex) does not support any serial port over USB, so you can not use the RIOT shell with this firmware.**
DAPLink¶
The DAPLink interface is the default way to flash the board and works out of the box. When you plug the board to your host computer, it shows up as a flash drive. To flash the board, you can simply copy your compiled .hex
file onto the board, and thats it.
The micro:bit
port comes with a little script that does this automatically, so you can flash the board as usual with
1 2 | bash
make flash
|
The DAPLink interface provides however not means for debugging the board.
JLink¶
Recently, Segger released a JLink firmware for the interface MCU on the micro:bit
. You have to follow these instructions to flash the JLink firmware on your micro:bit
. Don’t worry, the process is very simple and you can revert the firmware back to the DAPLink default anytime (as described here).
Once you have flashed the JLink firmware, you can flash the board like this:
1 2 | bash
FLASHTOOL=jlink make flash
|
With the JLink firmware, you can now also do in-circuit debugging etc.
Note: The current version of the JLink firmware (JLink_OB_BBC_microbit_16-07-29.hex) does not support any serial port over USB, so you can not use the RIOT shell with this firmware.**