Bleah Linux Bluetooth Utility

There’s a new command line Python-based utility for Linux called Bleah that describes itself as a “BLE scanner for smart devices hacking”. Don’t let the ‘hacking’ part put you off – all it does is scan for devices and enumerate/use Bluetooth GATT Service much like the many apps for iOS and Android like Nordic nRF Connect. Nevertheless, it’s useful should you need to do these things from Linux rather than mobile apps.

If you use this utility (or mobile apps) you need to be aware that most Beacons are not connectable by default and most have password protected Bluetooth Services preventing you writing to them without having written the password to a specific Service. You will need to read the documentation for the beacon to determine how to make it connectable and to ascertain the default password.

Bluetooth Mesh Solution Choices

Although much of the Beacon related PR at the moment is centred around the availability of the Bluetooth SIG Mesh there are other mesh solutions some of which were referenced in our previous post.

Two other mesh solutions that are catching our eye at the moment are Wirepas and Fruitymesh because they provide more at the application level.

Wirepas provides for remote monitoring and configuration of beacons allowing you to set things such as advertisement interval, transmit power, used channels and the beacon payload. It also allows monitoring of beacon battery levels and firmware update. The mesh supports enhanced beacon security to protect against beacon spoofing and piggybacking.

Fruitymesh is open source software provided by M-Way Solutions GmbH in Germany. It allows you to configure beacon advertising, set up Bluetooth scanning, perform I/O and report beacon status, all via the mesh.

What sets these two solutions apart from the Bluetooth SIG mesh is that they are more optimised for use on battery powered devices.

We hope to be supplying beacons with Bluetooth SIG mesh, Wirepas and Fruitymesh in the near future as no one solution is suitable for all scenarios.

Read more about Bluetooth mesh on our web site.

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.

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.

The Use of Beacons in Smart Cities

There’s a recent paper by Gonzalo Cerruela García, Irene Luque Ruiz, and Miguel Ángel Gómez-Nieto of the University of Córdoba, Spain on State of the Art, Trends and Future of Bluetooth Low Energy, Near Field Communication and Visible Light Communication in the Development of Smart Cities (pdf)

The paper explains how technologies (NFC, BLE, VLC) will be important for the Internet of Things in smart cities and how they will need to be connected via LoRaWAN, Sigfox, Weightless, LTE, and 5G. With regard to Bluetooth LE they say:

Another challenge for the attention of BLE technology is the limited range problem; the range is directly dependent on Broadcasting Signal Power. An increase in signal power makes BLE devices less energy-efficient. Moreover it is necessary to improve accuracy in determining proximity to a BLE device.

The range problem will become less of an issue once Bluetooth 5 devices become available.

Can Beacons Be Used on Aircraft?

We have had enquiries whether beacons can be used on aircraft. While there’s no specific guidance on beacons from aviation authorities, beacons transmit the same radio signals to other Bluetooth devices such as the FitBit, Android Wear, Apple Watch and Bluetooth headphones. These devices are classed as Personal Electronic Devices (PED).

The use of PEDs depends on the airline. Both the FAA and EASA have guidelines for the use of PEDs. Smart Luggage is No Longer Allowed.