This project implements a Bluetooth Mesh chat bridge using two ESP32 boards and a Python desktop client. Each ESP32 acts as a mesh relay node and a BLE GATT bridge — linking a laptop to the mesh network. The system allows message passing through the mesh (e.g., Laptop → ESP → ESP → Laptop) without requiring mesh logic on the PC.
- Each ESP32 runs a vendor-model mesh node.
- Messages from the GATT bridge (0xFFF2 Write) are published to a group address (0xC000).
- Received group messages are relayed to connected laptops via Notify (0xFFF1).
- An I²C LCD shows mesh activity
- Python desktop app scans and connects to nearby ESP32 bridges and sends/receives text messages through BLE.
-
Open the project in VS Code with ESP-IDF extension installed
-
Build ESP32 boards
idf.py build flash monitor
-
Open nRF Mesh mobile app.
-
Provision both ESP32 nodes.
-
Bind AppKey, enable Relay and Proxy, and set Group Address (0xC000) for publish/subscribe.
- Installed the dependencies using requirements.txt
- Run the app