Accéder au contenu principal

Low power ESP32 BLE gateway

For a few years now we are able to read BLE sensors with an ESP32. These sensors are advertizing their data with a one to many communication principle.

This type of BLE communication has the big advantage of being low power for the sensor, these BLE devices can last several months/years on a battery.

This is especially interesting with home automation or use cases that don't require a long-range communication. My test regarding BLE range gives outside around 60m/200ft with an LYWSD03MMC (a popular temperature and humidity sensor). That's enough to cover a house with one or a few gateways.

Where it could be difficult is when you want to have BLE sensors outside, so as to monitor your vegetable garden moisture, have some temperature sensors into your greenhouse or check that your garage/storage room door is closed. It may be difficult for the sensor to reach the BLE gateway inside and you may not have power outside. Also you may not want to invest into a communication technology with a bigger range like LORA.

In this case it could be relevant to have a gateway on a battery so as to behave as a range extender of your home automation network. The data would go this way:

BLE sensor -> BLEtoMQTT gateway Wifi on battery -> Wifi router

This way the gateway can be located at the limits of your wifi network so as to retrieve the BLE datas coming from the sensors that are out of reach of your inside BLE gateway.

But you may think that a gateway running on battery would be too much maintenance due to the necessary frequent battery recharge?

The answer is no, with the low power mode of OpenMQTTGateway, with a LOLIN ESP32 Lite configured to retrieve BLE data every 9 minutes you can easily reach one month of battery life with a 3.7V 3000mAh Lipo Battery.


How ? The gateway goes to deep sleep between the scans and reduces its current consumption to less than 100uA!


Low power measurement of the Lolin lite

The adequate platformio configuration can be found below:


You can notice several characteristics:

  • We don't use wifi manager, we use the wifi manual setup so as to save time during start
  • We don't connect to BLE sensors
  • We scan every 9 minutes 
  • The scans are passive scans
If you use Home Assistant the connectivity status will look like this, on which we can see the regular gateway connections, we can see also that the gateway is out of range of the wifi signal sometimes.

The Lolin board ran on the battery from March 19 2021 to May 8 !! 

So around 50 days without any external power supply.


Commentaires

Posts les plus consultés de ce blog

433toMQTTto433 - Bidirectional ESP8266 NodeMCU gateway between RF 433Mhz signal and MQTT

The goal  is to act as a gateway between 433Mhz sensors and a MQTT broker or between the MQTT broker and 433Mhz actuators, It enables to: receive MQTT data from a topic and send RF 433Mhz signal corresponding to the received MQTT data  publish MQTT data to a different topic related to received 433Mhz signal  It can be an interesting part in an home automation system so as to interface sensors and actuators (wall sockets) with software like openhab . List of compatible sensors here The interest of putting this gateway to an ESP8266 and not on a raspberry pi is to be able to manage security actions at gateway level (power on a siren, cut power to certain devices) following RF data received by sensors without being dependent to the PI for security related actions. [EDIT] all infos are now centralized into  the github repository  take a look at it you will find up to date info about OpenMQTTGateway You need: Software: Mosquitto Arduino IDE latest version (tested ok with 1.6.10

SONOFF RF BRIDGE + Pilight or How to extend the supported protocols by our little bridge

With version V0.9 of OpenMQTTGateway  @steadramon  &  @puuu  (the ESP library creator) enabled by their work to integrate Pilight library on OMG. Permiting to increase significantly the list of RF protocols of OMG . But now that we have this interesting possibility and with the goal of OMG of beiing multi boards compatible, why not trying to put Pilight on a Sonoff RF Bridge . So as to do this test I ordered a new one so as to be on the same hardware as most of the users (my other RF Bridge is a demonstration old one) So as to decode RF signals the Sonoff RF Bridge has a special dedicated chip (EFM8BB1)  that communicate with the esp8285 with a serial connection. If we want to increase the number of RF protocols compatibles on the device without modifying the hardware, the only software based solution is to hack the  EFM8BB1. This hack is available and made by @ Portisch . The list of protocol is interesting but at the moment not as big as Pilight one. Maybe I will t

Infrared IR, 433mhz and MQTT on ESP8266 bidirectional gateway OpenMQTTGateway

Following discussions on the home assistant forum people gave me the idea to add Infrared communication to the 433mhz gateway.  The goal is to act as a gateway between 433Mhz sensors, infrared remote controls and a MQTT broker or between the MQTT broker and 433Mhz actuators, infrared devices, It enables to: receive MQTT data from a topic and send RF 433Mhz signal corresponding to the received MQTT data  publish MQTT data to a different topic related to received 433Mhz signal  receive MQTT data from a topic and send infrared signal corresponding to the received MQTT data  publish MQTT data to a different topic related to received infrared signal  It can be an interesting part in an home automation system so as to interface sensors and actuators (wall sockets), your tv, home cinema, hifi ... with software like  openhab  or home assistant . List of compatible RF sensors here [EDIT] all infos are now centralized into the github repository  take a look at it you will find up to d