OpenMQTTGateway is a free, open source automation project written in C++ and released under GPL-3.0. It has 4,095 GitHub stars, 905 forks and 48 open issues, and was last pushed 4 days ago. On this registry it ranks #31 of 54 tracked projects in Automation, with 5 head-to-head comparisons available.

What is OpenMQTTGateway?

What it is

OpenMQTTGateway is an open-source C++ gateway firmware for ESP8266 and ESP32 boards that connects local radio and sensor protocols to MQTT. It lives in the home-automation ecosystem and is associated with Home Assistant, OpenHAB, NodeRed, and AWS-IOT. The project aims to unify various technologies and protocols into a single firmware, reducing the need for multiple physical bridges.

The concrete problem it solves is fragmentation in small IoT setups. A user may have 433 MHz, 315 MHz, or 868 MHz radio devices, infrared transmitters and receivers, Bluetooth Low Energy sensors, beacons, plant sensors, scales, tire-pressure sensors, barbecue thermometers, or LoRa devices. Each may require its own hardware adapter or bridge. OpenMQTTGateway brings those inputs and outputs into MQTT topics, which makes them easier to route, display, or automate through compatible controllers and services.

Key capabilities

  • It runs on ESP8266 or ESP32 hardware, with Arduino and Arduino Uno also referenced.
  • It supports bidirectional 433 MHz, 315 MHz, and 868 MHz radio communication, so it can receive and transmit RF signals.
  • It includes infrared communications, allowing IR devices to be handled through the gateway.
  • It supports BLE and Bluetooth, including beacon detection and device families such as mi flora, mi jia, LYWSD02, LYWSD03MMC, Mi Scale, TPMS, and BBQ thermometer compatibility.
  • It supports LoRa, extending the gateway to another long-range radio technology.
  • It uses MQTT as the common protocol, and can be used with Home Assistant, OpenHAB, NodeRed, and AWS-IOT.

Who uses it and how

  • Home-automation users flash an ESP8266 or ESP32 board and use it as a single bridge for mixed radio, IR, BLE, and LoRa devices.
  • Sensor collectors use it to expose supported BLE sensors, thermometers, scales, plant sensors, beacons, tire-pressure sensors, and barbecue thermometers over MQTT.
  • RF and IR users use it to connect RF and IR devices to MQTT through the gateway.
  • Platform builders use it with Home Assistant, OpenHAB, NodeRed, or AWS-IOT to create dashboards, automations, or cloud-connected flows from local device data.

Getting started

The README points to a browser-based upload page for flashing a board without additional software, and to PlatformIO for building a custom configuration. The documentation also references a Getting Started guide and a reference sheet with functions and pinouts.

When to use it — and when not to

OpenMQTTGateway is a good fit for users who want one open-source firmware for ESP8266 or ESP32 hardware and are comfortable choosing boards, flashing firmware, and mapping MQTT topics. It is less suitable for users who want a ready-made product rather than firmware they configure themselves, because the README lists Theengs Bridge and Theengs Gateway as related products. The project has 48 open issues, so users should expect ongoing configuration and compatibility work.

project readme (upstream, from github) — read inline

Community forum

OpenMQTTGateway capabilities

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

New to OpenMQTTGateway? Follow the Getting Started guide to flash a board from your browser and see your first sensor data in about 15 minutes.

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, it helps keep the project healthy and evolving.

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 bridge view

Support the project by purchasing the Theengs bridge

Compatible items

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.

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:

Media

Theengs Plug

Theengs Plug video ElektroMaker

433Mhz and BLE

433Mhz and BLE gateway video by Andreas Spiess

BLE

BLE gateway video by Andreas Spiess

433Mhz

RTL_433 video by TECH MIND

LORA

LORA video by Priceless Toolkit

Frequently asked questions

Is OpenMQTTGateway free to use?

OpenMQTTGateway is open source under the GPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does OpenMQTTGateway do?

MQTT gateway for ESP8266 or ESP32 with bidirectional 433mhz/315mhz/868mhz, Infrared communications, BLE, Bluetooth, beacons detection, mi flora, mi jia, LYWSD02

What is OpenMQTTGateway written in?

OpenMQTTGateway is primarily written in C++. Its source is publicly available at https://github.com/1technophile/OpenMQTTGateway, and it has 4,095 GitHub stars.