New Bluetooth LE Python Module

One of the difficulties of developing Beacon applications on (usually Linux) single single board computers (SBCs) is the difficulty in programming Bluetooth LE. We previously gave a few pointers.

To make things much easier, there’s a new pure Python module python-hcipy written using only the Python standard library for interacting with the Bluetooth HCI.

“The primary benefit of using this module is the lack of having any dependency on: PyBluez Python & C based module, the bluetoothd service or D-Bus; this module just uses the standard Python socket API.”

It currently supports BLE Adapter controller and querying, advertising, GATT Client (Central role),GATT Server (Peripheral role) and scanning.

Bluetooth Mesh Design and Implementation

Ericsson, who actively participated in the definition of the architecture and the development of the mesh profile specification, have a new article on Bluetooth mesh networking.

The article explains how the mesh network was designed and architected to provide for reliable throughput when there’s a large number of nodes. They also talk about a building automation usecase that they created to test the implementation.

Read more about Bluetooth mesh on our web site.

Analysing the Bluetooth LE 2.4GHz Spectrum

In most cases you can place your beacons and they ‘just work’. However, what if you suspect things aren’t working due to other devices using the same 2.4GHz radio spectrum? It’s possible to use specialist test equipment and spectrum analysers but these are very expensive.

A new, recent article by Mark Hughes describes Troubleshooting Tools for Your Next Bluetooth LE Project: Ubertooth and the Nordic nRF Sniffer.

It shows how to use inexpensive dongles on Mac, Linux, and Windows to intercept and analyse Bluetooth LE packets.

Nordic Beacons and the Bluetooth SIG Mesh

The same day we posted about the research paper on Bluetooth Mesh networks, the Bluetooth SIG happened to announce the public availability of their Bluetooth Mesh.

There are lots of marketing articles saying what will be possible and at the other end of the scale, mesh networking specifications that explain how it works. However, to implement these things, we need something in between marketing and specs that works with real hardware.

Today, there’s a new article on the Nordic InfoCenter blog that explains, in simpler terms, how the Bluetooth mesh works and introduces the Nordic SDK.

As we mentioned in our previous article, Bluetooth LE mesh networks tend to leave the application layer to the developer. This is so that mesh network can be used in many scenarios in many vertical industries. However, what’s particularly interesting with the Nordic SDK is that they have implemented some of the application level:

For beacons:

“We have therefore created a Beacon API as part of the Mesh SDK to do concurrent Beaconing and mesh networking”

Taking a look at the part of the SDK for beacons, there’s an API to define the device as a beacon with an advertising payload and advertising interval. The payload is up to the developer. While this falls short of defining APIs for the iBeacon and Eddystone beacon types, it provides a baseline for manufacturers and 3rd party solution providers such as ourselves to create new beacon products and solutions.

A Survey of Bluetooth Low Energy Mesh Networks

There’s a new research paper by Seyed Mahdi Darroudi and Carles Gomez of Department of Network Engineering, Universitat Politècnica de Catalunya, Castelldefels 08860, Spain on Bluetooth Low Energy Mesh Networks: A Survey (pdf).

It gives a consolidated view of mesh Bluetooth LE networks. It explains how Bluetooth LE was originally designed for a star network topology with limited range. While Bluetooth 5 increases the range, there are still scenarios that require longer range which can be solved by networking devices into a mesh. The paper covers current standard, academic and proprietary mesh networks and discusses the merits of flooding-based vs routing-based solutions.

One omission is FruityMesh that isn’t discussed in the paper. Another omission is discussion of battery/power use. One of the main features of Bluetooth LE is low power. This comes about because devices only transmit for about 1ms every period, where a period is typically 100ms to 1s. Once devices have to talk to each other, the transmission time goes up with a consequent increase of battery power. In practice, battery driven mesh networks end up having high latency and/or very low data throughput in order to conserve power.

Another consideration is what goes on top of Bluetooth LE mesh networks. The application layer is often left to the developer. For example, facilities to manage meshes of iBeacon/Eddystone beacons don’t exist. The application level ends up being proprietary and complex.

New EddystoneCMS

Some people want to use an Eddystone beacon to send out a message but they don’t have the technical ability or inclination to configure a URL shortener and set up a secure web page to serve the web address. We have also seen some customers having problems with public URL shorteners such as tiny.cc because when they are overloaded they take too long to respond, the Google Physical Web Proxy gives up and consequently the beacon doesn’t get detected.

Today, we announce EddystoneCMS, a new FREE site that creates a fast, short eddys.cc URL and a editable, secure (SSL) web page the title of which is used for the smartphone message making it easier, less expensive and more reliable than doing all this manually. The CMS creates a short URL that you put into the Eddystone beacon using the manufacturer app.

What’s more, EddystoneCMS also provides analytics and geographic information showing how many people have clicked on your beacon web address.

Signup

Beacon Range Insights

Beacons vary in their range. The smaller battery beacons tend to have smaller 30m to 50m ranges to make the most of battery life. Larger battery beacons tend to have ranges up to 100m. Then there’s longer range beacons with ranges over 150m.

One thing to understand is what can block signals. In our experience, when a signal gets blocked, there’s no point trying beacons with longer ranges in the hope they will push the signal through the physical obstructions. Longer range beacons only work long range when there is unobstructed line of sight.

Nordic Releases nRF52810

Nordic, who supply the System On a Chip (SoC) in many beacons, have recently released the nRF52810 SoC.

Nordic already offer the nRF52840 and nRF52832 but while these have been suitable for use in Bluetooth 5 beacons they are over-specified and hence too expensive for use in most beacons. The nRF52810 solves this problem by providing a reduced feature set that makes this SoC typically 25% less expensive. Nordic say:

“The nRF52810 represents the most accessible, single-chip Bluetooth 5 solution available on the market today.”

A post on the Nordic devzone explains the main differences between the nRF52810 and nRF52832. It’s mainly removal NFC and other peripherals that aren’t important for beacons.

The nRF52810 supports Bluetooth 5 high speed and advertising extensions but, interestingly, not long range. It’s expected that the removal of the redundant peripherals should also improve power and hence battery use.