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 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
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.
Workflow:
Signal Initiation by Target Devices
The target BLE device sends a signal that can be picked up by the BLE mesh network
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
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.
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.
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:
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.
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.
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.