BBC micro:bit
Although not a new board, the BBC micro:bit caught my attention when an interface to control the models built with fischertechnik was released at the Nuremberg Toy Fair 2019.
I ordered the micro:bit go bundle, which includes the board plus a USB cable, a battery holder and 2xAAA batteries. |
|
Hardware
The board is built around a NRF51822 Cortex-M0+ with BLE radio as main MCU, with an additional MKL26Z128 MCU for debugging.
One side contains all the components, including the 3-axis LSM303AGR magnetometer and accelerometer (previously provided by two distinct sensors, MAG3110 and MMA8653). As the components are exposed, a protective case is recommended against electrostatic discharge. |
The other side includes 25 LEDs and 2 users buttons, and a 25-pin connector, with 5 holes dedicated for 4 mm 'banana' plugs, 4 mm spring connectors or crocodile clip.
When connected, the board mounts as a drive, called either MICROBIT or MAINTENANCE. As the board was only appearing as MAINTENANCE, I had to reflash the firmware. |
Tools
The BBC micro:bit offers a wide range of tools and languages.
With an Android or iOS Tablet
The first category of tools runs on an Android or iOS tablet and leverages the Bluetooth connectivity, like the official BBC micro:bit app for Android or iOS.
Development is performed with the MakeCode Editor by Microsoft, with two options: Blocks and JavaScript. The executable is uploaded through over-the-air through Bluetooth., albeit rather slowly. |
|
Online Graphical Tools
Online tools include two solutions:
The executable is first downloaded from the website, and then either uploaded through USB or just copied into the MICROBIT volume that appears when the board is connected. |
|
The MakeCode Editor translates Blocks into JavaScript and back. Programs can be downloaded as .hex files and uploaded to another computer.
The MakeCode Editor offers two models for Blocks: procedure-based and event-driven. |
Offline Graphical Tools
Very similar to Blocks from the MakeCode Editor, microBlocks provides a graphical interface with blocks.
To run, microBlocks needs to upload a virtual machine on the board. It handles it automatically the first it tries to connect. Then microBlocks no longer requires an upload button: the application runs live on the BBC micro:bit board! |
|
Offline Text-Based IDEs
For text-based development, mbed and Arduino options are available.
To use micro:bit with the Arduino SDK and IDE, Sandeep Mistry has developed a nice Arduino-nRF5 board package, and a dedicated BLEPeripheral library for BLE. The Bluetooth stack, called SoftDevice and provided by Nordic, needs to be uploaded to the board first, and selected on the Tools menu when working with the board, here S110. Adafruit provides an extensive training micro:bit with Arduino. Just follow the procedure! Then external libraries are required. Adafruit lists various useful libraries: the Adafruit Microbit library and the Adafruit GFX library, and the dedicated BLEPeripheral library from the developer of the Arduino-nRF5 board package. The Arduino IDE uploads the executable through USB to the board. Finally, embedXcode, embedded computing on Xcode, supports the BBC micro:bit board with external debugging. |
Debugging
The BBC micro:bit boards even features debugging, with the dedicated MKL26Z128 MCU and the DAPlink protocol. Optionally, it can be flashed to support the Segger J-Link protocol.
The standard OpenOCD acts as a server for a GDB client. The test shown on the right was conducted with embedXcode using the default DAPlink protocol. |
Going Further
The BBC micro:bit enjoys a very large offer of additional boards.
Among other similar boards, the interface board by Didacta Advance allows to control fischertechnik models. The fischertechnik Starter Set for micro:bit was presented at the Hannover Toy Fair 2019, part of its Teaching range aimed at academia. I posted the review at Starter Set for micro:bit. |
Conclusion
I really like The BBC micro:bit board with its wide range of sensors.
The graphical development tools brings a smooth introduction to programming, with an extensive offer of tutorials. At less than €20, the board is aggressively priced and brings great value, even for more serious projects thanks to its integrated hardware debugger. The review of the interface for the fischertechnik models is available at Starter Set for micro:bit. |
Pros
|
Cons
|
Wrap-Up
|
Links
|
Posted: 05 February 2019
Edited: 11 February 2019