Electronics
4 min read

Indoor Positioning System with BLE Mesh Network

Published on 
May 13, 2024
Written by
No items found.
Need help for your project?
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

This article offers an in-depth look at our latest project, a BLE Mesh Network system specifically designed for Bluetooth localization. The project utilizes advanced Bluetooth Low Energy (BLE) technology combined with mesh networking to enhance location tracking capabilities across various environments.

Understanding BLE

BLE, or Bluetooth Low Energy, is a power-conserving variant of traditional Bluetooth technology. It is engineered to provide substantial communication ranges while maintaining low energy consumption. This makes BLE an ideal choice for applications that require long battery life and moderate data transfer rates, such as IoT devices and location services.

Understanding Mesh Networks

Mesh Network Topology. Image Credit: Brian Innes

Mesh networks are a type of network topology where each node relays data for the network. All mesh nodes cooperate in the distribution of data in the network. This architecture provides high redundancy and reliability, making it suitable for coverage across extensive areas where maintaining constant connectivity is crucial.

Component Selection

  • batman-adv (Better Approach To Mobile Adhoc Networking Advanced): A routing protocol that allows nodes in a dynamic ad-hoc network to automatically establish and maintain routes to other nodes.
  • Alfred (Almighty Lightweight Fact Remote Exchange Daemon): A lightweight service for efficient data exchange that gathers and distributes data across the batman-adv network.
  • Redis: An in-memory data structure store used as a database, cache, and message broker, allowing us to store RSSI data swiftly and efficiently, enabling rapid access and processing needed for real-time location tracking.
  • Raspberry Pi 3B+:some text
    • Multiple units of Raspberry Pi 3B+ are deployed within the network, each serving as a node that collects RSSI data from nearby BLE devices.
    • One Raspberry Pi 3B+ is designated as the central gateway. This specific unit not only aggregates RSSI data from all nodes but also runs Redis and executes the localization algorithm.

System Design

Trilateration Localisation Method. Image Credit: ResearchGate

We aim to position BLE devices in our mesh network by analyzing the strength of the signals they emit by trilateration. The metric that we look at for signal strength is Received Signal Strength Indicator (RSSI), which measures the power present in received radio signals. RSSI from multiple nodes is gathered, which is then overlaid by an algorithm to determine where the devices are positioned in the plane.

Key Design Considerations

  • Real-time Response: Ensuring that the network responds dynamically to changes within the environment with minimal latency, as this positioning system will be utilized by NUS Innovation & Design Programme (iDP) students for diverse applications, including those in high-stakes environments.
  • Energy Efficiency: Implementing power-saving features inherent to BLE, optimizing battery life and operational efficiency as this system is intended to operate continuously.
  • Ease of Scaling: The modular design allows for easy expansion of the network, demonstrating the scalability of BLE mesh networks.

Network Setup

Our mesh network has a main node called the gateway, which manages all data transactions within the network, including aggregation, storage and processing. Users can also become part of the network by connecting as a node. This allows the user to retrieve data and information from the network and helps to improve network coverage and accuracy.

Overview of batman-adv mesh network. Image credit: Brian Innes

Workflow:

  1. Signal Initiation by Target Devices
    • The target BLE device sends a signal that can be picked up by the BLE mesh network
  2. Detection of RSSI Data
    • Nodes within the BLE mesh network capture and measure the RSSI of signals emanating from the target device
    • RSSI, serving as an indicator of the signal strength between the device and node, is essential for proximity determination but is subject to environmental influences such as physical obstructions
  3. Relay of RSSI data to the Gateway
    • After data capture, nodes transmit the accumulated RSSI data to a central gateway. 
    • This involves secure and optimized data transmission to minimize any risk of data loss or compromise, ensuring that the integrity and accuracy of the data are maintained.
  4. Data Storage and Algorithmic Processing at the Gateway
    • Upon receiving the transmitted data, the gateway stores the RSSI data in Redis, facilitating rapid data operations.
    • An algorithm is then executed to compute the relative position of the device within the mesh by trilateration.
    • The algorithm accounts for the inherent imprecision in RSSI measurements to ensure accuracy.
  5. Communication of the Target Device’s Location to the User
    • The calculated location can be conveyed to the user through an interface or application.

Future Development

Our team is committed to enhancing the capabilities of our BLE mesh network to better meet the evolving needs of our users. As part of our future development strategy, we are exploring several key upgrades:

  1. Integration of Ultra-Wideband (UWB) Technology: We are considering replacing Bluetooth with Ultra-Wideband technology to leverage its superior accuracy. UWB can significantly refine indoor device tracking, offering precision as fine as 10 to 30 centimeters, compared to the 2-3 meters accuracy typically achieved under optimal conditions with Bluetooth.
  2. Transition to a Local Area Network (LAN): To optimize our network infrastructure, we are evaluating the possibility of shifting from a mesh network to a Local Area Network (LAN). This change would allow us to utilize the existing network capabilities of our Innovation & Design Hub, potentially increasing data throughput and reducing complexity.
  3. Hardware Optimization with ESP32s: In an effort to enhance efficiency and cost-effectiveness, we are looking into replacing our current Raspberry Pi nodes with ESP32 microcontrollers. The ESP32s are not only more affordable but also offer better performance for scaling purposes, making them an ideal choice for expanding our network's reach and functionality.

If you are interested in learning more about this project, please do not hesitate to contact our Makers in Residence.