Bluetooth SIG creates profile for BBC micro:bit

The Bluetooth SIG and Lancaster University have teamed up to create a custom Bluetooth LE profile for the BBC’s micro:bit educational microcontroller board.

Bluetooth SIG creates profile for BBC micro:bit

Martin Woolley, programme manager at Bluetooth SIG, created the profile and Dr Joe Finney coded it, along with the rest of micro:bit’s runtime, with his team at Lancaster.

Although it is their day job, micro:bit has become a labour-of-love for many developers. “The entire micro:bit project is an amazing collaboration and a lot of people have been doing a lot of weekends,” Woolley told Electronics Weekly.

A ‘profile’ is a description of data and control features available on a particular Bluetooth-enabled device. It includes how and where this information can be accessed.

Profiles are divided into ‘services’.

Micro:bit’s profile has the following services:

  • Accelerometer
  • Temperature
  • Magnetometer
  • LEDs
  • Push button
  • IO pins
  • Device information
  • Device firmware update (DFU)
  • Event service

The first six access peripherals on the micro:bit board.

Woolley explained the final three:

Device information, a standard Bluetooth service, allows data like serial number, model type and manufacturer to be read remotely, DFU allows over-air firmware updates – which will also be possible via USB on micro:bit, and event service is a way to either control programme flow in the device or for programme flow to create Bluetooth outputs.

As an example of an event service, he said, if a phone app needed to know that a micro:bit was over 30°C it could:

  • Via the temperature service, repeatedly read micro:bit’s temperature, then apply the threshold in the phone app.
  • Via the event service, tell the micro:bit to send a message when it went over 30°C, then wait for the message to arrive.

There are more micro:bit examples on Woolley’s Bluetooth blog.

Documentation for the profile will be made public by the BBC.

Woolley has created an example micro:bit app for Android phones, and it is believed something similar for iPhones is under development elsewhere.

Nordic Semiconductor provides the Bluetooth interface chip, a RF51822, which has an ARM Cortex-M0 core and runs the Bluetooth stack, also from Nordic.

Also on the board is a MKL26Z128VFM4, with a Cortex-M0+, which runs the USB interface.

Application code runs on the Nordic chip.

Leave a Reply

Your email address will not be published. Required fields are marked *