Bluetooth Smart Mesh Network – The next step for the Internet of Things.
A couple of years ago I sat at a conference listening to Robin Heydon of CSR explaining in his typical energetic ways how Bluetooth Smart differs from Bluetooth Classic. If you listened carefully enough you could hear the cogs in the brains of fellow engineers that had accompanied me to watch this conference grinding away with all the new and exciting possibilities that Bluetooth Smart holds.
Bluetooth Classic or, the Bluetooth that’s been around for a few years and we’ve grown to love is fantastic and does its job well, although it is a bit limited in places especially when it comes to more than just a single connection between two devices. This was one obvious downfall that Bluetooth Smart could fix due to the way it works.
So, what’s different? Well Bluetooth smart uses advertising packets, small packets of data that are indiscriminately broadcasted at a predefined interval. These packets contain some information about the device and anything else that you want to broadcast within a specified byte limitation. What’s more important to remember is these packets can be detected by any Bluetooth Smart Enabled device such as a mobile phone. You may have seen Apple’s use of this in their iBeacons.
It’s important that you don’t think Bluetooth Smart is a one trick pony, there is also a connection process that allows devices to connect and bond similar to Bluetooth Classic, but that’s not relevant here. The reason I say all of this is because with advertising you can get multiple devices acting as relays, to bounce data around from device to device, and so the mesh network was born.
The mesh network is CSR’s baby there’s no doubt about that, but the Bluetooth SIG are in the process of approving a mesh network specification and let’s face it, if its good enough for CSR, then its good enough for the SIG.
So how does it work; first of all there are three states that any device belonging to a mesh network can be: Source. Relay. Destination. Thankfully due to the intuitive names I don’t think I need to go into detail in what each mode does. The whole system works using advertising packets to transfer data from one device to another, however there is an exception to this rule; CSR know that not all mobile devices can advertise so this would effectively negate the use of mobile phones in the mesh network, oops!, not so good. So at the moment CSR have implemented a bridge mode that allows a connection and the connected device uses its ability to advertise to push the message into the mesh network.
Of course this raises a lot of questions, most of which CSR have addressed, for example within the advertising packets there are Group ID’s so that multiple groups can be formed within close proximity, device ID’s so the packets know where to go. And, if you’ve got packets of data bouncing around a network how do you know when they are valid or not? Well, they addressed this with Time-To-Live (TTL), each time a node passes the message on it decrements this counter, Genius! also let's not forget network keys and the MASP (Mesh Association Protocol) all to make this concept work.
I’m only really skimming the surface of what really makes up the mesh network and I would definitely recommend reading this if you are interested. We have implemented our version of mesh networking in the past and learned a lot along the way so we can definitely appreciate the skills involved in making this protocol a standard, well done CSR.
Bluetooth word and mark are © 2016 Bluetooth SIG, Inc. All rights reserved