Thursday, 23 August 2018

Bluetooth mesh developer workshop

Last night, on August 22nd 2018, I ran a Bluetooth mesh developer workshop, hosted by Skills Matter in London.

In truth, this was a pilot for when I run the same or a similar session at Bluetooth World in Santa Clara, in a few weeks time. I told the attendees they were guinea pigs in my evil experiment and happily, they were a good bunch with no particular problem with being likened to rodents.

Each attendee was given a free BBC micro:bit. This may have helped.

I ran through some basic theory to give each person the required foundational knowledge, focusing on "the essentials" from what is after all, a fairly big topic. I then illustrated some of the concepts with a live demonstration, involving a 66 node Bluetooth mesh network. It consisted of 64 BBC micro:bits, a nRF52 DK acting as a mesh proxy node and my laptop running a web application and using the Web Bluetooth APIs to communicate with the proxy and through it, the rest of the network. I'm happy to say it worked rather well, too!


After that, we turned our attention to the question of how firmware for Bluetooth mesh devices might be developed. I used the Zephyr RTOS as an example SDK which supports Bluetooth mesh and the class worked in teams towards having one micro:bit acting as a light switch, running the mesh generic onoff client model and another micro:bit acting as a node (maybe a light) which can be switched on or off through running the generic onoff server model.

Success!

I'd hoped we could get more coding done but my estimates of timing turned out to be a bit on the "optimistic" side. The positive side of this was that I had a great collection of people who asked question after question during the theory part, which I was really happy about.

The slides I used (with a few tweaks since yesterday) are here

A video of the entire workshop is here

Another which may be of interest:

Bluetooth mesh for Android developers

The official Bluetooth SIG web site has some great resources including presentation recordings but the one that budding mesh developers should download is the Bluetooth Mesh Study Guide which provides extensive hands on experience through a series of tutorials based around the Zephyr SDK.

A big thank you to my very nice guinea pigs and to Skills Matter for hosting!