Connect to WiFi Using Bluetooth iBeacons

There are a number of solutions and retail situations where beacons are used to connect the smartphone user to WiFi. How does this work?

Beacons only provide a known unique id for a place. An app on the smartphone sees that id and knows, usually via some central database, the WiFi connection settings. The app uses those settings to programmatically set up the WiFi connection.

There’s obviously a chicken and egg situation here as the app needs the WiFi connection (or cellular) to access the central database of beacon ids vs WiFi settings. The mechanism doesn’t work when cellular connections are slow, poor or the user, perhaps a tourist, has turned off roaming to save costs.

For more reliable operation of the mechanism, the app can choose to fetch and cache nearby/popular beacons vs WiFi combinations, ahead of time, when it does have Internet connectivity.

Bluetooth Mesh Succeeds Where Thread Failed

Thread is a low power wireless protocol that competes with Bluetooth Mesh. Particle who develop Thread have made a surprise announcement that they are discontinuing development of Particle Mesh.

Mesh networking, while a compelling technology, is extremely complex, and trying to make it just work with zero configuration for all customers in all environments just wasn’t feasible

Instead, they are going to concentrate on Bluetooth Low Energy support for local communications between devices.

To understand the rationale, take a read of Szymon Slupik’s blog on Crossing the Mesh Chasms. Szymon is the Chair Mesh Working Group at Bluetooth SIG and CEO of Silvair who use Bluetooth Mesh in lighting. In his blog he explains how his company previously tried and failed, 8 years ago, to create a routed, self-healing and IP-based mesh. Bluetooth mesh has none of these because different techniques need to be used in networks that have low bandwidth. Attempting routing, self-healing and ip protocols on top of a limited throughput network causes it to saturate and collapse if there’s any significant network traffic.

Instead, Bluetooth mesh has been designed to send the original message multiple time (default is three) instead of using acknowledgements*. Multiple paths are used instead of self-healing.

As the Thread announcement says, mesh networking is complex. This is as much so for Bluetooth as it is for Thread. The Bluetooth Mesh Specification has over 700 pages. As Szymon says, Bluetooth mesh as a technology is only part of a solution. Bluetooth mesh needs software to configure the mesh for specific usecases and provision/manage nodes.

Read about Beacons and the Bluetooth Mesh

* The mesh standard does allow for acknowledgements but, as has been our experience, using them in real-world scenarios floods the network with too much traffic.

Fielddrive for Event Checking and Visitor Tracking

Fielddrive provides machines to manage event visitor flows, providing fast checkin. They also supply the BEACONEX system where wearable beacons track the attendee journey throughout an event allowing show organisers to collect and analyse this data and learn about different aspects of the event.

For more information, visit the Fielddrive blog post What Are Benefits of Beacon Technology for Events?

We have added Fielddrive to the Beaconzone Solutions Directory.

Monitor – Presence Detection Reported via MQTT

There’s a new Linux script called Monitor that scans for the presence of beacons and other Bluetooth devices and reports to a MQTT server.

The mechanism doesn’t just scan for beacons. It combines name requests, anonymous advertisements and beacon advertisements to determine when to issue a name request to determine if a device is present and when to issue a name request to determine if a device is absent.

The author, Andrew J Freyer, provides instructions how to set up on a Raspberry Pi Zero W.

Parking System Using Beacons

Researchers at the University of Toronto and the University of Guelph, Canada, have a new paper on Smart Parking System Based on Bluetooth Low Energy Beacons with Particle Filtering (pdf).

The system uses an Android app and Gimbal Series 21 beacons advertising Eddystone.

The server side uses an RSSI path loss model, based on Bayesian filtering of RSSI, to improve the accuracy of location estimation.

The app provides facilities to register the user/vehicle, locate parking and charge the user based on the exact time used.

Movement Constraint-based Location Tracking

Researchers at the Pusan National University, Korea have a new paper on Applying Movement Constraints to BLE RSSI-Based Indoor Positioning for Extracting Valid Semantic Trajectories.

The received signal strength (RSSI) of beacons is often used to infer location. However, the RSSI is subject to reflection and blocking from walls, people and other obstacles causing the derived locations from the raw data to be ‘jumpy’. There are many ways to process the raw data, such as Hidden Markov Models, k-nearest neighbors and Deep Neural Networks (DNN) to obtain smoother trajectories.

The researchers use movement constraints and sliding-window aggregation to extract invalid trajectories and provide real-time semantic trajectories.

The paper shows the proposed movement constraint-based approach extracts valid trajectories that are comparable to the unconstrained and non-machine language approaches. This new approach is particularly suited to dynamic indoor environments where the reflection and blocking changes over time.

Bluetooth Technical Resources

Silicon Labs is a Bluetooth module manufacturer and solutions provider. Over the years they have created a large number of useful technical notes. They have just created a master list that allows easier access to the notes. Here are some that more general, less proprietary and not specific to Silicon Labs’ modules:

Bluetooth advertising data basics

Bluetooth Tx power settings

Throughput with Bluetooth Low Energy technology

Bluetooth advertising using manufacturer specific data

BLE Basics (master/slave, GATT client/server, data RX/TX)

Understanding the Bluetooth Connection Process

Bluetooth Mesh Training resources