Emanuele Giacomini∗, Francesco D’Alterio∗, Andrea Lacava∗, Francesca Cuomo∗
∗University of Rome “La Sapienza”, 00184, ITALY
Abstract - The introduction of new key features into the core specification of Bluetooth Low Energy (BLE) increased its potentialities, thus paving the way to the development of new networking paradigms. The ability for a single node to participate in more than a piconet and to assume both the role of master and slave makes it possible the formation of multihop networks that can be used in several emerging application scenarios. Additionally, the inherent low power consumption at the cost of contained throughput makes this technology appealing for Internet of Things (IoT), where power memory and capacity constrained devices exchange messages at relatively low data rates. In this paper, we devise a two layers BLE mesh-based networking paradigm obtained by generalizing Android BEMESH for hardware-independent sensor networks. Each node enforces a plug-and-play architecture which makes it able to autonomously switch between client and server role, discover and connect to existing scatternets and relay messages through them, making the network able to extend and self re-organize in a distributed fashion. To have our implementation ready for IoT systems we based it on the ESP32 off-the-shelf board. We describe both the implemented functions as well as some practical results proving the effectiveness of the framework in some tested configurations.
Clone the BLUES Repository first:
In Linux Terminal
git clone https://github.com/BE-Mesh/BLUES-esp32.git
cd BLUES-esp32/
Compile the project:
idf.py build
Once the compilation process ends, you can upload the compiled code inside the ESP32 board.
idf.py -p /dev/ttyUSBx flash
Replace ttyUSBx with the device on which the ESP32 is connected. Repeat the same process on all the required devices, then open the serial monitor of the connected ESP32 to display its routing table
idf.py -p /dev/ttyUSBx monitor
Replace ttyUSBx with the device on which the ESP32 is connected.
- Two or more ESP32 boards
- Download the ESP-IDF Official Development framework here