Skip to content

ESP32 firmware to read and control EMS and Heatronic compatible equipment such as boilers, thermostats, solar modules, and heat pumps

License

Notifications You must be signed in to change notification settings

emsesp/EMS-ESP32

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EMS-ESP

Website Contribute Guides Discord Changelog

version release-date license Quality Gate Status Codacy Badge downloads chat

GitHub stars GitHub forks donate

EMS-ESP is an open-source firmware for the Espressif ESP32 microcontroller to communicate with EMS (Energy Management System) compatible equipment from manufacturers such as Bosch, Buderus, Nefit, Junkers, Worcester, Sieger, elm.leblanc and iVT.

It requires a small circuit to interface with the EMS bus which can be purchased from https://bbqkees-electronics.nl or custom built.

πŸ“¦Β  Key Features

  • Compatible with EMS, EMS+, EMS2, EMS Plus, Logamatic EMS, Junkers 2-wire, Heatronic 3 and 4
  • Supporting over 120 different EMS compatible devices such as thermostats, boilers, heat pumps, mixing units, solar modules, connect modules, ventilation units, switches and more
  • Easy to add external Temperature and Analog sensors that are attached to GPIO pins on the ESP32 board
  • A multi-user, multi-language web interface to change settings and monitor incoming data
  • A simple to use console, accessible via Serial/USB or Telnet for advanced operations and detailed monitoring
  • Native integration with Home Assistant, Domoticz, openHAB and Modbus
  • Easy setup and install with automatic updates
  • Simulation of remote thermostats
  • Localized in 11 languages, and customizable to rename any device or sensor
  • Extendable by adding own custom EMS entities
  • Expandable via adding user-built external modules
  • A powerful Scheduler to automate tasks and trigger events based data changes
  • A Notification service to alert you of important events

πŸš€Β  Installing

Head over to download.emsesp.org for instructions on how to install EMS-ESP. There is also further details on which boards are supported in this section of the documentation.

πŸ“‹Β  Documentation

Visit emsesp.org for more details on how to install and configure EMS-ESP. There is also a collection of Frequently Asked Questions and Troubleshooting tips with example customizations from the community.

πŸ’¬Β  Getting Support

To chat with the community reach out on our Discord Server.

If you find an issue or have a request, see here on how to submit a bug report or feature request.

πŸŽ₯Β  Live Demo

For a live demo go to demo.emsesp.org. Pick a language from the sign on page and log in with any username or password. Note not all features are operational as it's based on static data.

πŸ’–Β  Contributors

EMS-ESP is a project created by proddy and owned and maintained by both proddy and MichaelDvP with support from BBQKees Electronics.

If you like EMS-ESP, please give it a ✨ on GitHub, or even better fork it and contribute. You can also offer a small donation. This is an open-source project maintained by volunteers, and your support is greatly appreciated.

πŸ“’Β  Libraries used

  • esp8266-react by @rjwats for the core framework that provides the Web UI, which has been heavily modified
  • uuid-* from @nomis. The console, syslog, telnet and logging are based off these awesome open source libraries
  • ArduinoJson for all the JSON processing
  • espMqttClient for the MQTT client
  • ESPAsyncWebServer and AsyncTCP for the Web server and TCP backends, with custom modifications for performance

πŸ“œΒ  License

This program is licensed under GPL-3.0

Screenshots

Web Interface

Web Settings Web Status
Web Devices Web MQTT
Web Edit Web Log

Telnet Console

Console

Home Assistant

Home Assistant