* [BT] Default BLE AES key empty, skip decryption without a key Shipping a non-empty default key caused fresh installs to attempt decryption of every encrypted PVVX/BTHome v2/Victron advertisement with the placeholder string from User_config.h. Frames that didn't happen to share that key were silently dropped at the CCM auth step, masking otherwise-decodable devices (notably Victron MPPT) until users found and entered a per-MAC key. Initialise ble_aes[] to "" and treat an empty default as "no default configured" in the decryption path - mirroring Theengs Gateway, which has no default and skips frames whose MAC has no bindkey. Per-MAC keys in ble_aes_keys still take precedence; the BLE_AES macro remains as the WebUI placeholder hint. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * [BT] clang-format: move BLE_AES default comment above #define clang-format-9 rejected the trailing-comment continuation on the empty BLE_AES default line. Move the explanation to a leading // block above the #ifndef so the directive line is comment-free. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * [BT] Use THEENGS_LOG_TRACE for missing-AES-key skip log Previous commit referenced THEENGS_LOG_DEBUG, which OMG does not define (only VERBOSE/TRACE/NOTICE/WARNING/ERROR exist), breaking every BLE firmware build. Switch to THEENGS_LOG_TRACE — same level as the adjacent "Custom AES key" / "Default AES key" trace lines. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
OpenMQTTGateway aims to unify various technologies and protocols into a single firmware. This reduces the need for multiple physical bridges and streamlines diverse technologies under the widely-used MQTT protocol.
Sponsors
Documentation
The documentation is here
The reference sheet, with the list of all functions, pinouts is here
Upload
Upload OpenMQTTGateway directly from the upload page (no additional software required) or build your own configuration with PlatformIO.
Using OpenMQTTGateway ?
Support open-source development through sponsorship and gain exclusive access to our private forum. Your questions, issues, and feature requests will receive priority attention, plus you'll gain insider access to our roadmap.
Products powered by OpenMQTTGateway
Theengs Bridge, Bluetooth gateway (BLE) with external antenna
Theengs bridge is a powerfull BLE to MQTT gateway for over 100 sensors. Equipped with an Ethernet port, and external antenna, ensuring an enhanced range for your BLE sensors. It supports also WiFi connectivity.
Theengs Plug, Bluetooth gateway (BLE) gateway and Smart Plug
Theengs plug brings the following features:
- BLE to MQTT gateway, tens of Bluetooth devices supported thanks to Theengs Decoder library. The plug uses an ESP32 acting as a BLE to Wifi gateway to scan, decode and forward the data of the nearby sensors,
- Smart plug that can be controlled remotely,
- Energy consumption monitoring,
- Device tracker,
- Presence detection (beta),
- Local connectivity first.
Support the project by purchasing the Theengs bridge or the Theengs plug
Compatible items
-
List of supported devices, door/window sensors, PIR sensors, smoke detectors, weather stations...
-
List of compatible boards (Off the shelf or DIY) is available, RF Bridge, IR, BLE gateways...
Running on a computer If you want to use the BLE decoding capabilities of OpenMQTTGateway with a Raspberry Pi, Windows or Unix PC you can now leverage Theengs Gateway.
- List of compatible components to build your gateway, DHT, RF, IR emitters and receivers...
Compatible controllers, saas or software
Contributors ✨
Thanks goes to these wonderful people who helped OpenMQTTGateway on Github and to the users contributions into the community.
Support
For Questions or Support please don't open an issue, first go to the docs and if you don't find your answer there, you can post your question in the community forum
Help
If you like the project and/or used it please consider supporting it! It can be done in different ways:
- Helping other users in the community
- Contribute to the code or the documentation
- Buy devices, boards or parts from the compatible web site, the devices and parts linked use affiliated links.
- Donate or sponsor the project developers
- Make a video or a blog article about what you have done with OpenMQTTGateway and share it to the community
Media
- Hackaday - ARDUINO LIBRARY BRINGS RTL_433 TO THE ESP32
- CNX Software - 433 MHz is not dead! Using an ESP32 board with LoRa module to talk to 433 MHz sensors
- RTL_433 PORTED TO ESP32 MICROCONTROLLERS WITH CC1101 OR SX127X TRANSCEIVER CHIPS
- Using low-cost wireless sensors in the unlicensed bands
- SMART PLUG ESP32 OPENMQTTGATEWAY SERVING AS AN BLE MQTT GATEWAY AND A POWER METER








