Development of a Bluetooth LoRa Gateway Using ESP32

There’s new research on the Design and Implementation of a BLE Gateway Using ESP32 chipset (PDF). Bluetooth Low Energy (BLE) and Long Range (LoRa) are commonly used wireless technologies for IoT devices, useful for their low power use and long range respectively. The mixing of BLE and LoRa in a single gateway significantly improves the flexibility of IoT networks, providing efficient data gathering and transmission.

An affordable, flexible gateway was developed, combining the benefits of BLE and LoRa communication and taking advantage of the ESP32 microcontroller’s capabilities. This setup allows for effective data collection from BLE devices and transmits the consolidated data to an MQTT server or a LoRaWAN cloud.

An initial prototype was produced, which led to a customised solution based on a PCB.

Looking to the future, the author says there’s scope to improve the software and firmware further, optimising the algorithms, reducing power usage, and exploring additional features such as multiple communication protocol support or advanced security measures. Such advancements could offer a more adaptable and reliable solution for users’ wireless communication needs.

However, the necessity of refining this solution is questionable as there are existing solutions, such as the LW003-B LoRaWAN Probe, already available, that solve these issues and productise in a case.

Making an iBeacon Using ESP32

Circuit Digest has a new tutorial ESP32 based Bluetooth iBeacon. ESP32 is a small single board computer that can easily be programmed to do different tasks. Many ESP32 boards include Bluetooth so it’s possible to program them to be an iBeacon.

The article first explains how to detect beacons on Android using nRF Connect. This is similar to our post Testing if a Beacon is Working. There’s also a useful table that explains the different ranges for received signal strength (RSSI):

Creating your own beacons means you can customise the advertising and do other IoT-related things at the same. The downside is bare ESP32 boards aren’t as physically robust, easy to configure nor power friendly as a dedicated beacon.

View iBeacons

ESP32 iBeacon Advertising

There’s recent example code for the M5StickC, usable on almost any ESP32 device, that shows how to advertise iBeacon. The nice thing about this example is that it also shows the iBeacon parameters on the OLED display.

While adding iBeacon advertising to an ESP32 project can make sense, it’s often not the best choice if you only want advertising functionality. Stand alone beacons are more physically robust, use much less power and settings are configurable via ready-made apps rather than fixed in code.

Track Bluetooth Low Energy Devices Using ESP32

ESP32 are small, low cost Bluetooth/WiFi boards that can be programmed using Arduino IDE. Shogunxam has a project, ESP32 BLETracker that detects Bluetooth LE devices and sends the information to a MQTT server.

The software provides a web interface that allows setting of the devices to be tracked, the scan period, MQTT parameters and viewing of the logs.

The project is open source on GitHub.

View Bluetooth Gateways

Bluetooth LE Supported on Zerynth

There’s a growing number of operating systems for microcontrollers on single board computers, most of which can scan for Bluetooth LE devices such as beacons and connect to them via GATT for setup and extraction of data. Zerynth is now one such OS that you can program using Python.
Zerynth r2.2.0 update allows use of Bluetooth LE.

There’s a new article on Design Bluetooth BLE Applications in Python on ESP32 using Zerynth. The official documentation provides lots of examples.