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

Overview

logo

EMS-ESP is an open-source firmware for the Espressif ESP8266 and ESP32 microcontroller that communicates with EMS (Energy Management System) based equipment from manufacturers like Bosch, Buderus, Nefit, Junkers, Worcester and Sieger.

This is the firmware for the ESP32. Compared to version 2 on the ESP8266, this version has

  • Ethernet Support
  • Pre-configured board layouts
  • Writing values directly from the Web UI
  • Mock API server for faster offline development
  • Expose to more commands, via MQTT
  • Improvements to Dallas sensors, Shower service

version release-date license Codacy Badge downloads Average time to resolve an issue Percentage of issues still open
chat

If you like EMS-ESP, please give it a star, or fork it and contribute!

GitHub stars GitHub forks donate

Note, EMS-ESP requires a small hardware circuit that can convert the EMS bus data to be read by the microcontroller. These can be ordered at https://bbqkees-electronics.nl.


Features

  • Compatible with both ESP8266 and ESP32
  • A multi-user secure web interface to change settings and monitor the data
  • A console, accessible via Serial and Telnet for more monitoring
  • Native support for Home Assistant via MQTT Discovery
  • Can run standalone as an independent WiFi Access Point or join an existing WiFi network
  • Easy first-time configuration via a web Captive Portal
  • Support for more than 70 EMS devices (boilers, thermostats, solar modules, mixer modules, heat pumps, gateways)

Screenshots

Web Interface:

Telnet Console:

In Home Assistant:

Installing

Refer to the official documentation to how to install the firmware and configure it. The documentation is being constantly updated as new features and settings are added.

You can choose to use an pre-built firmware image or compile the code yourself:

Support Information

If you're looking for support on EMS-ESP there are some options available:

Documentation

Support Community

  • Discord Server: For support, troubleshooting and general questions. You have better chances to get fast answers from members of the community
  • Search in Issues: You might find an answer to your question by searching current or closed issues

Developer's Community

  • Bug Report: For reporting Bugs
  • Feature Request: For requesting features/functions
  • Troubleshooting: As a last resort, you can open new Troubleshooting & Question issue on GitHub if the solution could not be found using the other channels. Just remember: the more info you provide the more chances you'll have to get an accurate answer

Contributing

You can contribute to EMS-ESP by

  • providing Pull Requests (Features, Fixes, suggestions)
  • testing new released features and report issues on your EMS equipment
  • contributing to missing Documentation

Credits

A shout out to the people helping EMS-ESP get to where it is today...

  • @MichaelDvP for all his amazing contributions and patience. Specifically for the improved uart library, thermostat and mixer logic.
  • @BBQKees for his endless testing and building the awesome circuit boards
  • @rjwats for his esp8266-react framework that provides the new Web UI
  • @nomis for his core console, telnet and syslog core libraries
  • plus everyone else providing suggestions, PRs and the odd donation that keeps this project open source. Thanks!

License

This program is licensed under GPL-3.0

Comments
  • ems-esp is rebooting twice a day

    ems-esp is rebooting twice a day

    @proddy Hi Paul, I recognized that my ESP32 gateway is rebooting approx. after 11-12 hours. I can't see any reason why. Free memory is not the problem. Could it be that having http get requests per device every 15 sec per api is initiating the rebooting after a while?

    It's not a major issue for me. I just miss some data for approx 90 secs because of my 60 tx-delay on startup. Could I help to resolve this problem?

    bug 
    opened by tp1de 103
  • Multi-language/I18n support

    Multi-language/I18n support

    Support multi-locale for Telnet console commands, MQTT, SysLog messages and the Web. Since there is not enough memory to hold all the translations it will have to be different builds (DE, NL, UK). String literals will be stored in translation files and built at compile time.

    @MichaelDvP @bbqkees what you vote for this feature?

    enhancement 
    opened by proddy 84
  •  nervous modulation

    nervous modulation

    Hi,

    Running

    • BUDERUS Logamax plus GB192iT40
    • BOSCH RC310 thermostaat
    • BUDERUS Gateway Logamatic web KM100
    • BBQkees Gateway Premium II
    • ems-esp v2.1.1b7

    I noticed a very nervous behavior of the power consumption: With good modulation I would expect more cures like (1) and not sequences like (2) 2020-12-08_22-13-33

    or, some more recent graphs: 2020-12-09_17-04-38

    As you can see: (1) are the points where my automatic schedule of the thermostat starts, but no idea why (2) is such a strange behaviour.

    Has this something to do with the boiler, or is it a problem of communication between ems-esp and the ems-bus? Can someone share some experiences with this?

    kind regards, Bart Plessers

    opened by bartplessers 61
  • ESP32 uart handling

    ESP32 uart handling

    Question Do you have an implementation for ESP32 uart handling? Currently I am only interested in receiving. Unfortunately I have to ESP32 because it also servers other purposes.

    Additional context I have seen another question in Q&A (May 2019) where you stated that you aren't happy with your current ESP32 implementation - I hope now for some new status (especially if receiving only is relevant)...

    enhancement 
    opened by ArwedL 61
  • Problem with system with more than 4 mixers.

    Problem with system with more than 4 mixers.

    Good afternoon.

    My heating system has the following equipment:

    1. 1 x Junkers CerapurMaxx ZBR 100-3
    2. 1 x Gateway MB LAN 2
    3. 1 x CW400 Thermostat
    4. 7 x MM100 Mixing modules

    I use 5 MM100 modules for heating, 1 MM100 module for hot water and 1 MM100 module for heating the pool. If I control the system via the Thermostat CW400, then everything works fine for me. Now I decided to connect the heating system to the Home Assistant via MQTT and I bought BBQKees Gateway E32. I can see all my equipment perfectly in the EMS-ESP web interface, but there is one problem. Mixer with 1-4 are shown as h1-h4, 5 becomes wwc1 Mixer, Mixer 6 becomes wwc2, but the mixer 7 (id8 for hot water) is wwc1!!! Thus in EMS-ESP got two mixer wwc1, MQTT and considers them as one and constantly reads the information for sensors from one to the other mixer!!! Is it possible to rename the mixer so that they are displayed correctly via MQTT? Is it possible, if there are more than 4 mixers in the system, then, for example, mixers 1-8 should be assigned the values h1-h8, and mixers 9 - wwc1, 10 - wwc2 (for CW800 users, for example)?

    enhancement 
    opened by Shmul1 49
  • Adopt the OpenAPI 3.0 standard for the REST API

    Adopt the OpenAPI 3.0 standard for the REST API

    The current REST API is a bit sloppy and inconsistent. I'd like to use an industry standard for interfacing with EMS-ESP with these requirements in mind:

    • it's secure. Using Access Tokens for commands and eventually HTTPS with self-signed certificates
    • it's readable and easy to understand and adapt, with the specification publically available on Postman
    • Return responses make sense
    • it could possibly be used to replace MQTT when interfacing with home automation systems, like Home Assistant

    I picked OpenAPI, but also looked at RAML and JsonAPI.

    I'll be using the branch ft_https for implementation

    enhancement 
    opened by proddy 49
  • Debugging missing data in ems-esp with help of km200 with use of API and Syslog

    Debugging missing data in ems-esp with help of km200 with use of API and Syslog

    Since I am using ems-esp and km200 in parallel, I ask myself what would be the most efficient / elegant way to debug missing fields in ems-esp while triggering changes on km200.

    My idea would be: Within a javascript code writing changes to km200 and analyzing the respective telegrams by "filtering the right ones" out of syslog.

    What do you think or what would be the easiest way to identify the right telegram types and content.

    question 
    opened by tp1de 46
  • How to add new values into code?

    How to add new values into code?

    I would like to add new values / entities into the code. From Discord I got from @MichaelDvP the following introduction:

    There is a guide "contributing.md" how to make the PR, but for the code structure you have to read the code. It's mostly selfexplaining.

    Start with reading a simple device like switch.cpp to see the registertelegram() with it's callback process(telegramname). In the callback the value is read by has_update(..) and publishing the value is handled by the register _device_value().
    That's neary all to do.

    In thermostat for hc dependend telegrams you have to add a check in heatingcircuit(telegram).

    question 
    opened by tp1de 45
  • (ESP32) refactor device value rendering

    (ESP32) refactor device value rendering

    there's a lot of code duplication in the device libraries so I'm working through to clean up the code, moving functions back to the base class. One of the changes is in the way the device information is printed to the shell which is very similar to how we create the data to send to the web. I propose

    • have one method to form a structured json document with the key/value pairs
    • use this method for both web and console
    • remove the n= v= elements from the json object as this creates a lot of unnecessary memory. Just use a sequenced list of values as pairs, e.g. n1, v2, n2, v2....

    I've tested with Boiler with good results so far.

    enhancement 
    opened by proddy 44
  • High RX Fail count and frequent restarts

    High RX Fail count and frequent restarts

    Bug description Unit is showing high RX Fail count and frequent restarts - raised at request of @proddy after discussion on Discord.

    Steps to reproduce Run the EMS-ESP32 and look at data in HA, telnet or web interface.

    Expected behavior Few RX Fails and stable operation.

    Screenshots image image image

    Device information

      |   -- | -- System |   version | "3.2.2b10" uptime | "000+04:51:32.053" uptime_sec | 17492 freemem | 129 Status |   bus | "connected" bus protocol | "HT3" telegrams received | 17581 read requests sent | 193 write requests sent | 0 incomplete telegrams | 3569 tx fails | 0 rx line quality | 80 tx line quality | 100 MQTT publishes | 22530 MQTT publish fails | 0 dallas sensors | 1 dallas reads | 3496 dallas fails | 1 Devices |   0 |   type | "Boiler" name | "Worcester Logamax Plus/GB192/Condens GC9000 (DeviceID:0x08 ProductID:208, Version:01.01)" handlers | "0x10 0x11 0xC2 0x14 0x15 0x1C 0x18 0x19 0x1A 0x35 0x16 0x33 0x34 0x26 0x2A 0xD1 0xE3 0xE4 0xE5 0xE6 0xE9 0xEA" 1 |   type | "Thermostat" name | "RC300/RC310/Moduline 3000/1010H/CW400/Sense II (DeviceID:0x10, ProductID:158, Version:33.03)" handlers | "0xA3 0x06 0xA2 0x12 0x2A5 0x2B9 0x2AF 0x29B 0x471 0x2A6 0x2BA 0x2B0 0x29C 0x472 0x2A7 0x2BB 0x2B1 0x29D 0x473 0x2A8 0x2BC 0x2B2 0x29E 0x474 0x2F5 0x31B 0x31D 0x31E 0x23A 0x267 0x240" 2 |   type | "Controller" name | "ErP (DeviceID:0x09, ProductID:209, Version:01.03)"

    Additional context Device is connected to boiler service jack. Not clear yet whether this is hardware or software problem (or both!!)

    help wanted 
    opened by glitter-ball 42
  • Improvements to the API

    Improvements to the API

    As reported from @tp1de

    While using rest api the return values from info command per device returns json on data fields with description and not with names of data fields. Is there any reason why not returning the field names? By the way when using the id return json is different and contains datafield names: eg mixer http://ems-esp/api?device=mixer&cmd=info vs http://ems-esp/api?device=mixer&id=2&cmd=info: {"(hc2) setpoint flow temperature":27,"(hc2) flow temperature in assigned hc (TC1)":29,"(hc2) pump status in assigned hc (PC1)":"on","(hc2) mixing valve actuator in assigned hc (VC1)":5} {"id":160,"flowsettemp":27,"flowtemphc":29,"pumpstatus":1,"valvestatus":5}

    Two things to do here:

    • fix the formatting if an id or hc is provided in the URL
    • decide whether to use verbose or short names
    enhancement 
    opened by proddy 42
  • Changing a value works at first, but is then reset to it's original value

    Changing a value works at first, but is then reset to it's original value

    Bug description I'm using home assistant & node red to set mode and temp, and every couple of days, i'm not able to set the mode and temp anymore. If i change the mode from ex day to auto, it changes back to day after a second delay. Wen i'm using the webbrowser to write the command, i get the error: write command failed.

    Only thing that helps is to restart the ems in the webbrowser. Then i can set the temp and mode as i wish.

    I've already tried the fix with sending 0 to boiler/selflowtemp every few seconds, but the system does not respond. Heatingactivated is set to on, and i can't write to this command.

    I'm on ems V3.4.4

    After restart ems in browser All just works, see log

    2022-11-23 16:46:40.233 D 636: [mqtt] Publishing topic homeassistant/sensor/ems-esp/boiler_wwstarts/config (#280, retain=1, retry=1, size=244, pid=1) 2022-11-23 16:46:40.334 D 637: [mqtt] Publishing topic homeassistant/sensor/ems-esp/boiler_wwworkm/config (#281, retain=1, retry=1, size=283, pid=1) 2022-11-23 16:46:40.435 D 638: [mqtt] Publishing topic ems-esp/boiler_data_ww (#282, retain=0, retry=1, size=484, pid=1) 2022-11-23 16:46:40.536 D 639: [mqtt] Publishing topic ems-esp/boiler_data (#283, retain=0, retry=1, size=643, pid=1) 2022-11-23 16:46:40.576 D 640: [telegram] Sending read Tx [#45], telegram: 0B 98 12 00 1B 2022-11-23 16:46:40.637 D 641: [mqtt] Publishing topic ems-esp/thermostat_data (#284, retain=0, retry=1, size=1493, pid=1) 2022-11-23 16:46:40.672 D 642: [emsesp] Last Tx read successful 2022-11-23 16:46:40.672 D 643: [emsesp] This telegram (RCErrorMessage) is not recognized by the EMS bus 2022-11-23 16:46:40.672 D 644: [emsesp] No telegram type handler found for ID 0x12 (src 0x18) 2022-11-23 16:46:40.738 D 645: [mqtt] Publishing topic homeassistant/sensor/ems-esp/thermostat_lastcode/config (#285, retain=1, retry=1, size=215, pid=1) 2022-11-23 16:46:40.839 D 646: [mqtt] Publishing topic homeassistant/number/ems-esp/thermostat_intoffset/config (#286, retain=1, retry=1, size=362, pid=1) 2022-11-23 16:46:40.940 D 647: [mqtt] Publishing topic homeassistant/number/ems-esp/thermostat_minexttemp/config (#287, retain=1, retry=1, size=371, pid=1) 2022-11-23 16:46:41.041 D 648: [mqtt] Publishing topic homeassistant/switch/ems-esp/thermostat_damping/config (#288, retain=1, retry=1, size=342, pid=1) 2022-11-23 16:46:41.076 D 649: [telegram] Sending read Tx [#46], telegram: 0B 98 A2 00 1B 2022-11-23 16:46:41.142 D 650: [mqtt] Publishing topic homeassistant/select/ems-esp/thermostat_building/config (#289, retain=1, retry=1, size=288, pid=1) 2022-11-23 16:46:41.172 D 651: [emsesp] Last Tx read successful 2022-11-23 16:46:41.172 D 652: [emsesp] This telegram (RCError) is not recognized by the EMS bus 2022-11-23 16:46:41.172 D 653: [emsesp] No telegram type handler found for ID 0xA2 (src 0x18) 2022-11-23 16:46:41.243 D 654: [mqtt] Publishing topic homeassistant/select/ems-esp/thermostat_wwmode/config (#290, retain=1, retry=1, size=265, pid=1) 2022-11-23 16:46:41.340 D 655: [command] Calling command 'thermostat/mode' (mode) with value night 2022-11-23 16:46:41.340 D 656: [emsesp] Write command successful 2022-11-23 16:46:41.354 D 657: [mqtt] Publishing topic homeassistant/select/ems-esp/thermostat_wwcircmode/config (#291, retain=1, retry=1, size=311, pid=1) 2022-11-23 16:46:41.455 D 658: [mqtt] Publishing topic homeassistant/select/ems-esp/thermostat_wwcircprog/config (#292, retain=1, retry=1, size=311, pid=1) 2022-11-23 16:46:41.556 D 659: [mqtt] Publishing topic homeassistant/switch/ems-esp/thermostat_wwdisinfecting/config (#293, retain=1, retry=1, size=341, pid=1) 2022-11-23 16:46:41.576 D 660: [telegram] Sending write Tx [#59], telegram: 0B 10 3D 07 00 2022-11-23 16:46:41.592 D 661: [emsesp] No telegram type handler found for ID 0x3D (src 0x0B) 2022-11-23 16:46:41.620 D 662: [emsesp] Last Tx write successful 2022-11-23 16:46:41.620 D 663: [telegram] Sending post validate read, type ID 0x3D to dest 0x10 2022-11-23 16:46:41.657 D 664: [mqtt] Publishing topic homeassistant/select/ems-esp/thermostat_wwdisinfectday/config (#294, retain=1, retry=1, size=336, pid=1) 2022-11-23 16:46:41.758 D 665: [mqtt] Publishing topic homeassistant/number/ems-esp/thermostat_wwdisinfecthour/config (#295, retain=1, retry=1, size=305, pid=1) 2022-11-23 16:46:41.859 D 666: [mqtt] Publishing topic homeassistant/number/ems-esp/thermostat_wwmaxtemp/config (#296, retain=1, retry=1, size=355, pid=1) 2022-11-23 16:46:41.960 D 667: [mqtt] Publishing topic homeassistant/switch/ems-esp/thermostat_wwonetimekey/config (#297, retain=1, retry=1, size=353, pid=1) 2022-11-23 16:46:42.022 D 668: [telegram] Sending read Tx [#60], telegram: 0B 90 3D 00 1B 2022-11-23 16:46:42.061 D 669: [mqtt] Publishing topic homeassistant/sensor/ems-esp/thermostat_wwswitchtime/config (#298, retain=1, retry=1, size=281, pid=1) 2022-11-23 16:46:42.162 D 670: [mqtt] Publishing topic homeassistant/sensor/ems-esp/thermostat_wwcircswitchtime/config (#299, retain=1, retry=1, size=317, pid=1) 2022-11-23 16:46:42.191 D 671: [emsesp] Last Tx read successful 2022-11-23 16:46:42.263 D 672: [mqtt] Publishing topic homeassistant/sensor/ems-esp/thermostat_wwholidays/config (#300, retain=1, retry=1, size=265, pid=1) 2022-11-23 16:46:42.364 D 673: [mqtt] Publishing topic homeassistant/sensor/ems-esp/thermostat_wwvacations/config (#301, retain=1, retry=1, size=270, pid=1) 2022-11-23 16:46:42.465 D 674: [mqtt] Publishing topic ems-esp/thermostat_data (#302, retain=0, retry=1, size=1494, pid=1) 2022-11-23 16:46:42.566 D 675: [mqtt] Publishing topic ems-esp/thermostat_data (#303, retain=0, retry=1, size=1494, pid=1) 2022-11-23 16:46:42.569 D 676: [mqtt] Removing HA config for mixer_hc2_flowtemphc 2022-11-23 16:46:42.569 D 677: [mqtt] Removing HA config for mixer_hc2_valvestatus 2022-11-23 16:46:42.569 D 678: [mqtt] Removing HA config for mixer_hc2_flowsettemp 2022-11-23 16:46:42.569 D 679: [mqtt] Removing HA config for mixer_hc2_pumpstatus 2022-11-23 16:46:42.569 D 680: [mqtt] Removing HA config for mixer_hc2_activated 2022-11-23 16:46:42.569 D 681: [mqtt] Removing HA config for mixer_hc2_valvesettime 2022-11-23 16:46:42.597 D 682: [telegram] Sending read Tx [#61], telegram: 0B 90 3D 1B 20

    Screenshots If applicable, add screenshots to help explain your problem.

    Device information { "System Status": { "version": "3.4.4", "uptime": "000+04:32:48.537", "freemem": 128, "reset reason": "Power on reset / APP CPU reset by PRO CPU" }, "Network Status": { "connection": "Ethernet", "hostname": "ems-esp", "MAC": "8C:CE:4E:94:BC:17", "IPv4 address": "10.0.1.201/255.255.255.0", "IPv4 gateway": "10.0.1.1", "IPv4 nameserver": "10.0.1.1", "phy type": 1, "eth power": 16, "eth phy addr": 1, "eth clock mode": 0, "static ip config": true, "enable IPv6": false, "low bandwidth": false, "disable sleep": false, "AP provision mode": "disconnected", "AP security": "wpa2", "AP ssid": "ems-esp" }, "NTP Status": { "network time": "connected", "enabled": true, "server": "time.google.com", "tz label": "Europe/Amsterdam" }, "OTA Status": { "enabled": true, "port": 8266 }, "MQTT Status": { "MQTT status": "connected", "MQTT publishes": 38182, "MQTT publish fails": 0, "enabled": true, "client_id": "ems-esp", "keep alive": 36000, "clean session": true, "base": "ems-esp", "discovery prefix": "homeassistant", "nested format": 1, "ha enabled": true, "mqtt qos": 0, "mqtt retain": false, "publish time boiler": 10, "publish time thermostat": 1, "publish time solar": 10, "publish time mixer": 10, "publish time other": 1, "publish time sensor": 1, "publish single": false, "publish2command": false, "send response": false }, "Syslog Status": { "enabled": false }, "Sensor Status": { "temperature sensors": 0, "temperature sensor reads": 0, "temperature sensor fails": 0, "analog sensors": 0, "analog sensor reads": 0, "analog sensor fails": 0 }, "API Status": { "API calls": 0, "API fails": 0 }, "Bus Status": { "bus status": "connected", "bus protocol": "Buderus", "bus telegrams received (rx)": 21492, "bus reads (tx)": 5516, "bus writes (tx)": 20, "bus incomplete telegrams": 0, "bus reads failed": 0, "bus writes failed": 0, "bus rx line quality": 100, "bus tx line quality": 100 }, "Settings": { "board profile": "E32", "tx mode": 1, "ems bus id": 11, "shower timer": false, "shower alert": false, "rx gpio": 5, "tx gpio": 17, "dallas gpio": 4, "pbutton gpio": 33, "led gpio": 2, "hide led": false, "notoken api": true, "readonly mode": false, "fahrenheit": false, "dallas parasite": false, "bool format": 1, "bool dashboard": 1, "enum format": 1, "analog enabled": true, "telnet enabled": true }, "Devices": [ { "type": "Boiler", "name": "BK13/BK15/Smartline/GB1x2", "device id": "0x08", "product id": 64, "version": "03.05", "entities": 67, "handlers received": "0x10 0x11 0x15 0x1C 0x18 0x19 0x34", "handlers fetched": "0x14 0x16 0x33", "handlers pending": "0xBF 0xC2 0x1A 0x35 0x26 0x2A 0xD1 0xE3 0xE4 0xE5 0xE6 0xE9 0xEA", "handlers ignored": "0x04" }, { "type": "Thermostat", "name": "ES72/RC20", "device id": "0x18", "product id": 113, "version": "02.01", "entities": 1, "handlers received": "0xAF", "handlers pending": "0xA3 0x06 0xA2 0x12 0xAE 0xAD", "handlers ignored": "0x01 0xA6 0x35" }, { "type": "Thermostat", "name": "RC35", "device id": "0x10", "product id": 86, "version": "21.04", "entities": 93, "handlers received": "0xA3 0x06 0xA2 0x12 0x42 0x4C 0x52 0x51 0x53 0x56 0x5C 0x5B 0x5D 0x60 0x38 0x39", "handlers fetched": "0x3E 0x3D 0x3F 0x48 0x47 0x49 0xA5 0x37", "handlers ignored": "0x01 0x1A 0x13 0xAC 0xA4 0x35 0x9D 0x05" }, { "type": "Mixer", "name": "MM10", "device id": "0x21", "product id": 69, "version": "02.00", "entities": 6, "handlers received": "0xAB", "handlers fetched": "0xAA", "handlers pending": "0xAC" }, { "type": "Switch", "name": "WM10", "device id": "0x11", "product id": 71, "version": "02.00", "entities": 2, "handlers received": "0x9C 0x1E", "handlers pending": "0x9D" }, { "type": "Controller", "name": "BC10/RFM20", "device id": "0x09", "product id": 68, "version": "02.03", "entities": 0 } ] }

    Additional context

    Is there a possibility to restart the ems from within HA or NR? This way i could temporary fix the problem this way.

    system log Full system log attached Bottom line of this system log gives extra info on the problem (time)16:33:31 log.txt :

    2022-11-23 16:33:17.227 D 60608: [emsesp] No telegram type handler found for ID 0x35 (src 0x18) 2022-11-23 16:33:17.700 D 60609: [emsesp] No telegram type handler found for ID 0x35 (src 0x10) 2022-11-23 16:33:18.082 D 60610: [mqtt] Publishing topic ems-esp/thermostat_data (#41354, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:18.183 D 60611: [mqtt] Publishing topic ems-esp/switch_data (#41355, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:19.092 D 60612: [mqtt] Publishing topic ems-esp/thermostat_data (#41356, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:19.193 D 60613: [mqtt] Publishing topic ems-esp/switch_data (#41357, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:20.102 D 60614: [mqtt] Publishing topic ems-esp/boiler_data_ww (#41358, retain=0, retry=1, size=484, pid=1) 2022-11-23 16:33:20.203 D 60615: [mqtt] Publishing topic ems-esp/boiler_data (#41359, retain=0, retry=1, size=794, pid=1) 2022-11-23 16:33:20.304 D 60616: [mqtt] Publishing topic ems-esp/thermostat_data (#41360, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:20.405 D 60617: [mqtt] Publishing topic ems-esp/mixer_data (#41361, retain=0, retry=1, size=117, pid=1) 2022-11-23 16:33:20.506 D 60618: [mqtt] Publishing topic ems-esp/switch_data (#41362, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:21.011 D 60619: [mqtt] Publishing topic ems-esp/thermostat_data (#41363, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:21.112 D 60620: [mqtt] Publishing topic ems-esp/switch_data (#41364, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:22.021 D 60621: [mqtt] Publishing topic ems-esp/thermostat_data (#41365, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:22.122 D 60622: [mqtt] Publishing topic ems-esp/switch_data (#41366, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:23.031 D 60623: [mqtt] Publishing topic ems-esp/thermostat_data (#41367, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:23.132 D 60624: [mqtt] Publishing topic ems-esp/switch_data (#41368, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:24.043 D 60625: [mqtt] Publishing topic ems-esp/thermostat_data (#41369, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:24.144 D 60626: [mqtt] Publishing topic ems-esp/switch_data (#41370, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:25.053 D 60627: [mqtt] Publishing topic ems-esp/thermostat_data (#41371, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:25.154 D 60628: [mqtt] Publishing topic ems-esp/switch_data (#41372, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:26.063 D 60629: [mqtt] Publishing topic ems-esp/thermostat_data (#41373, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:26.164 D 60630: [mqtt] Publishing topic ems-esp/switch_data (#41374, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:27.073 D 60631: [mqtt] Publishing topic ems-esp/thermostat_data (#41375, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:27.174 D 60632: [mqtt] Publishing topic ems-esp/switch_data (#41376, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:28.083 D 60633: [mqtt] Publishing topic ems-esp/thermostat_data (#41377, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:28.184 D 60634: [mqtt] Publishing topic ems-esp/switch_data (#41378, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:29.093 D 60635: [mqtt] Publishing topic ems-esp/thermostat_data (#41379, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:29.194 D 60636: [mqtt] Publishing topic ems-esp/switch_data (#41380, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:30.007 D 60637: [mqtt] Publishing topic ems-esp/boiler_data_ww (#41381, retain=0, retry=1, size=484, pid=1) 2022-11-23 16:33:30.108 D 60638: [mqtt] Publishing topic ems-esp/boiler_data (#41382, retain=0, retry=1, size=794, pid=1) 2022-11-23 16:33:30.209 D 60639: [mqtt] Publishing topic ems-esp/thermostat_data (#41383, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:30.310 D 60640: [mqtt] Publishing topic ems-esp/mixer_data (#41384, retain=0, retry=1, size=117, pid=1) 2022-11-23 16:33:30.411 D 60641: [mqtt] Publishing topic ems-esp/switch_data (#41385, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:31.017 D 60642: [mqtt] Publishing topic ems-esp/thermostat_data (#41386, retain=0, retry=1, size=1871, pid=1) 2022-11-23 16:33:31.118 D 60643: [mqtt] Publishing topic ems-esp/switch_data (#41387, retain=0, retry=1, size=30, pid=1) 2022-11-23 16:33:31.185 D 60644: [command] Calling command 'thermostat/mode' (mode) with value night 2022-11-23 16:33:31.185 E 60645: [emsesp] Write command failed callback function failed (Error)

    bug 
    opened by daad919 4
  • Boiler does not respond to custom value EMS-ESP gateway

    Boiler does not respond to custom value EMS-ESP gateway

    Hello,

    I have a Nefit Trendline HRC30 CW5 boiler, with an EMS-ESP gateway with firmware v3.4.4. It is possible to adjust the "pump delay" and the "burner min period" through the EMS-ESP gateway. However, it is suspected that nothing will happen with the adjusted values.

    For example, I set the "pump delay" to 10 minutes and the "burner min period" to 12 minutes. However, the pump switches off after a few minutes after the boiler has stopped heating for a short time.

    When applying other values, nothing actually changes what the boiler actually does.

    Greetings,

    Pomp Verwarmen EMS-ESP

    help wanted 
    opened by MarkRoks 2
  • Multiple EMS Devices share same id when using HA & MQTT

    Multiple EMS Devices share same id when using HA & MQTT

    Before creating a new issue please check that you have:

    Bug description We operate 2 EMS-ESP-32 systems for 2 houses conntected to the same MQTT broker. The heating systems connected to the ems-esps are the same model. I have configured unique network hostnames and unique client ids for both ems-esps. However when running HA & MQTT, home assistant only detects one of the ems-esps and it seems like all entities are overwritten by each other meaning if I add the detected entites to the overview, the displayed values keep switching between the first and seconds ems system (overwriting each others values).

    Steps to reproduce Connect two EMS-ESP-32 to the same heating system model, set different hostnames and clientids and run Home Assistant and enable auto discovery.

    Expected behavior The detected devices and entities have unique ids.

    Screenshots EMS-ESP #1 image image

    EMS-ESP #2 image image

    HA logs: image

    HA MQTT detected devices: image

    Device information Device #1

    {
      "System Status": {
        "version": "3.5.0b4",
        "uptime": "000+00:19:32.997",
        "freemem": 117,
        "free_app": 115,
        "reset reason": "Software reset CPU / Software reset CPU"
      },
      "Network Status": {
        "connection": "WiFi",
        "hostname": "hausa",
        "RSSI": -72,
        "IPv4 address": "192.168.100.20/255.255.255.0",
        "IPv4 gateway": "192.168.100.1",
        "IPv4 nameserver": "192.168.100.1",
        "static ip config": true,
        "enable IPv6": false,
        "low bandwidth": false,
        "disable sleep": true,
        "AP provision mode": "disconnected",
        "AP security": "wpa2",
        "AP ssid": "ems-esp"
      },
      "NTP Status": {
        "network time": "connected",
        "enabled": true,
        "server": "time.google.com",
        "tz label": "Europe/Amsterdam"
      },
      "OTA Status": {
        "enabled": true,
        "port": 8266
      },
      "MQTT Status": {
        "MQTT status": "connected",
        "MQTT publishes": 756,
        "MQTT publish fails": 0,
        "enabled": true,
        "client_id": "hausa",
        "keep alive": 60,
        "clean session": false,
        "base": "hausa",
        "discovery prefix": "homeassistant",
        "nested format": 2,
        "ha enabled": true,
        "mqtt qos": 0,
        "mqtt retain": false,
        "publish time boiler": 10,
        "publish time thermostat": 10,
        "publish time solar": 10,
        "publish time mixer": 10,
        "publish time other": 10,
        "publish time sensor": 10,
        "publish single": false,
        "publish2command": false,
        "send response": false
      },
      "Syslog Status": {
        "enabled": false
      },
      "Sensor Status": {
        "temperature sensors": 0,
        "temperature sensor reads": 0,
        "temperature sensor fails": 0,
        "analog sensors": 0,
        "analog sensor reads": 0,
        "analog sensor fails": 0
      },
      "API Status": {
        "API calls": 0,
        "API fails": 0
      },
      "Bus Status": {
        "bus status": "connected",
        "bus protocol": "Buderus",
        "bus telegrams received (rx)": 1224,
        "bus reads (tx)": 310,
        "bus writes (tx)": 0,
        "bus incomplete telegrams": 0,
        "bus reads failed": 1,
        "bus writes failed": 0,
        "bus rx line quality": 100,
        "bus tx line quality": 100
      },
      "Settings": {
        "board profile": "CUSTOM",
        "locale": "de",
        "tx mode": 2,
        "ems bus id": 11,
        "shower timer": false,
        "shower alert": false,
        "rx gpio": 16,
        "tx gpio": 17,
        "dallas gpio": 18,
        "pbutton gpio": 0,
        "led gpio": 2,
        "hide led": false,
        "notoken api": false,
        "readonly mode": false,
        "fahrenheit": false,
        "dallas parasite": false,
        "bool format": 1,
        "bool dashboard": 1,
        "enum format": 1,
        "analog enabled": true,
        "telnet enabled": true
      },
      "Devices": [
        {
          "type": "Boiler",
          "name": "GBx72/Trendline/Cerapur/Greenstar Si/27i",
          "device id": "0x08",
          "product id": 123,
          "version": "07.00",
          "entities": 64,
          "handlers received": "0x10 0x11 0x15 0x1C 0x18 0x19 0x34 0x2A",
          "handlers fetched": "0x14 0x16 0x33 0x26",
          "handlers pending": "0xBF 0xC2 0x1A 0x35 0xD1 0xE3 0xE4 0xE5 0xE6 0xE9 0xEA"
        },
        {
          "type": "Thermostat",
          "name": "RC300/RC310/Moduline 3000/1010H/CW400/Sense II",
          "device id": "0x10",
          "product id": 158,
          "version": "74.02",
          "entities": 48,
          "handlers received": "0x06 0xA2 0x02BA 0x02BB 0x02BC 0x02BD 0x02BE 0x02BF 0x02C0 0x031D 0x0267",
          "handlers fetched": "0x02A5 0x02B9 0x02AF 0x029B 0x02F5 0x031B 0x023A 0x0240",
          "handlers pending": "0xA3 0x12 0x13 0x0471 0x02A6 0x02B0 0x029C 0x0472 0x02A7 0x02B1 0x029D 0x0473 0x02A8 0x02B2 0x029E 0x0474 0x02A9 0x02B3 0x029F 0x0475 0x02AA 0x02B4 0x02A0 0x0476 0x02AB 0x02B5 0x02A1 0x0477 0x02AC 0x02B6 0x02A2 0x0478 0x02CC 0x02CE 0x02D0 0x02D2 0x031E",
          "handlers ignored": "0x35 0x23 0x1A 0xBF"
        },
        {
          "type": "Controller",
          "name": "BC25",
          "device id": "0x09",
          "product id": 125,
          "version": "03.05",
          "entities": 0
        }
      ]
    }
    

    Device #2:

    {
      "System Status": {
        "version": "3.5.0b4",
        "uptime": "000+00:20:08.494",
        "freemem": 117,
        "free_app": 115,
        "reset reason": "Software reset CPU / Software reset CPU"
      },
      "Network Status": {
        "connection": "WiFi",
        "hostname": "hausb",
        "RSSI": -71,
        "IPv4 address": "192.168.100.21/255.255.255.0",
        "IPv4 gateway": "192.168.100.1",
        "IPv4 nameserver": "192.168.100.1",
        "static ip config": true,
        "enable IPv6": false,
        "low bandwidth": false,
        "disable sleep": true,
        "AP provision mode": "disconnected",
        "AP security": "wpa2",
        "AP ssid": "ems-esp"
      },
      "NTP Status": {
        "network time": "connected",
        "enabled": true,
        "server": "time.google.com",
        "tz label": "Europe/Amsterdam"
      },
      "OTA Status": {
        "enabled": true,
        "port": 8266
      },
      "MQTT Status": {
        "MQTT status": "connected",
        "MQTT publishes": 736,
        "MQTT publish fails": 0,
        "enabled": true,
        "client_id": "hausb",
        "keep alive": 60,
        "clean session": false,
        "base": "hausb",
        "discovery prefix": "homeassistant",
        "nested format": 2,
        "ha enabled": true,
        "mqtt qos": 0,
        "mqtt retain": false,
        "publish time boiler": 10,
        "publish time thermostat": 10,
        "publish time solar": 10,
        "publish time mixer": 10,
        "publish time other": 10,
        "publish time sensor": 10,
        "publish single": false,
        "publish2command": false,
        "send response": false
      },
      "Syslog Status": {
        "enabled": false
      },
      "Sensor Status": {
        "temperature sensors": 0,
        "temperature sensor reads": 0,
        "temperature sensor fails": 0,
        "analog sensors": 0,
        "analog sensor reads": 0,
        "analog sensor fails": 0
      },
      "API Status": {
        "API calls": 0,
        "API fails": 0
      },
      "Bus Status": {
        "bus status": "connected",
        "bus protocol": "Buderus",
        "bus telegrams received (rx)": 1278,
        "bus reads (tx)": 322,
        "bus writes (tx)": 0,
        "bus incomplete telegrams": 0,
        "bus reads failed": 2,
        "bus writes failed": 0,
        "bus rx line quality": 100,
        "bus tx line quality": 100
      },
      "Settings": {
        "board profile": "CUSTOM",
        "locale": "de",
        "tx mode": 2,
        "ems bus id": 11,
        "shower timer": false,
        "shower alert": false,
        "rx gpio": 16,
        "tx gpio": 17,
        "dallas gpio": 18,
        "pbutton gpio": 0,
        "led gpio": 2,
        "hide led": false,
        "notoken api": false,
        "readonly mode": false,
        "fahrenheit": false,
        "dallas parasite": false,
        "bool format": 1,
        "bool dashboard": 1,
        "enum format": 1,
        "analog enabled": true,
        "telnet enabled": true
      },
      "Devices": [
        {
          "type": "Boiler",
          "name": "GBx72/Trendline/Cerapur/Greenstar Si/27i",
          "device id": "0x08",
          "product id": 123,
          "version": "07.00",
          "entities": 64,
          "handlers received": "0x10 0x11 0x15 0x1C 0x18 0x19 0x34 0x2A",
          "handlers fetched": "0x14 0x16 0x33 0x26",
          "handlers pending": "0xBF 0xC2 0x1A 0x35 0xD1 0xE3 0xE4 0xE5 0xE6 0xE9 0xEA"
        },
        {
          "type": "Thermostat",
          "name": "RC300/RC310/Moduline 3000/1010H/CW400/Sense II",
          "device id": "0x10",
          "product id": 158,
          "version": "74.03",
          "entities": 48,
          "handlers received": "0x06 0xA2 0x02BA 0x02BB 0x02BC 0x02BD 0x02BE 0x02BF 0x02C0 0x031D 0x0267",
          "handlers fetched": "0x02A5 0x02B9 0x02AF 0x029B 0x02F5 0x031B 0x023A 0x0240",
          "handlers pending": "0xA3 0x12 0x13 0x0471 0x02A6 0x02B0 0x029C 0x0472 0x02A7 0x02B1 0x029D 0x0473 0x02A8 0x02B2 0x029E 0x0474 0x02A9 0x02B3 0x029F 0x0475 0x02AA 0x02B4 0x02A0 0x0476 0x02AB 0x02B5 0x02A1 0x0477 0x02AC 0x02B6 0x02A2 0x0478 0x02CC 0x02CE 0x02D0 0x02D2 0x031E",
          "handlers ignored": "0x35 0x1A 0x23 0xBF"
        },
        {
          "type": "Controller",
          "name": "BC25",
          "device id": "0x09",
          "product id": 125,
          "version": "03.05",
          "entities": 0
        }
      ]
    }
    

    I would appreciate any suggestions or ideas to resolve this issue

    enhancement 
    opened by Rainson12 3
  • Entity id for sensors within HA changes when updating name in web-ui

    Entity id for sensors within HA changes when updating name in web-ui

    I recognized that while changing names for sensors (analog & dallas) within web-ui the entity id changes as well for HA. I think only full name should change. Entity id should be kept.

    enhancement 
    opened by tp1de 6
  • Scheduled reboot facility

    Scheduled reboot facility

    Would it be possible to add an automatic scheduled reboot to EMS-ESP?

    My smart home controller reboots once each week overnight, restarting the MQTT broker with it. My EMS-ESP sometimes fails to re-establish the broker connection after this and sits there doing nothing until I wake up and see the alerts from the controller than EMS hasn't reported in for a few hours. There are also (rarely) problems with it reconnecting EMS, which a reboot soon fixes.

    A scheduled reboot option would mean that any temporary problems with EMS-ESP would have a good chance of being resolved without intervention.

    enhancement 
    opened by jefft4 4
  • Default webUI langauge to local of browser

    Default webUI langauge to local of browser

    @HansRemmerswaal in https://github.com/emsesp/EMS-ESP32/issues/748#issuecomment-1316413110_ mentioned:

    "Since I installed the v3.5.0b9 my initial language is each time PL, but ok that is easy to change to EN each time. "

    I think this is because of the base language has to be PL (long story). What we can do is auto detect the language from the browser if there is no cookie set.

    enhancement 
    opened by proddy 1
Releases(latest)
  • latest(Nov 22, 2022)

  • v3.4.4(Oct 29, 2022)

  • v3.4.3(Oct 8, 2022)

  • v3.4.2(Sep 18, 2022)

    Added

    • RC310 additions #520
      • damping
      • wwprio for RC310 heating circuits
      • switchonoptimization for RC310 heating circuits
      • enum_controlmode for RC310 (new enum list)
      • nofrostmode, reducemode, reducetemp & noreducetemp for RC310
      • emergencyops and emergencytemp, wwmaxtemp, wwflowtempoffset and wwcomfort1 for RC310
      • HM200 hybrid module #500
      • AM200 alternative heatsource module #573
      • EM10 error module as gateway #575

    Fixed

    • fix Table resizing in WebUI #519
    • allow larger customization files #570
    • losing entitiy wwcomfort #581

    Changed

    • Shorten "friendly names" in Home Assistant #555
    • platformio 2.3.0 (IDF 4, Arduino 2)
    • remove master-thermostat, support multiple thermostats
    • merge up- and download in webui #577

    Commits

    • eb9df59: remove master_thermostat (MichaelDvP) #532
    • 732dced: resort tags, boiler ww extra (MichaelDvP) #532
    • 57582aa: add boiler_data_ww (MichaelDvP) #532
    • 7168f6c: version b8, package update (MichaelDvP) #532
    • 6bbe268: autoformatting, check HS circuits (MichaelDvP) #532
    • f076829: fix mDNS (MichaelDvP) #532
    • 5634f46: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev_no_master_thermostat (MichaelDvP) #532
    • 0495aec: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev_no_master_thermostat (MichaelDvP) #532
    • f9207ec: Merge branch 'dev_' into dev_no_master_thermostat (MichaelDvP) #532
    • ab17dd5: Cell height for multiline values (MichaelDvP) #532
    • adc88d5: update mbedtsl (works also for framework 3.5.0) (MichaelDvP) #532
    • fbec88f: OneWire check arduino version (MichaelDvP) #532
    • 986b4df: use buildin LittleFS (MichaelDvP) #532
    • fa16648: SYSTEM_EVENT.. to ARDUINO_EVENT_... (MichaelDvP) #532
    • 9a8449e: NTP Settings (MichaelDvP) #532
    • c70d035: DHCP (works with framewaork 3.5.0) (MichaelDvP) #532
    • 9fe0ee1: 1. try to fix uart, irq called not only on brk-irq? (MichaelDvP) #532
    • 5b6c031: set platform (MichaelDvP) #532
    • 43d8385: faster network reconnect (MichaelDvP) #532
    • 53e3600: uart driver installed, events (MichaelDvP) #532
    • 7dc65a8: tasmota forc of if2.0.3 (MichaelDvP) #532
    • 1afa21c: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4 (MichaelDvP) #532
    • dc9c21f: packages, platform, typo (MichaelDvP) #532
    • 0c6c7f9: replace OneWire (MichaelDvP) #532
    • 9c38987: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4 (MichaelDvP) #532
    • 8dc5f0a: use development platform (MichaelDvP) #532
    • 579c869: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4 (MichaelDvP) #532
    • 221e28c: uart checks (MichaelDvP) #532
    • ca7bea3: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4 (MichaelDvP) #532
    • 7b6ca7c: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4 (MichaelDvP) #532
    • larger queue, check buffer and telegram #532 (MichaelDvP)
    • cfff3a4: enableMDNS to lib_standalone (MichaelDvP) #532
    • 5917238: Merge branch 'dev_' into idf4 (MichaelDvP) #532
    • d075ee3: Merge branch 'dev_no_master_thermostat' into idf4_no_master (MichaelDvP) #532
    • f4aa4ed: allow id for attribute (MichaelDvP) #532
    • db92374: Merge branch 'dev' of https://github.com/MichaelDvP/EMS-ESP32 into idf4_no_master (MichaelDvP) #532
    • 9d2ed1c: uart, tx-mode 1 check buffersize (MichaelDvP) #532
    • bf54ee2: Merge branch 'dev' into idf4 (MichaelDvP) #532
    • 9e14b34: uart, tx-mode 1 check buffersize, change event-task (MichaelDvP) #532
    • 6c15165: parse_command (MichaelDvP) #532
    • fdab569: Merge branch 'dev' into idf4_no_master (MichaelDvP) #532
    • 6203eed: uart (MichaelDvP) #532
    • b16fa6d: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4_no_master (MichaelDvP) #532
    • 9c732ae: uart back (MichaelDvP) #532
    • 3e2f7a5: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4_no_master (MichaelDvP) #532
    • 8339fc7: uart in IRAM (MichaelDvP) #532
    • b3fde5a: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into idf4 (MichaelDvP) #532
    • c9f10fb: uart isr to IRAM (MichaelDvP) #532
    • 9202d79: npm update (MichaelDvP) #532
    • 3168438: LITTLEFS->LittleFS (MichaelDvP) #532
    • a3130d4: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into idf4 (MichaelDvP) #532
    • a045494: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into idf4_no_master (MichaelDvP) #532
    • ca50c51: fix typos (MichaelDvP) #532
    • c7fb339: Merge branch 'dev' into idf4 (MichaelDvP) #532
    • 8307753: fix uart crash with dev platform (MichaelDvP) #532
    • 4023d78: NPM update (MichaelDvP) #532
    • 95927fc: Merge branch 'idf4' into idf4_no_master (MichaelDvP) #532
    • 3a538a9: Merge remote-tracking branch 'proddy/dev' into idf4_no_master (MichaelDvP) #532
    • 9a3668c: Merge remote-tracking branch 'origin/dev' into idf4 (MichaelDvP) #532
    • a6e0280: NPM update (MichaelDvP) #532
    • b426f4f: Merge remote-tracking branch 'origin/dev' into idf4_no_master (MichaelDvP) #532
    • 6670dfd: formatting (MichaelDvP) #532
    • c502aa7: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4_no_master (MichaelDvP) #532
    • d3d9a93: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4_no_master (MichaelDvP) #532
    • 9d34268: reducemode1, reducetemp and noreducetemp for RC310 (tp1de) #520
    • 94c4589: add nofrostmode1 for RC310 (tp1de) #520
    • c1598f3: changelog (tp1de) #520
    • c2767a8: Merge branch 'emsesp:dev' into dev (Thomas) #520
    • 3115fae: Added enum_controlmode1 - Adjusted enum list for RC310 (tp1de) #520
    • 60e1a93: correct nofrostmodet1 & reducemode1 - just change enums ! (tp1de) #520
    • 570588f: delete obsolete reducetemp1 (tp1de) #520
    • 53d3bda: Added switchonoptimization for RC310 (tp1de) #520
    • 622a5db: wwprio for RC310 thermostat (tp1de) #520
    • 107106d: requested changes on PR from @MichaelDvP (tp1de) #520
    • 10bf065: Add damping to RC310 (tp1de) #520
    • 9723926: damping (tp1de) #520
    • ab6893a: corrections nofrostmode (tp1de) #520
    • 072fe52: 3.4.2b2 (Proddy) #531
    • b19b3e5: Merge branch 'dev' into dev (Proddy) #520
    • 99b6acf: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into idf4 (MichaelDvP) #532
    • a692eb5: Merge branch 'idf4' into idf4_no_master (MichaelDvP) #532
    • eacdd62: update changelog (MichaelDvP) #532
    • 383c30f: chamges for standalone compiling (Proddy) #533
    • ae3ead6: some small corrections (MichaelDvP) #534
    • f64dd00: update packages (Proddy) #537
    • fe12f19: uart higher prriority (MichaelDvP) #538
    • e7bcc38: fix #536, FR100 datetime not writable (MichaelDvP) #538
    • 1609b76: WebStatus:add syslog count/fail, show only enabled services (MichaelDvP) #540
    • 98fb970: add test for #541 (proddy) #544
    • cf4818f: update packages (proddy) #544
    • 64a7108: make it compile standalone (proddy) #544
    • a22783a: update OneWire lib (MichaelDvP) #545
    • cec1fce: fix #549, set minimum emergencyTemp to 15°C (MichaelDvP) #551
    • 67f898b: force removal of directories (Proddy) #552
    • c354338: update packages (Proddy) #552
    • 0e5cb2d: fix #554, add dhw vacation/holiday (MichaelDvP) #556
    • bf18718: shortname to wwVacations/wwHoliday to avoid conflict (MichaelDvP) #557
    • 0e563e9: burner max power to 254%, fix #553 (MichaelDvP) #558
    • 1c48d12: Shorten "friendly names" in Home Assistant (pswid) #560
    • 1238e89: add unit of measurement in HA for analog sensors (pswid) #560
    • efa5eb2: show summermode or operatingmode, fix #550 (MichaelDvP) #566
    • 4eceeea: 3.4.2b3 (Proddy) #561
    • 254d4dd: updated packages (Proddy) #561
    • 2c90a2c: 3.4.2b3 (Proddy) #561
    • 4af1de4: auto-formatting (Proddy) #561
    • 9639f9c: fix table column resizing #519 (Proddy) #561
    • 6298fab: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into dev (Proddy) #561
    • 30da267: fix #547 (Proddy) #562
    • a9b32d8: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into dev (Proddy) #562
    • 96d2fd2: optimize for mobile phone layout (Proddy) #563
    • 422657f: fix #550 (MichaelDvP) #566
    • b840e2a: Merge branch 'emsesp:dev' into dev (MichaelDvP) #566
    • 70fe08a: fix #550 set_summermode (MichaelDvP) #566
    • 0e172ff: update table packages (Proddy) #567
    • eddbacf: fix column size for temperature (proddy) #568
    • fc3224c: FS_Buffer to 8k for customizations (MichaelDvP) #571
    • a14b43d: update packages (MichaelDvP) #572
    • 8101fcf: button for help->info, file: .json.txt (MichaelDvP) #585
    • c765a27: AM200, first test (MichaelDvP) #585
    • 43db536: add EM10 error detection module (MichaelDvP) #585
    • 78dee6c: AM200 temperatures (MichaelDvP) #585
    • 13430de: detect boiler with id 0x60 (MichaelDvP) #585
    • ebc5cfa: add tag "ahs" for alternative heating source (MichaelDvP) #585
    • 273526d: check tags (MichaelDvP) #585
    • d707e92: formatting (Proddy) #579
    • 4420ae3: merge upload and download in webUI #577 (Proddy) #579
    • 66fbd2b: show MQTT disconnects as warnings #543 (Proddy) #579
    • c3757f9: only send MQTT after shower finished (Proddy) #579
    • ca30b82: fixes (Proddy) #579
    • 387c9c6: typo (Proddy) #579
    • 6bc8a4b: EM10 as switch (MichaelDvP) #585
    • a018432: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (MichaelDvP) #585
    • c81e3e8: handle EM10 as switch (MichaelDvP) #585
    • 295bbed: fix #581 (MichaelDvP) #585
    • 9573869: fix compile errors with debug (Proddy) #583
    • 02989ec: cleanup duplicate text (Proddy) #583
    • 297134d: remove serial output if no serial selected during upload (Proddy) #583
    • 505e339: testing coldshot (Proddy) #583
    • 3b86d1b: minor text change (Proddy) #583
    • 8ebefeb: don't show AM200 valves with unknown offset (MichaelDvP) #585
    • c4f4a44: EM10 as gateway (MichaelDvP) #585
    • 9c1d08c: prevent reinitialization of all on first setting change (MichaelDvP) #585
    • d5e19fd: updated mock doc (Proddy) #583
    • d12879b: link to device entity details from customization page (Proddy) #586
    • d0a779b: minor formatting (Proddy) #586
    • ba2ded1: wifi disconnect if Warning log (Proddy) #586
    • cdc04f9: update packages (Proddy) #586
    • a3a2913: no need to add uique id to end of device type since it's unique anyway (Proddy) #586
    • 0d69a0a: add ahs valve positions 0-100% (MichaelDvP) #603
    • 94afd8a: rename telegrams am200 (MichaelDvP) #603
    • f87f18c: Update MqttSettingsForm.tsx (ichsteffen) #589
    • ec02e55: Fix typo mqtt-base (MichaelDvP) #603
    • fb94026: AM200 settings #573 (MichaelDvP) #603
    • 8ee70a1: version/changelog (MichaelDvP) #603
    • f79258f: product_id 200 as thermostat RC100H, #590 (MichaelDvP) #603
    • 79e0b80: no fetch for broadcasted remote telegrams (MichaelDvP) #603
    • 308b8fb: fix position of am200 mixingvalves (MichaelDvP) #603
    • 97132a4: min/max settings for AM200 (MichaelDvP) #603
    • d367c20: add disconnected banner to dashboard, #591 (MichaelDvP) #603
    • a5be7f4: reboot required when changing uart pins (MichaelDvP) #603
    • 9cf89ee: update comment, fix hp humidity scale (MichaelDvP) #603
    • f96b13c: fix tag of wwStarts2 (MichaelDvP) #603
    • a087974: add RC100H remoteseltemp and temp correction (MichaelDvP) #603
    • 70f52ce: humidity, dewtemp as uint (MichaelDvP) #603
    • 029ef56: hc checks for RC100H (MichaelDvP) #603
    • b499d90: handle telegrams from src only (MichaelDvP) #603
    • bf1ce51: map RC100H values to device and tag hc (MichaelDvP) #603
    • df555ac: set wwFlowTempOffset to 100 (MichaelDvP) #603
    • c78a42e: fix offset of dummy reply (MichaelDvP) #603
    • 9a708a2: ignore tx-read errors for higher offsets (MichaelDvP) #603
    • a20b6b5: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (MichaelDvP) #603
    • f6c5a4d: fix #601 dhw modes for RC300 (MichaelDvP) #603
    • a56c847: update packages (MichaelDvP) #613
    • a020a48: network/mqtt init fix #42 (MichaelDvP) #613
    • eda203e: formatting (proddy)
    • 326f05d: updated packages (proddy)
    • fc057d1: Merge remote-tracking branch 'origin/dev' (proddy)
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(20.26 KB)
    EMS-ESP-3_4_2-ESP32.bin(1.74 MB)
  • v3.4.1(May 29, 2022)

    [3.4.1] May 29 2022

    Fixed

    • Fix memory leak in api #524

    Changed

    • Controller data in web-ui only for IVT #522
    • Rename hidden climate to a more explaining name #523
    • Minor changes to the Customizations web page #527

    Commits

    • 472b97e: update to 3.4.1b0 (Proddy)
    • c32cdf5: React18 modifications (Proddy) #521
    • 77a8857: fix #522, device-flag for IVT controller (MichaelDvP) #525
    • d2609e4: fix #523, rename 'climate' to more explaning name (MichaelDvP) #525
    • 34cb3ad: fix #524, free memory of json response (MichaelDvP) #525
    • 89b0711: changelog (MichaelDvP) #525
    • 2d50f18: changelog from 3.4.0 (MichaelDvP) #525
    • c4cfabf: update test data for customizations (Proddy) #527
    • 31627bb: remove debug_flags (Proddy) #527
    • a9064ba: 3.4.1b1 (Proddy) #527
    • cba0813: rename generate_values_web_customization (Proddy) #527
    • af7cd7b: rename generate_values_web_customization (Proddy) #527
    • 2c468c7: formatting (Proddy) #527
    • 6ec67f7: rename ha_climate_config_creation (Proddy) #527
    • be844a5: if no fullname, use shortname in customizations json (Proddy) #527
    • f8bf6b5: fix isCmdOnly() function for commands like reset (Proddy) #527
    • 8824f4f: added formatName so hidden entities render nicely (Proddy) #527
    • 1e082f9: customizations, swap shortname and fullname, using id as unique shortname (Proddy) #527
    • 1fbd69b: fixes to customizations (Proddy) #527
    • 55133b0: typo (Proddy) #527
    • 356390c: fix standalone server for handling customizations (Proddy) #527
    • e4447ee: improved icon toggling (Proddy) #527
    • c693ef6: update packages (Proddy) #527
    • 3e7b743: updated changelog for 3.4.1 (Proddy) #527
    • 4352188: #513 (Proddy) #527
    • 18e9b99: Merge remote-tracking branch 'origin/dev' into main (Proddy)
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(21.39 KB)
    EMS-ESP-3_4_1-ESP32.bin(1.73 MB)
  • v3.4.0(May 23, 2022)

    Added

    • WebUI optimizations, updated look&feel and better performance #124
    • Auto refresh of WebUI after successful firmware upload #178
    • New Customization Service in WebUI. First feature is the ability to enable/disabled Enitites (device values) from EMS devices #206
    • Option to disable Telnet Console #209
    • Added Hide SSID, Max Clients and Preferred Channel to Access Point
    • Merged in MichaelDvP's changes like Fahrenheit conversion, publish single (for IOBroker) and a few other critical optimizations
    • Enabled bi-directional read/write with Home Assistant, so values can be changed automatically from the UI without scripting #265
    • Added GC7000F Boiler #270
    • Revised LED flash sequence on boot up to show system health (1 flash=no ems, 2 flashes=no wifi) #224
    • Analog Sensor support #271
    • Solar cylinder priority #247
    • Read only mode in Settings, where EMS Tx/Write commands are blocked #286
    • Added 8700i Boiler device
    • Added Cascade CM10 Controller device
    • Add Olimex ESP32-POE-ISO to board profiles plus settings to customize Ethernet modules #301
    • Help text for string commands in WebUI #320
    • Germany translations (at compile time)
    • #entities added to system/info` endpoint #322
    • analog outputs digital/pwm/dac
    • remove MQTT retained configs if discovery is disabled
    • timeout 10 min for MQTT-QoS wait
    • Moduline 300 auto-temperatures T1-T4, RC300 romminfluencefactor
    • RC35 parameters #392, #398
    • sync time with thermostat #386, #408
    • set mode has immediate effect #395
    • min/max in web value setting
    • Extend customization to select if an entity is to be shown in the WebUI or forced as read-only #317
    • Added Moduline 400 installation parameters PR #449 by @kwertie01
    • Read time from IVT-controller #439
    • Hybrid Heatpump product-id 168 #459, thermostat settings
    • Junkers ISM2 and IPM in warm water mode #437
    • Added Shower Alert trigger time and cold shot time #436
    • Improved Table layout in Web UI (searching, filtering, sorting, exporting to CSV)
    • API fetch individual attributes from an entity #462
    • Option to disable mDNS
    • Option for rendering booleans on dashboard #456
    • Upload customization settings from a file #256

    Fixed

    • lastcode broke MQTT JSON structure #228
    • fixed issue with overlapping while reading sequence of EMS1.0 telegrams
    • fixed redundant telegram readings (because of offset overflow)
    • added missing RC30/Moduline 400 #243
    • Correct modes for RC25 #106
    • Clean up old HA config's in MQTT before publishing data. This will prevent HA giving the 'dict' warnings #229
    • RC25 temperature setting #272
    • Buderus RC25 - "hc1 mode type" incorrect value #273
    • Increased number of Mixers and Heating Circuits #294
    • Check receive status before removing a telegram fetch #268, #282
    • Fix uploading firmware on OSX #345
    • Non-nested MQTT would corrupt the json #354
    • Burner selected max power can have a value higher than 100% #314
    • some missing fahrenheit calculations
    • limited number of exclusions #339
    • MQTT sometimes would not reconnect after a WiFi outage

    Changed

    • Use flash system to show system health (1 flash=no ems, 2 flashes=no wifi) #224
    • Renamed Dallas Sensor to Temperature Sensor in UI
    • Dallas Format removed. Use the name to give each sensor an alias
    • No longer MQTT subscribes to topic /thermostat_hc<n> as it supports a path similar to the API endpoint construct
    • Show Sensors quality in WebUI
    • Controller not shown in WebUI dashboard
    • renamed "Home Assistant Integration" to "MQTT Discovery" in MQTT Settings #290
    • Show ems tx reads and writes separately
    • Show ems device handlers separated for received, fetched and pending handlers.
    • Wired renamed to Ethernet
    • removed system/pin command, new commands in analogsensors
    • system/info device-info split to name/version/brand
    • exclude list uses short-names, possible flags for web/api/mqtt excludes, readonly and favorite (selection not yet implemented)
    • thermostat clock formate date-time: dd.mm.yyyy hh:mm
    • RC300 summermode as other thermostats winter/summer instead of off/on

    BREAKING CHANGES:

    • Settings:
      • order of Boolean Format has changed in Application Settings - check your settings
      • Dallas Format setting removed. Now customize name of each Dallas sensor via the UI
    • MQTT/API
      • Boiler wwheat renamed to ww3wayon #211
      • Boiler ww tag renamed to dhw. Any custom Home Assistant lovelace dashboards will need updating.
      • Renamed description of wwtapactivated to "turn on/off DHW". Otherwise would have looked like "boiler_dhw_turn_on_off_dhw" in HA.
      • /api/system/info endpoint has updated keys. Now lowercase, no underscores and not capitalized. Replace "handlers" with "handlers received", "handlers fetched" and "handlers pending".

    Commits

    • 786a94b: try to fix #408 and #412 (MichaelDvP) #424
    • 9775cc7: update packages (proddy) #425
    • 4bcbcf4: update test data (proddy) #425
    • 4118a57: enum for dv flags (proddy) #425
    • a5ba70a: some cosmetic changes (proddy) #425
    • d3002ce: show all mask icons (proddy) #425
    • 4f1b768: Merge branch 'emsesp:dev' into dev (Proddy) #425
    • 5096964: put total at start of description #418 (proddy) #426
    • 2bf7bf3: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into dev (proddy) #426
    • 07b438f: add NTP status to mqtt/ha (heartbeat) and log (MichaelDvP) #427
    • c41344e: Merge branch 'emsesp:dev' into dev (Proddy) #426
    • 9e5fdb7: use boolean rendering to fix Web errors with enums (proddy) #429
    • cb9ddb2: show commands differently (proddy) #429
    • 84e21ab: layout changes to help text (proddy) #429
    • 7c37c9a: recreate ha config on readonly changes (MichaelDvP) #430
    • 55d7ef1: boiler Errormessage 0xBF to trigger 0xC2 reading (MichaelDvP) #430
    • 744154c: make customization change test data (proddy) #431
    • 2ebb77f: don't prefix a count with more than 1 thermostats (proddy) #431
    • cf4fa9e: formatting icon table (proddy) #431
    • efd758d: seltemp command, check mode first for RC30_n and Junkers (MichaelDvP) #432
    • eeec714: fix mode preset after change for different thermostats (MichaelDvP) #432
    • ad27f76: update packages (Proddy) #434
    • b455827: Merge branch 'emsesp:dev' into dev (Proddy) #434
    • d427a4b: smaller icons (Proddy) #434
    • d747ba0: check readonly before set datetime to thermostat (MichaelDvP) #435
    • 4c2408d: add ISM2 and DHW module #437 (MichaelDvP) #445
    • 6069af3: ISM2 missing values, ISM2dhw in solar class (MichaelDvP) #445
    • ae16d01: add comment about has_cmd (Proddy) #442
    • 14593f6: reset some test data (Proddy) #442
    • 4f3dacf: make deviceentity.w mandatory (Proddy) #442
    • 4a56726: bump version (Proddy) #442
    • 77f583f: only add entities who's mask has changed to list (Proddy) #442
    • b2de5d4: small code changes (Proddy) #442
    • fce9a25: add const function (Proddy) #442
    • 1f8213e: changes for handling entities in customization (Proddy) #442
    • 38128f7: changes to mask_entity() (Proddy) #442
    • 9774661: send complete list of entites to server (Proddy) #442
    • d94eb26: solar mqtt (MichaelDvP) #445
    • 728ccae: dont set ivt clock automaically (MichaelDvP) #445
    • 7553684: customization advice with selected icons (MichaelDvP) #445
    • 45e0998: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (MichaelDvP) #445
    • f02621d: formatting (MichaelDvP) #445
    • 917e4f5: check/format solar (MichaelDvP) #445
    • 26758b9: ivt clock check dst (MichaelDvP) #445
    • 462bf81: ntp status and time button (MichaelDvP) #445
    • 30d6fc0: customization buffer 4k, log(debug) buffer size (MichaelDvP) #445
    • 51af4b3: removed comments (Proddy) #447
    • d9716ce: added debug line for customization (Proddy) #447
    • 077c20f: minor formatting (Proddy) #447
    • 4fc5932: only send back changed entities, put in limit at 50 #444 (Proddy) #447
    • 2674b3a: added moduline 400 installation parameters (kwertie01) #449
    • 4a93adb: remove aliases (Proddy) #452
    • 503df08: fix saving customizatons #450 (Proddy) #452
    • 3d8396a: added moduline 400 additions (Proddy) #453
    • 56bb543: updated packages (Proddy) #453
    • d5245f7: added missing v3.3.1 to the changelog history (Proddy) #453
    • 4eddad2: mqtt clean session default off #441 (Proddy) #455
    • f9b2a71: tag to wwstarts2, thermostat clock format, formatting (MichaelDvP) #457
    • f771bb8: add clock to controller #439 (MichaelDvP) #457
    • d203092: Don't show banner while uploading (MichaelDvP) #457
    • 9c68142: mqtt HA uses only json, disable single (MichaelDvP) #458
    • 15a8d6d: add Hybrid Heatpump (MichaelDvP) #460
    • 6d6cb75: update hybrid heatpump #459 (MichaelDvP) #471
    • cf876ac: rename hybrid entities (MichaelDvP) #471
    • 75914da: thermostat switchpoints allow T1-T4 (MichaelDvP) #471
    • 0d79138: product-id 100 is mixer with max wwc10, add handlers_ignored (MichaelDvP) #471
    • eec4d78: move Hybrid settings to thermostat (MichaelDvP) #471
    • 4009a1a: b12, cleanup, formatting, small fixes (MichaelDvP) #471
    • 49eb049: Added Moduline 400 WW settings and clock program (kwertie01) #467
    • cffc269: fix wrong offset in set_party (kwertie01) #467
    • 5882218: fix sunday in dayofweek enum (kwertie01) #467
    • ec1b0b3: add IPM ww-parameters to mixer (MichaelDvP) #471
    • 8839909: Added Moduline 400 WW settings and clock program (kwertie01) #467
    • f23bf27: fix wrong offset in set_party (kwertie01) #467
    • 7bad5d1: fix sunday in dayofweek enum (kwertie01) #467
    • 9f86444: Merge branch 'feature/moduline400WWandTimer' of https://github.com/kwertie01/EMS-ESP32 into feature/moduline400WWandTimer (Friso) #467
    • 9ed2a99: fix duplicate functions after rebase (Friso) #467
    • 94f5d4d: fix set_switchtime (MichaelDvP) #471
    • b59ef15: fixed set_switchtemp, process_RC20Timer (Friso) #467
    • 258db5c: disable usage of T0 for RC30 in set_switchtime (Friso) #467
    • 4cdeef2: fixed T1 to T4 for RC20 (Friso) #467
    • 47410ce: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev_ (MichaelDvP) #471
    • 2a4288e: initial commit with new table code (Proddy) #475
    • a9a11f4: add comment to boiler: hybrid heatpump (MichaelDvP) #471
    • cd5fef6: add export button (Proddy) #475
    • 9e29313: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into newtable (Proddy) #475
    • 4b3b952: changes to backend, some refactoring (Proddy) #475
    • 04a374c: more tables (Proddy) #475
    • 2f21c89: fix dallas sensor checking (Proddy) #475
    • 275044b: customizations table part 1 (Proddy) #475
    • 9d7820d: togglebutton (proddy) #475
    • 615e86d: update (Proddy) #475
    • 3acb9c4: formatting (proddy) #475
    • 3c9cad2: add set all enabled button (proddy) #475
    • 52847b0: text changes (proddy) #475
    • 9f6bbac: formatting (Proddy) #475
    • 22595b0: show resize column header bars, disable default sorting (Proddy) #475
    • d76a838: Increase range for the selected_room_temperature variable (bavo) #472
    • 15f5f55: Merge branch 'emsesp:dev' into dev (Proddy) #475
    • 09d25c0: add search (Proddy) #475
    • 929a976: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into dev (Proddy) #475
    • 56860da: remove TODO on sorting (proddy) #475
    • 726b4fc: more updates to tables (proddy) #475
    • 9ff4979: fix to arduino 3.5.0 (proddy) #475
    • c0c33d8: fix typo in sorting (proddy) #475
    • b2a885b: hide web also deselects favourite (proddy) #475
    • 271b36c: update packages (proddy) #475
    • c80d5c6: fix sort when click on icon and 3-way sort cycle (proddy) #475
    • b688f6f: b13 (Proddy)
    • 343d0a7: fix arduino core to 3.5.0 for ci jobs (Proddy)
    • eafec30: hp full names lower case (see #450) (MichaelDvP) #478
    • 00abae1: network security names fixed (MichaelDvP) #478
    • 4bba52a: native boolean values in commands, fix #476 (MichaelDvP) #478
    • a721826: fix Updating table component in the WebUI to support sorting & filtering #470 (Proddy) #481
    • 7130513: update packages (Proddy) #481
    • 0143e89: table formatting (Proddy) #481
    • 6b315d5: update axioserror (Proddy) #481
    • 6241999: more formatting (Proddy) #481
    • 2c490e4: possible fix for #476 (Proddy) #481
    • 7fe2b84: b14 (Proddy) #481
    • c1a71af: update ArduinoJson to 6.19.4 (Proddy) #481
    • da2c818: table formatting (Proddy) #481
    • 3ff75db: add more minor formatting (Proddy) #482
    • 2c54caf: Merge branch 'emsesp:dev' into dev (Proddy) #482
    • 08135ba: update dropzone (proddy) #483
    • a0759f6: Merge branch 'emsesp:dev' into dev (Proddy) #483
    • 191e47e: rename value to stop static code analysis complaining (Proddy) #484
    • 270b81f: static code analysis warning fixes (Proddy) #484
    • 5e9e995: added shower trigger and coldshot times - #436 (Proddy) #484
    • 473b870: Merge branch 'emsesp:dev' into dev (Proddy) #484
    • 5438d7b: API extract individual attributes - #462 (Proddy) #485
    • 75317d2: Merge branch 'emsesp:dev' into dev (Proddy) #485
    • 883c813: package updates (Proddy) #486
    • 7172ed3: make table headers consistent (Proddy) #486
    • 66b3572: Merge branch 'emsesp:dev' into dev (Proddy) #486
    • 8e65e31: table formatting (Proddy) #487
    • 931782d: Merge branch 'emsesp:dev' into dev (Proddy) #487
    • 501726c: remove comments, render nicer on mobiles (Proddy) #488
    • c2f3839: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into dev (Proddy) #488
    • 7f405e5: Merge branch 'emsesp:dev' into dev (Proddy) #488
    • e00da5a: add option to switch mDNS off/on (MichaelDvP) #489
    • 5d2f648: add option for rendering booleans on Dashboard #456 (MichaelDvP) #489
    • 39d9eec: mdns in lib_standanlone (MichaelDvP) #492
    • 90aa385: shower-times in system/settings (MichaelDvP) #492
    • b2429e3: charset for plain text output (MichaelDvP) #492
    • 1a5b012: csv utf-8 with semicolon and Intl.Number format (MichaelDvP) #492
    • 6277fbb: api entitiy attributes with hcs (MichaelDvP) #493
    • 4f399b5: package updates (Proddy) #494
    • b35ab94: upload script example (Proddy) #494
    • f243162: comments (Proddy) #494
    • upload customization settings from a file #256 #494 (Proddy)
    • 02fc579: remove id (Proddy) #494
    • c49928b: remove id in User (Proddy) #494
    • a383925: fix axios error reporting (Proddy) #494
    • 84a2a73: comments (Proddy) #494
    • cb16be6: remove id from User (Proddy) #494
    • 964e75e: minor change (Proddy) #494
    • ee04927: text change (Proddy) #494
    • ce60bd1: telnet and analog on by default (Proddy) #494
    • fd53999: Merge branch 'dev' of https://github.com/proddy/EMS-ESP32 into dev (Proddy) #494
    • 87c9d4d: fix duplication (Proddy) #494
    • c0aa263: parse_command checks prefix-numbers and prefix id (MichaelDvP) #493
    • 0faa56f: Merge branch 'emsesp:dev' into dev (Proddy) #494
    • 1f933fb: updates for #256 (Proddy) #494
    • 8b521aa: fix standalone compiling (Proddy) #495
    • 8dab64b: Merge branch 'emsesp:dev' into dev (Proddy) #495
    • 0e9202a: change to saving customization file after upload (Proddy) #502
    • db8c30d: fix for customizations after upload new file (Proddy)
    • 0802113: Merge branch 'emsesp:dev' into dev (Proddy) #502
    • 226a557: prevent build failing (Proddy)
    • 7e26c06: Merge branch 'emsesp:dev' into dev (Proddy) #502
    • 1863e57: fix #496, RC30 design temp (MichaelDvP) #497
    • f3e99f9: Add HM200 hybrid manager as heatpump (MichaelDvP) #506
    • 1bdaaf0: Merge branch 'emsesp:dev' into dev (Proddy) #502
    • ae9af3b: update packages (Proddy) #502
    • fc29a3a: replace api/settings and customizatons with secure REST calls #501 (Proddy) #502
    • 3a04e89: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (MichaelDvP) #506
    • 6072606: heatpump summer mode, fix #503 (MichaelDvP) #506
    • e175b5a: heatpump summermode -> heatpump operatingsmode (MichaelDvP) #506
    • 33e58ec: RC30 designtemp write, 2.fix #496 (MichaelDvP) #506
    • 9034c16: wwFlowTempOffset RC310 (tp1de) #510
    • c481e1f: wwcomfort1 for UBAParameterWWPlus (RC310) (tp1de) #510
    • e2de89c: Update locale_EN.h (Thomas) #510
    • 571f557: wwchargeoptimization UBAParameterWWPlus (tp1de) #510
    • 6fef399: locale_EN.h (tp1de) #510
    • 353853a: max must be a integer (changed 19.9 to 20) (Proddy) #511
    • 6545dbd: updated packages (Proddy) #511
    • f9d4690: updated URL for api/system/info (Proddy) #511
    • 8afb5b3: formatting (Proddy) #512
    • 5b4c5b0: increase # devices supported (Proddy) #512
    • 7ea6c54: updated screenshots (Proddy) #512
    • 9310f60: change tooltips #504 (Proddy) #512
    • c637dcb: wwmaxtemp for RC310 (tp1de) #514
    • 4263860: Merge branch 'dev' of https://github.com/tp1de/EMS-ESP32 into dev (tp1de) #514
    • 5ab22af: correct boilers.h (tp1de) #514
    • 2c0c5ba: emergencyops and emergencytemp for RC310 (tp1de) #515
    • 22668d7: upgrade to react18 (Proddy) #516
    • 86b79a2: package update (Proddy) #518
    • b9f63bc: autoformatting (Proddy) #518
    • f412ddc: Merge remote-tracking branch 'origin/dev' into main (Proddy)
    • a47e0e8: update for 3.4.0 (Proddy)
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(20.94 KB)
    EMS-ESP-3_4_0-ESP32.bin(1.72 MB)
  • v3.3.1(Jan 20, 2022)

    Changed

    • lastcode broke MQTT JSON structure #228
    • overlapping while reading sequence of EMS1.0 telegrams
    • redundant telegram readings (because of offset overflow)
    • added missing RC30/Moduline400 #243
    • check received status before toggling fetch on empty telegram [#268][#282]

    Commits

    • b0a0974: 3.3.1b0 (proddy)
    • 3c6fd0c: Update boiler.cpp (pswid) #234
    • 69976c2: Update CHANGELOG_LATEST.md (pswid) #234
    • 92da613: Update boiler.cpp (pswid) #234
    • 1343bbf: fix overlapping 0xC2 and overflow of offset (pswid) #235
    • 9cd20cf: fix overlaping while reading sequence of EMS1.0 telegrams (pswid) #235
    • 7f30e8d: fix overlaping while reading sequence of EMS1.0 telegrams (pswid) #235
    • 312f969: add back RC30 - Setting mode on a RC30/Moduline400 via MQTT in HA doesn't work #243 (proddy) #245
    • e9588cc: check received status before toggling fetch on empty telegram (MichaelDvP) #307
    • 29110e9: Merge remote-tracking branch 'origin/dev' (proddy)
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(14.11 KB)
    EMS-ESP-3_3_1-ESP32.bin(1.57 MB)
  • v3.3.0(Nov 28, 2021)

    Added

    • Add system commands for syslog level and watch #98
    • Added pool data to telegrams 0x494 & 0x495 #102
    • Add RC300 second summermode telegram #108
    • Add support for the RC25 thermostat #106
    • Add new command 'entities' for a device, e.g. http://ems-esp/api/boiler/entities to show the shortname, description and HA Entity name (if HA enabled) #116
    • Support for Junkers program and remote (fb10/fb110) temperature
    • Home Assistant state_class attribute for Wh, kWh, W and KW #129
    • Add current room influence for RC300 #136
    • Added Home Assistant device_class to sensor entities
    • Added another Buderus RC10 thermostat with Product ID 65 #160
    • Added support for mDNS #161
    • Added last system ESP32 reset code to log (and system info output)
    • Firmware Checker in WebUI #168
    • Added new MQTT setting for enabling 'response' topic
    • Support for non-standard Thermostats like Tado #174
    • Include MQTT connection status in 'api/system/info'
    • Include Network status in 'api/system/info' and also the MQTT topic info #202
    • Added Ethernet PHY module as an option in the Board Profile #210

    Fixed

    • MQTT reconnecting after WiFi reconnect #99
    • Manually Controlling Solar Circuit #107
    • Fix thermostat commands not defaulting to the master thermostat #110
    • Enlarge parse-buffer for long names like cylinderpumpmodulation
    • MQTT not subscribing to all device entities #166
    • Help fix issues with WebUI unable to fully load UI over Ethernet #177
    • Shower alert never reset after limit reached when enabled [(PR #185)]
    • Remove HA entity entries when a device value goes dormant #196
    • deciphering last error code dates on 0xC2 telegram #204

    Changed

    • Syslog BOM only for utf-8 messages #91
    • Check for KM200 by device-id 0x48, remove tx-delay #90
    • rename fastheatupfactor to fastheatup and add percent #122
    • "unit" renamed to "uom" in API call to recall a Device Value
    • initial backend React changes to replace the class components (HOCs) with React Hooks
    • Use program-names instead of numbers
    • Boiler's maintenancemessage always published in MQTT (to prevent HA missing entity)
    • Unit of Measure 'times' added to MQTT Fails, Rx fails, Rx received, Tx fails, Tx reads & Tx writes
    • Improved API. Restful HTTP API works in the same way as MQTT calls
    • Removed settings for MQTT subscribe format #173
    • Improve Nefit Moduline 200 functionality #183
    • status in the MQTT heartbeat renamed to bus_status
    • Layout changes in the WebUI, showing stripped table rows in Dashboard
    • Alternative font for log window #219

    BREAKING CHANGES

    • API: "unit" renamed to "uom" in API call to recall a Device Value
    • HA: sensor.boiler_boiler_temperature renamed to sensor.actual_boiler_temperature
    • HA: binary_sensor.boiler_ww_disinfecting renamed to binary_sensor.boiler_ww_disinfection
    • HA: # removed from counts in MQTT Fails, Rx fails, Rx received, Tx fails, Tx reads & Tx writes
    • txread renamed to txreads and txwrite renamed to txwrites in MQTT heartbeat payload
    • 'dallas sensors' in api/system/info moved to the "System" section. Renamed "uptime (seconds)" and "reset reason"
    • status in the MQTT heartbeat renamed to bus_status

    Commits

    • 3b2a89d: solar turnOnOffDiff allow setting decimals #107 (MichaelDvP)
    • d0346e4: remove PSTR() (proddy)
    • 538a9cf: mention RC25 support (proddy)
    • db34785: add missing offset to telgram::to_string() (MichaelDvP)
    • 1159006: fix wwcharge-command #112 (MichaelDvP)
    • 78b2efd: add rounding test (proddy)
    • 28bf7c3: formatting (proddy)
    • adebea1: add pseudo for snprintf_P (proddy)
    • 079a40c: update to 16.18.4 (proddy)
    • b214d7a: extended test for ha and entities command (proddy)
    • ee34dd7: rename snprintf_P to snprintf (proddy)
    • 401929d: round2 use float instead of double (6 point precision is enough) (proddy)
    • 418b1b3: bump (proddy)
    • e01bfe1: rename duplicate function publish_mqtt_ha_sensor (proddy)
    • 2adef52: add "entitied" as new command (proddy)
    • 500e089: for standalone ncrease mem due to compiler (proddy)
    • f8bee9b: formatting (proddy)
    • bea0b4b: add entities command, only show master thermostat if >1 thermostats (proddy)
    • 0ebd9e1: make sure all std::strings are consts (proddy)
    • 88a4275: rename snprintf_P, rename unit to uom (proddy)
    • 56f1c79: snprintf_P rename (proddy)
    • a9748f5: snprintf_P to snprintf() again (proddy)
    • 258bc2b: increase json before from 4KB to 16KB (EMSESP_JSON_SIZE_XXLARGE_DYN) (proddy)
    • 915749d: updated (proddy)
    • 5686094: factor for charge duration (MichaelDvP)
    • e92a3ad: add MM10 valvetime (MichaelDvP)
    • 2516d2d: add boiler disinfect command (MichaelDvP)
    • 6a828e9: Merge branch 'dev_' into dev (MichaelDvP)
    • 769301c: rename boiltemp to 'actual boiler temperature' https://github.com/emsesp/EMS-ESP32/discussions/115 (proddy)
    • 6d12fff: add API test (proddy)
    • 1a71921: remove debug (proddy)
    • d8add7e: rename DeviceValueType::TEXT to STRING and ignore UOM if its NONE (proddy)
    • b1f59d4: ignore UOM if its TEXT (proddy)
    • 09d8a63: only use UOM of NONE for hidden Device Values (proddy)
    • a31cf53: replace class components (HOCs) with React Hooks (proddy)
    • 16e390f: v3.3 (proddy)
    • fcc2c0b: fastheatup as percent-value, enlarge parse-buffer #122 (MichaelDvP)
    • 6ef8ff7: add check to prevent crash on null strings (proddy)
    • ba3d491: updated packages (proddy)
    • 252554e: added comment about nesting (proddy)
    • 8fab4e2: use float instead of double (proddy)
    • 30d1e7e: bump version (proddy)
    • 906813b: don't show handlers if there arn't any (proddy)
    • 4d88c6a: add comments about nesting (proddy)
    • 54199af: removed DeviceValueUOM::TEXT (proddy)
    • d4b06cf: formatting (proddy)
    • f836209: added output target when rendering json (proddy)
    • 3086342: fix bug in nested json and added output targets (proddy)
    • c3874d7: remove DeviceValueUOM::TEXT (proddy)
    • eba6324: more API tests (proddy)
    • 29f2335: remove DeviceValueUOM::TEXT (proddy)
    • 8523cdf: Merge branch 'ft_reacthooks' into dev (proddy)
    • 80fedf3: fix not showing dv is UOM is NONE (proddy)
    • 548b5ff: remove unused check (MichaelDvP)
    • 87774e7: fix some thermstat uoms (MichaelDvP)
    • b631030: add C2 error message, fix a uom (MichaelDvP)
    • 7942d52: npm audit fix (MichaelDvP)
    • 89a249e: add breaking changes (proddy)
    • b111869: remove invalid UOMs (MichaelDvP)
    • 4f927ee: remove unused type from form (MichaelDvP)
    • 6a134dd: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (proddy)
    • 9378fdf: use TAG_DEVICE_DATA_WW (MichaelDvP) #130
    • 84cc964: 3.2.2b8 (proddy)
    • a6095fc: init poolShuntStatus__ as its not done in the constructor (proddy)
    • 33d7ba1: reduce variable scope (proddy)
    • ced4403: fix possible buffer overflow (proddy)
    • da5b4aa: add test for MQTT heatingactivated (proddy)
    • 9100587: use device names from flash (MichaelDvP)
    • fcc521d: enum thermostat programs, add junkers remote, program (MichaelDvP)
    • 2c337f1: fixed #129 (proddy) #134
    • 24fae0d: updated comment (proddy) #134
    • 49c7c7a: Added CONNECT device 0x236 "Wireless sensor base" (sunbuzz) #135
    • 9f49afa: read wwSelTemp/wwDisinfectionTemp from 0xEA, #96 (MichaelDvP)
    • 7b0f7cd: fix typo wW->ww (MichaelDvP)
    • 98828ed: another typo (MichaelDvP)
    • 0b0b1d9: rename internal names wW/warmwater to ww (MichaelDvP)
    • 4f24035: add id to solar ww-circuit (MichaelDvP)
    • eea32ad: add RC30 ww parameters, #117 (MichaelDvP)
    • 85f54dd: add current room influence #136 (MichaelDvP)
    • b1e1c44: add divider #136 (MichaelDvP)
    • 9d7c2de: rename HA icon mdi:flash-circle to mdi:lightning-bolt-circle (Proddy)
    • d6711ac: always show a maintenancemessage even if there isn't one, so its not missing in the MQTT boiler_data payload (Proddy)
    • f42c265: minor text changes (Proddy)
    • 6433d5f: formatting (Proddy)
    • 3113d39: minor text changes (Proddy)
    • cddadcf: changes to allow restart command from API to complete before rebooting (Proddy)
    • ded90dc: minor text changes (Proddy)
    • f2457a7: auto-formatting (Proddy)
    • 676268d: rename rxread/txread to rxreads/txreads (Proddy)
    • 50befd8: add HA device_class (Proddy)
    • 3ecf92f: add times as a new HA UOM - #156 (Proddy)
    • 2d1126b: updated comment (Proddy)
    • 0c50233: removed # (e.g in front of starts) (Proddy)
    • 372aee3: removed # in front of telegram count (Proddy)
    • 25616ae: added time to UOM and replaced seconds with second (pluralization handled in code) (Proddy)
    • 22a2b92: added number formatting and pluralization for uom times and seconds (Proddy)
    • 6a259f7: removed # from comments (Proddy)
    • d8191f7: removed # from comments (Proddy)
    • 0b796a8: use DeviceValueUOM::TIMES for all 'starts' which count numerically (Proddy)
    • c029cf7: use smaller json key names, increase buffer size. fixes #157 (Proddy)
    • 235f789: increase max dallas sensors from 10 to 20 - #157 (Proddy)
    • e4b7314: enlarge filesystem buffer (MichaelDvP)
    • b3453d9: no need to recompile C++ code if Web code doesn't change (Proddy)
    • 6582ba6: added another Buderus RC10 - #160 (Proddy)
    • 4d5f588: reset reason to system info (MichaelDvP)
    • b77a56a: timeout 60s for KM200 wait #160, reset-reason to log (MichaelDvP)
    • 2657b9d: do not fetch broadcasted telegrams 0x14/0x19 (#160) (MichaelDvP)
    • e17ce9c: Junkers modetype #163 (MichaelDvP)
    • 45fc6da: Add support for mDNS #161 (proddy)
    • 752530a: auto formatting (proddy)
    • 48cedbd: fix standalone building (proddy)
    • 8fed47f: fix case fall through for HA state_class (proddy)
    • f30d3cf: update test data for standalone (proddy)
    • d587f44: updated (proddy)
    • aad4b0a: change text about MQTT subscribe formats (proddy)
    • 7f3ff43: add test for Dan "ems-esp/boiler/wwcircpump with payload off" (proddy)
    • 547ccb9: Thermostat 0x65 to RC20_N, #160 (MichaelDvP)
    • 4f47712: minor formatting (proddy)
    • b3472c3: add test for 'send' command (proddy)
    • fb7bafd: fix display of mqtt subscriptions (proddy)
    • 50f6d0a: fixes #166 (proddy)
    • df13081: update URL (proddy)
    • c387f65: some minor refactor (proddy)
    • 337c07d: firmware version checker in Web - #168 (proddy)
    • 068bb5c: fix obsolete JS in padding & justification (proddy)
    • aaab9f4: text change (proddy)
    • becaff0: updated with #168 (proddy)
    • 3001a2d: fix #169, prod-id:111 settings use telegram 0x179 (MichaelDvP)
    • be27033: typo (MichaelDvP)
    • 47cb296: updates to #168 (proddy)
    • 40a7026: update example with ESP32 core debug levels (Proddy)
    • d5f8419: do not fetch CRF200 monitor #138 (MichaelDvP)
    • 01bace4: Refactor MQTT subscriptions #173 (proddy)
    • a79a67e: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (proddy)
    • 7cba52d: bump to 3.3.0 (proddy)
    • e6a44c9: be able to set mqtt base (proddy)
    • 2c5c4d6: update test for different mqtt base paths (proddy)
    • 54889fe: fix issue where OK was not sent on successfull API call (proddy)
    • d78fb53: fix for mqtt base paths - Refactor MQTT subscriptions #173 (proddy)
    • b8f69ee: lint warning fix (proddy)
    • b76b6be: logic cleanup (proddy)
    • 5850a82: error handling improvements - Refactor MQTT subscriptions #173 (proddy)
    • 131b936: siwtch info with list - #176 (proddy)
    • e1419ed: more fixes - Refactor MQTT subscriptions #173 (proddy)
    • bf40222: validate devices to see if they are present - Refactor MQTT subscriptions #173 (proddy)
    • fb3de2e: add RC300 wwdisinfect #175 (MichaelDvP)
    • af27101: mqtt subscriptions include device #173 (MichaelDvP)
    • 7a079d8: put/# back - Refactor MQTT subscriptions and API calls #173 (proddy)
    • 0e480bb: add known devices without product-id or version-info #174 (MichaelDvP)
    • 3e0f6f5: bump to 3.3.0b1 (proddy)
    • 452921d: MQTT subscribe to devices - Refactor MQTT subscriptions and API calls #173 (proddy)
    • 8d9fd95: remove useless extra subscriptions #173 (MichaelDvP)
    • f1a859c: show devices with product-id zero, m200 wait improved (MichaelDvP)
    • 95e3a11: add missing RC25 parameters (MichaelDvP)
    • ae4a135: show rf sensor temperature (MichaelDvP)
    • 7bca3fb: rename "name" to "entity" for API key - Refactor MQTT subscriptions and API calls #173 (proddy)
    • 57f5381: add RC20_N write extmintemp, formatting (MichaelDvP)
    • 8284520: increase tcp event queue from 32 to 64 - fixes Launching the WebUI from crashes EMS-ESP on some environments #177 (proddy)
    • 23b6d81: 3.3.0b2 (proddy)
    • 316832f: Show mode (off / heat) in Home Assistant for Moduline 200 (Koen Schaper) #181
    • 95e81ad: auto-fetch 0x14 which is not broadcasted on all boilers - https://github.com/emsesp/EMS-ESP32/issues/160#issuecomment-962444738 (proddy)
    • d20741c: add a little more buffer for concurrent web sockets (proddy)
    • ea550b1: read command checks device id - #184 (proddy)
    • 9406c76: fix shower timer; doing_cold_shot is never being reset + remove unnecessary conditions (Koen Schaper) #185
    • df7be9d: update to 3.3.0b3 (proddy)
    • 578ba38: add moduline200 values #183, RC35 holidays/vacations #182 (MichaelDvP)
    • 95f7583: fix wrong RC10 tag (MichaelDvP)
    • a3022f6: RC35 switchtime for prog 1 and prog 2 (MichaelDvP)
    • b1f72b0: fix crash on empty mqtt-payload (MichaelDvP)
    • 234533f: fix RC35 program no. #182 (MichaelDvP)
    • 88f78f6: fix authentication check for GET commands that need admin - Refactor MQTT subscriptions and API calls #173 (proddy)
    • 05f56be: bump version to 3.3.0b4 (proddy)
    • e821e8d: update (proddy)
    • 5f2a9b0: improve error handling, fix crash on empty /api URL (proddy)
    • e347ac5: formatting and text changes (proddy)
    • a8f1892: rename system/info text, added MQTT status (proddy)
    • d4eaede: text changes (proddy)
    • 3c13c14: fix wwc ids (MichaelDvP)
    • 4f2da03: add hc to console calls (MichaelDvP)
    • ffd61a9: removed unused pragma (MichaelDvP) #188
    • 6c20a5f: prevent double messages in weblog (MichaelDvP) #188
    • 27bfc14: set mode and heatingPID for RC10 #183 (MichaelDvP) #188
    • 09addcb: with the release of espressif32 3.4.0 we don't need the delay anymore for telnet (proddy)
    • 805cef6: fix handling on non json payloads - #173 (proddy) #189
    • c229371: fix typo (proddy) #189
    • 9c5c271: Allow mode "off" to be set from home assistant + remove non available "auto" mode from home assistant (Koen Schaper) #193
    • bf68a55: Update changelog (Koen Schaper) #193
    • f54ccd4: revert auto mode -> the mode is hardcoded for the thermostat_ha_cmd #183 (Koen Schaper) #194
    • a19f2f1: update test data (proddy) #195
    • 999a05f: bump to b6 (proddy) #195
    • fd810ff: add comments on format param (proddy) #195
    • d7576eb: fix bug showing UOM in Console (proddy) #195
    • 9d9ac4e: force temperatures in degrees to always show 1 decimal place (proddy) #195
    • 822f554: tidy up, mention HA enttity fix (proddy) #197
    • cde3b75: update test for 196 (proddy) #197
    • 898e2e5: bump b7 (proddy) #197
    • 7197df9: replace read_flash_string (proddy) #197
    • 72c032a: replace read_flash_string (proddy) #197
    • 27712ba: allow empty payloads, refactor to also delete a HA topic (proddy) #197
    • 5ed3cbe: add days (proddy) #197
    • e2dad61: publish HA config topic after device values (proddy) #197
    • 18f22d3: add state to dv, using DeviceValueState (proddy) #197
    • c0bf623: rename publish_ha* functions (proddy) #197
    • cb2c898: click row to edit (proddy) #197
    • 22c9e3e: tidy up generate_values_json_web (proddy) #197
    • 2458240: b7 (proddy) #197
    • 8b40c92: fixes #199 - change value formats degrees to strings (proddy) #201
    • bffad5e: allow thermostat hc3 on device_id 0x1A - #200 (proddy) #203
    • da20cf1: add Network to MQTT info topic and system/info command (proddy) #203
    • 51d487b: formatting (proddy) #208
    • a63f2e6: fixes #207 - allow both data and value as MQTT keys (proddy) #208
    • 50e54e6: fix removing old HA config topics (proddy) #215
    • 7e4494a: rename status to bus_status in MQTT heartbeat (proddy) #215
    • 4be6626: fixed edge case in shower logic when state didn't change (proddy) #215
    • dc84f91: debug comments (proddy) #215
    • 53de2ca: added ethernet phy type as an option in settings - #210 (proddy) #217
    • bb38458: stripped table rows (proddy) #217
    • 1c6a683: rename bus to bus_status in info command (proddy) #217
    • 07dabb4: fix name of status -> bus_status in heartbeat (proddy) #217
    • 9698035: fix boiler last error code timestamp (pswid) #218
    • 0847ccc: Revert "fix boiler last error code timestamp" (pswid) #218
    • 4fd1d8e: Boiler last error code change (pswid) #218
    • 3dec4bd: fix double click (proddy) #220
    • b2a0519: change font type and size (proddy) #220
    • 1b86314: formatting (proddy) #220
    • ce9b7d1: added test for lastcode (proddy) #220
    • a3391af: bump to b11 (proddy) #220
    • 61e2739: updated for b11 (proddy) #220
    • 611e3b1: Merge remote-tracking branch 'origin/dev' (proddy)
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(13.72 KB)
    EMS-ESP-3_3_0-ESP32.bin(1.57 MB)
  • v3.2.1(Aug 8, 2021)

    Added

    • support for IPv6 (web/api/mqtt, not syslog yet) #83
    • System Log in Web UI will show current time if the NTP Service is enabled #82
    • Network settings for Tx-power, WiFi-bandwidth, WiFi-sleepmode #83
    • optional low CPU clockrate (160 MHz) #83
    • select format for enumerated values in web
    • settings for water hysteresis on/off
    • dallas sensor name editable. sensorname console-command, replace sensorid with a unique name #84
    • 'restart' system command. Can be invoked via API with authentication. #87
    • add Download button in Web UI for log
    • json body in API can now take device, name, cmd, hc and id
    • added example of how to use API directly to control values from Home Assistant
    • API calls are shown in debug log (For troubleshooting)

    Fixed

    • set mode allow numbers
    • Junkers thermostat shows mode as selected by set_mode
    • HA thermostat mode if bool-format: numbers is selected
    • Web UI System Log sometimes skipped a few log messages when watching real-time
    • fix wwactivated #89
    • don't show commands (like reset) as Device values in the Web or Console
    • fixed issue with Home Assistant entity naming where boiler's ww was duplicated in entity name
    • fixed issue where wwSetTemp was written too instead of wwSeltemp

    Changed

    • removed Rx echo failures counting as incomplete telegrams. Bad telegrams show as Warning and not Errors. #80
    • add upload_sec to api/system/info and removed # from some names to keep consistent with MQTT heartbeat
    • added debug target to PlatformIO build to help hunt down system crashes
    • enumerated values always start at zero
    • maintenance settings for time/date as extra setting
    • move api/mqtt formats to settings, add enum format
    • UI improvements for editing Dallas Sensor details
    • RESTful GET commands can also require authentication (via bearer access token) for better security
    • Updated AsyncMqttClient to 0.9.0 and ArduinoJson to 6.18.3
    • Download buttons for settings and info under the Help tab
    • fixed case on mqtt names, like 'wwtankmiddletemp'
    • renamed Product ID to 'EMS Product ID' in Home Assistant
    • removed brackets around tags, e.g. (hc1) selected room temperature" is now just "hc1 selected room temperature"
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(9.25 KB)
    EMS-ESP-3_2_1-ESP32.bin(1.54 MB)
  • v3.2.0(Aug 6, 2021)

    Added

    • support for IPv6 (web/api/mqtt, not syslog yet) #83
    • System Log in Web UI will show current time if the NTP Service is enabled #82
    • Network settings for Tx-power, WiFi-bandwidth, WiFi-sleepmode #83
    • optional low CPU clockrate (160 MHz) #83
    • select format for enumerated values in web
    • settings for water hysteresis on/off
    • dallas sensor name editable. sensorname console-command, replace sensorid with a unique name #84
    • 'restart' system command. Can be invoked via API with authentication. #87
    • add Download button in Web UI for log

    Fixed

    • set mode allow numbers
    • Junkers thermostat shows mode as selected by set_mode
    • HA thermostat mode if bool-format: numbers is selected
    • Web UI System Log sometimes skipped a few log messages when watching real-time
    • fix wwactivated #89
    • don't show commands (like reset) as Device values in the Web or Console

    Changed

    • removed Rx echo failures counting as incomplete telegrams. Bad telegrams show as Warning and not Errors. #80
    • add upload_sec to api/system/info and removed # from some names to keep consistent with MQTT heartbeat
    • added debug target to PlatformIO build to help hunt down system crashes
    • enumerated values always start at zero
    • maintenance settings for time/date as extra setting
    • move api/mqtt formats to settings, add enum format
    • UI improvements for editing Dallas Sensor details
    • RESTful GET commands can also require authentication (via bearer access token) for better security
    • Updated AsyncMqttClient to 0.9.0 and ArduinoJson to 6.18.3
    • Download buttons for settings and info under the Help tab
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(8.60 KB)
    EMS-ESP-3_2_0-ESP32.bin(1.54 MB)
  • v3.1.1(Jun 26, 2021)

    [3.1.1] June 26 2021

    Changed

    • new command called commands which lists all available commands. ems-esp/api/{device}/commands
    • More Home Assistant icons to match the UOMs
    • new API. Using secure access tokens and OpenAPI 3.0 standard. See doc/EMS-ESP32 API.md and #50
    • show log messages in Web UI #71

    Fixed

    • HA thermostat mode was not in sync with actual mode #66
    • Don't publish rssi if Wifi is disabled and ethernet is being used
    • Booleans are shown as true/false in API GETs

    Changed

    • info command always shows full names in API. For short names query the device or name directly, e.g. http://ems-esp/api/boiler
    • free memory is shown in kilobytes
    • boiler's warm water entities have ww added to the Home Assistant entity name #67
    • improved layout and rendering of device values in the WebUI, also the edit value screen

    Bug Fixes

    • move showing version to settings. fixes JWT resetting after each version change (proddy)

    Commits

    • 6c41c49: remove asyncjson.h (proddy)
    • 4a4e5f1: Merge branch 'dev' into ft_https (proddy)
    • c43fe4f: add doc on API spec (proddy)
    • 7d0ed22: auto formatting (proddy)
    • 23218bc: some minor formatting (proddy)
    • 101978f: include fullname in info command (proddy)
    • e113ebd: fetch command also per device type (proddy)
    • a595bde: Merge remote-tracking branch 'origin/dev' into ft_https (proddy)
    • f0e7ede: merge with latest dev (proddy)
    • e97f6c0: Merge remote-tracking branch 'origin/ft_https' into dev (proddy)
    • e9068e7: fix mixer HA-id nested (MichaelDvP)
    • 32f4777: allow not only commands in api (MichaelDvP)
    • 7f52ef8: info shows shortnames, only valid hcs (MichaelDvP)
    • 3c1b30a: auto formatting (proddy)
    • 9211d29: upgrade to 6.18 (proddy)
    • 461aa1f: updated text about bearer token (proddy)
    • 54c2a73: auto formatting (proddy)
    • c0d5bd1: add examples (proddy)
    • d15aa79: add prettier to tidy up typescript (proddy)
    • c6a40d2: auto formatting (proddy)
    • 039d60a: use new API path (proddy)
    • bb262ed: so 'serve' command works for local builds (proddy)
    • bcef360: hide ssid from system settings (proddy)
    • 4a269fd: added hidden commands, sort commands (proddy)
    • efac668: hidden command info_short (proddy)
    • c0cb121: API defauls to hidden command info_short (proddy)
    • ce2fa15: remove TODO (proddy)
    • 4dab735: moved to wiki doc (proddy)
    • 4a06d32: minor comment change (proddy)
    • 81f4724: added new command called commands (proddy)
    • 0e67e83: show commands has a verbose mode (proddy)
    • 370af11: include description in the command (proddy)
    • e19566e: comment change (proddy)
    • dbd3c04: remove comment (proddy)
    • e7dae28: bump version (proddy)
    • 0f78df5: fix formatting (proddy)
    • e0b1ff1: add hosted ems-esp.derbyshire.nl (proddy)
    • f8c7da6: remove ESP8266 AsyncTCP lib (proddy)
    • ed843ba: updated images (proddy)
    • 37bee39: remove (proddy)
    • 57a516a: updated README and images (proddy)
    • 312fd85: prevent multiple reading of long messages with no offset (MichaelDvP) #57
    • fd9ac28: do not publish empty messages, free mem (MichaelDvP) #57
    • bc69ca0: show freemem in KB, add more HA icons (proddy)
    • 28068bd: add SM10 solar values and commands (MichaelDvP) #57
    • 7425d0e: updated with latest changes (proddy)
    • 5cccfac: show mqtt-count and sensor-reads in info (MichaelDvP) #58
    • a9fca73: command default id=-1, command_check, add "warm water" to long names (MichaelDvP) #58
    • bc78dd3: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev_cmd (MichaelDvP) #58
    • 8641e9d: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (MichaelDvP) #57
    • 2f0f45f: fix build error with debug_flag (MichaelDvP) #58
    • 70fd0ad: fix empty commands '/hcx' (MichaelDvP)
    • 4027003: add SM100 values and commands (MichaelDvP)
    • 6ff3d24: add missing names (MichaelDvP)
    • e7dbcca: bump version (proddy)
    • 47eaeba: remove ESP32 (proddy)
    • 7808959: added log.h (proddy)
    • 505e846: added (proddy)
    • e467e73: updated tabs and comma (proddy)
    • 75f3a6f: added eslint to prettier (proddy)
    • ab28013: removed EMSESP_PLATFORM (proddy)
    • 42a3621: updated doc (proddy)
    • 15df0c0: added lint & standalone as targets (proddy)
    • fec5ff3: eslint (proddy)
    • 4d69846: eslint (proddy)
    • 5e7bed1: fix #68, add hc as prefix to web cmd (MichaelDvP)
    • 01fd90f: added more HA icons (proddy)
    • 5b66528: rssi shows real rssi and wifistrength shows % in heartbeat (proddy)
    • 964db8e: more HA icons (proddy)
    • 6a73ee4: more HA icons (proddy)
    • c62183f: comment change (proddy)
    • de63d10: add default HA icon for each device (proddy)
    • 4bce819: fix Incorrect Thermostat mode mapping in Home Assistant (RC310) #66 (proddy)
    • 4a6ca63: add product id to HA, and top of entity list (proddy)
    • 8c48639: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (proddy)
    • b077d86: fixes prefix ww to the HA entity names #67 (proddy)
    • 8530520: updated changelog (proddy)
    • 8dd1880: Update tagged_release.yml (Proddy)
    • 62b15a5: Update pre_release.yml (Proddy)
    • ddb3633: test build (proddy)
    • 8417c71: remove local make (proddy)
    • 9e432ef: remove code check (proddy)
    • 3bc280b: Delete check_code.yml (Proddy)
    • 70943f5: Update pre_release.yml (Proddy)
    • 66f14ff: fix prettier on win10 (proddy)
    • feed65b: don't create HA sensor for wifi rssi if only ethernet (proddy)
    • af41f35: change spelling (proddy)
    • cf416ee: fix spelling (proddy)
    • e9741ea: improve layout, booleans show as a menu (proddy)
    • db43f2d: remove debug log to console (proddy)
    • 8dd18aa: Render values in Web natively #70 (proddy)
    • 5c282b7: fix charging type (MichaelDvP)
    • 40206a2: fix '0 hours' display (MichaelDvP)
    • a84ae9e: fix console commands (proddy)
    • ee6a09c: do not default to info if no command specificied (proddy)
    • b3d6478: add ww to those ww values (proddy)
    • adf4584: remove TAG_DEVICE_DATA_WW (proddy)
    • 07a943e: rename warm water to ww (proddy)
    • cc30e09: TAG_DEVICE_DATA_WW is only for BOILER (proddy)
    • a191240: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (proddy)
    • fad1b09: bump to 3.1.1b6 (proddy)
    • 50540f1: add API to test suite (proddy)
    • 3143ed1: fix comment (proddy)
    • 17a28d2: remove old code (proddy)
    • fc11db0: make 'call system' commands work again (proddy)
    • 9738c08: update package (proddy)
    • fffed3b: comment (proddy)
    • 37da9d3: fix #73 RC300 summersetmode (MichaelDvP)
    • fc2bcd5: log to webui - initial version (proddy)
    • 19b37d9: Show realtime debug log in WebUI #71 (proddy)
    • 7e7bd29: show # messages, use msgpack to compress json (proddy)
    • 270298e: text changes (proddy)
    • 2056d3f: UI updates #71 (proddy)
    • c234503: Merge remote-tracking branch 'origin/ft_webui_log' into dev (proddy)
    • 9ef2e62: update for 3.1.1b7 (proddy)
    • e79d460: replace TRACE with ALL (proddy)
    • fdbbfe8: Update pre_release.yml (Proddy)
    • 1e4eb52: auto formatting (proddy)
    • 469f78a: update node to v16 (proddy)
    • 967eee6: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (proddy)
    • 85161ec: node to v16 (proddy)
    • 2d96aa1: Update pre_release.yml (Proddy)
    • 050c759: fixes #76 (proddy)
    • 65dae7a: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (proddy)
    • e99c920: Update pre_release.yml (Proddy)
    • 82a4f14: added more screenshots (proddy)
    • b5921d1: show TRACE messages correctly (proddy)
    • 4b7aa95: Merge remote-tracking branch 'origin/dev' (proddy)
    • 5bf53c3: 3.1.1 (proddy)
    • 50459a2: force v16 of nodejs (proddy)
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(6.58 KB)
    EMS-ESP-3_1_1-ESP32.bin(1.50 MB)
  • v3.1.0(May 4, 2021)

    Features

    • add remaining mock calls #41 (Proddy)
    • Call commands from the Web UI #18 (Proddy)
    • add generate token endpoint and ui for generating tokens for users (proddy)
    • Mock API to simulate an ESP, for testing web
    • Able to write values from the Web UI
    • check values with "cmd":<valuename> and data empty or ?
    • set hc for values and commands by id or prefix hc<x>+separator, separator can be any char

    Bug Fixes

    • offline standalone compiling (proddy)
    • rx sent -> rx recieved (proddy)
    • Don't create Home Assistant MQTT discovery entries for device values that don't exists (#756 on EMS-ESP repo)
    • Update shower MQTT when a shower start is detected
    • S32 board profile

    Changes

    • Icon for Network
    • MQTT Formatting payload (nested vs single) is a pull-down option
    • moved mqtt-topics and texts to local_EN, all topics lower case
    • Re-enabled Shower Alert (still experimental)
    • lowercased Flow temp in commands
    • system console commands to main

    Commits

    • [81e2c31]: use native esp32 64bit timer for uptime (MichaelDvP) #40
    • [f28fafe]: check all commands lower case (MichaelDvP) #40
    • [5cf41bd]: number format for enum-bool (MichaelDvP) #40
    • [9771ea8]: allow read commands with length (MichaelDvP) #40
    • [d891c7a]: publish command to trigger device-publishes (MichaelDvP) #40
    • [9983269]: allow info command from mqtt, publish in topic:response (MichaelDvP) #40
    • [5c605e1]: move topics/texts to local_EN, some thermostat commands read values (MichaelDvP) #40
    • [6fb8a4b]: changelog, missing macro (MichaelDvP) #40
    • [1b73006]: 3.0.2b0 prep (proddy)
    • [5d21ba2]: Merge branch 'dev' into dev (Proddy) #40
    • [3bacfc3]: value2enum texts from local_EN (MichaelDvP)
    • [d553542]: quick proxy test (proddy)
    • [601f91e]: remove (proddy)
    • [f6fefc9]: update npm (proddy)
    • [74179ab]: add mocks for get and posts (Proddy)
    • [6e3b496]: update packages (proddy)
    • [8c52145]: make all default settings configurable at build (proddy)
    • [3ace3e2]: remove EMSESP_TEST (proddy)
    • [166f8f6]: update packages and readme (proddy)
    • [e1f777e]: updates (proddy)
    • [2021a2e]: fix nodemon for realtime changing of mock values (proddy)
    • [84e76e2]: adjusted network icons (proddy)
    • [7fa93a8]: MQTT Formatting payload (nested vs single) is a pull-down option (proddy)
    • [4f239d0]: re-enable shower alert (proddy)
    • [8c1a138]: update (proddy)
    • [33c3ef6]: bump version to 3.0.2b1 (proddy)
    • [9dbc6d4]: device values table reformatting (proddy)
    • [060802c]: added thermostat temp (proddy)
    • [11bdff9]: show device name in debug (proddy)
    • [5ef1c7e]: more error controls (proddy)
    • [7e19678]: only write access in API is enabled (proddy)
    • [365e2fd]: added temp and seltemp (same) (proddy)
    • [8318981]: formatting (proddy)
    • [314fff5]: formatting (proddy)
    • [5fe5750]: rename register_mqtt_cmd to register_cmd and rename some device names (Proddy)
    • [ed7b2ef]: update with list of enhancements (proddy)
    • [ac26d58]: allow web commands only for admin (MichaelDvP)
    • [b77d9d4]: combine commands and values, some extra commands (MichaelDvP)
    • [4cac160]: mqtt-HA-config dynamically (MichaelDvP) #44
    • [015ab64]: fix publish_ha_config, and add clear (MichaelDvP) #44
    • [9aea9aa]: bump version (Proddy)
    • [dabb48f]: send mqtt when shower starts (Proddy)
    • [4bcc236]: lowercase flowtemp commands (Proddy)
    • [784ba7f]: lowercase flowtemp commands (Proddy)
    • [ddd2684]: tooltip color, edit icon color, text changes (Proddy)
    • [47a401b]: update npm & typescript (Proddy)
    • [8071fe0]: create-react-app uses webpack 4 so compression-webpack-plugin needs to be locked to version 6.1.1. (Proddy)
    • [9f089ba]: back to v5 of compression-webpack-plugin (Proddy)
    • [a9ec926]: update lockfile ver (proddy)
    • [14199ee]: Fix syslog level (MichaelDvP)
    • [73e478c]: Fix syslog level (MichaelDvP)
    • [031f1ab]: right align device/brand (proddy)
    • [e59f349]: increase mqtt payload max size - https://github.com/emsesp/EMS-ESP32/issues/18#issuecomment-821802433 (proddy)
    • [67a8b4e]: Merge remote-tracking branch 'origin/ft_webcallcmd' into dev (proddy)
    • [462a91b]: 3.0.3b2 with mockapi & webcommands (proddy)
    • [cf64147]: More linebuffers to shell (MichaelDvP)
    • timestamp to local, add appname (MichaelDvP)
    • [6b327e3]: move system commands to main (MichaelDvP)
    • [a633225]: Fix #47 Gateway S32 board profile (MichaelDvP)
    • [8ea48f7]: don't publish dallas if there are none (proddy)
    • [48c3aa7]: auto formatting (proddy)
    • [3678050]: larger dialog boxes (proddy)
    • [7baf5c1]: Add value_info (MichaelDvP)
    • [7cabae7]: add thermostat remotetemp (MichaelDvP)
    • [2345575]: value-info enum as text with list (MichaelDvP)
    • [7faa0d6]: Typo (MichaelDvP)
    • [3797342]: Fix codecheck complain (MichaelDvP)
    • [28fde37]: shell reset lineold if edited (MichaelDvP)
    • [c9a30a2]: API output utf-8 (MichaelDvP)
    • [661b879]: fix errormessage for shell-commands (MichaelDvP)
    • [c4e7747]: check devicename lowercase (MichaelDvP)
    • [70d8b68]: id to value_info, alternative prefix to command/value (MichaelDvP)
    • [0a82c28]: add min/max to values, boiler flags, ww-prefix, ha-prefix to mqtt (MichaelDvP) #49
    • [9036967]: do not show hatemp, etc. (MichaelDvP) #49
    • [018b4af]: value_info bool format (MichaelDvP) #49
    • [1bd8349]: auto formatting (proddy)
    • [bf892aa]: bump version (proddy)
    • [2b60eaf]: add heatpump values #45, circuit "ww" to info (MichaelDvP)
    • [e6e507a]: system_info_id=0 for heartbeat output to API (MichaelDvP)
    • [b01264f]: terminal linebuffers on edit (MichaelDvP)
    • [6f435cb]: MC110Status to HT3 boilers (MichaelDvP)
    • [fcc4831]: bool value info, dont show command only in mqtt/telnet (MichaelDvP)
    • [de9ff6a]: fix heatpump value position (MichaelDvP)
    • [44d0b52]: show sent telegram on tx-error (MichaelDvP)
    • [87b2a05]: add CRF200 thermostat flag and no_write (MichaelDvP)
    • [2b95a0d]: add boiler command selburnpow, update packages (MichaelDvP)
    • [4f98b4b]: fix remote thermostat roomtemp (MichaelDvP)
    • [ee5b1b8]: add dallassensors to api-info (MichaelDvP)
    • [1ae7380]: prep for 3.1.0 (proddy)
    • [a57fdaa]: Merge remote-tracking branch 'origin/dev' into main (proddy)
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(5.54 KB)
    EMS-ESP-3_1_0-ESP32.bin(1.46 MB)
  • v3.0.1(Mar 30, 2021)

    Features

    • expose cmd's via MQTT directly #31 (proddy)
    • board profiles (#11) (proddy)
    • board profiles (#11) (proddy)

    Bug Fixes

    • rendering of floats (proddy)
    • only create mqtt subs for Boiler (expose individual commands via MQTT topics #31) (proddy)
    • show all devices, except system (#31) (proddy)

    Commits

    • [fd11a09]: fix negative rounding (MichaelDvP)
    • [25b1957]: minor cleanup (proddy)
    • [8ec0731]: update upload scripts (proddy)
    • [7003301]: fix #33, Junkers mode names sorted (MichaelDvP)
    • [355b71c]: minor tidyups (proddy)
    • [71dfc0e]: fix uart out of bounds warning (MichaelDvP)
    • [03e43ba]: add mqtt subscribe settings, thermostat switchtime, boiler heatingsources (MichaelDvP)
    • [83f46ff]: add back reset command (MichaelDvP)
    • [7d177ca]: fix compile error standalone? (MichaelDvP)
    • [273efbc]: update changelog (MichaelDvP)
    • [fecfe9d]: added text for board profiles (proddy)
    • [c01c098]: added more board profiles for ethernet (proddy)
    • [e25d6e4]: quit if no valid board profile (proddy)
    • [1dae9f8]: fix LED when connection made (proddy)
    • [a83d3a1]: individual subscriptions: resubscribe, show, some system commands (MichaelDvP)
    • [720a82b]: thermostat datetime command only for supported models (MichaelDvP)
    • [9089e5d]: mixer IPM add header temperature for unmixed circuits (MichaelDvP)
    • [c341148]: minor cleanup (proddy)
    • [cc0f4c4]: formatting (proddy)
    • [56a3dfd]: on ESP32 no need to use flash strings for MQTT names (proddy)
    • [def585f]: bump to b3 (proddy)
    • [118cbd9]: improve value detection (proddy)
    • [966f82e]: gpio checker (proddy)
    • [66df803]: use gpio checker. wrong values will cause crash (proddy)
    • [b931e28]: added extra gpio pins to avoid (proddy)
    • [8f12438]: more tests (proddy)
    • [c75a1c9]: added toUpper (proddy)
    • [49d7197]: remove comment (proddy)
    • [c8b6d1e]: rename WiFi to Network (proddy)
    • [d0fc09f]: snack popups from 5 to 3 seconds (proddy)
    • [0c89d90]: dallas pin fix for mt-et & nodemcu (proddy)
    • [c8d8b50]: MQTT base from std::string to String (proddy)
    • [6d3feaf]: MQTT base from std::string to String (proddy)
    • [cafc610]: board profiles: pre-configured pin layouts #11 (proddy)
    • [0c8dd1d]: added generic LAN8720 (proddy)
    • [7fe4b99]: fix bug when CUSTOM is chosen as board profile (proddy)
    • [e21ad6a]: re-enable ethernet detection code (proddy)
    • [96b83e3]: fix ems line quality calculation (proddy)
    • [56b597d]: update to new version (proddy)
    • [8bac9f6]: hide led is default off/false (proddy)
    • [0c76ed2]: custom board profile is allowed (proddy)
    • [94d7047]: rename network scan to wifi scan (proddy)
    • [b8dca3d]: mention that blank SSID = disabling wifi (proddy)
    • [ebb71c7]: fix GH URL (proddy)
    • [bcdb49f]: show "quality" next to the line quality % (proddy)
    • [e34620e]: local ip mods (proddy)
    • [fca4586]: fix flashing led on ethernet connection (proddy)
    • [6d42066]: formatting (proddy)
    • [07c7ef2]: remove wemos mini d1 (proddy)
    • [bcd79bc]: formatting (proddy)
    • [bf90056]: syslog also works when Ethernet connected (proddy)
    • [7c3b895]: added info messages for NTP (proddy)
    • [942d062]: formatting, remove wemos from board profile, fix olimex (proddy)
    • [22b4b66]: added logger so external functions can use (proddy)
    • [0c17e8d]: don't process dallas if gpio is 0 (proddy)
    • [2a070ef]: fallback to AP when Ethernet is dropped (proddy)
    • [1938c93]: rename subscribes to subscribe_format (proddy)
    • [4208c35]: fix lint errors in formatting (proddy)
    • [ac70031]: fix ld issue (proddy)
    • [621c73a]: move around build defines (proddy)
    • [6a4b7a1]: if on ethernet, show it's IP and not WiFi (proddy)
    • [a920e89]: uppercase esp32 (proddy)
    • [4948272]: fix MQTT when only on Ethernet (proddy)
    • [2b6a986]: text changes (proddy)
    • [3b4bfaa]: remove ESP8266 references (proddy)
    • [fbef1ca]: remove comment (proddy)
    • [0237cc1]: add comment (proddy)
    • [4b6c676]: text changes (proddy)
    • [8e59460]: start sys;log after network to prevent crash on Ethernet (proddy)
    • [4d00324]: start syslog when network connected (proddy)
    • [391feca]: formatting (proddy)
    • [324a6da]: add ubadevices, which is 1st telegram sent (proddy)
    • [d9b577d]: fix syslog reboots without eth (MichaelDvP)
    • [6dd9018]: remove redundant code (proddy)
    • [ed17739]: cleaned up pio scripts (proddy)
    • [ca08316]: show board profile on boot (proddy)
    • [89f1fc8]: remove redundant code (proddy)
    • [15c4a3e]: don't disable bluetooth or adc for now (proddy)
    • [06008fc]: Merge branch 'dev' of https://github.com/emsesp/EMS-ESP32 into dev (proddy)
    • [df1c227]: fix heartbeat on Ethernet (proddy)
    • [4841e42]: Merge remote-tracking branch 'origin/dev' into main (proddy)
    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(4.78 KB)
    EMS-ESP-3_0_1-ESP32.bin(1.45 MB)
  • v3.0.0(Mar 18, 2021)

    logo

    [3.0.0] March 18 2021

    ESP32 version based off ESP-ESP v2.1

    Added

    • Power settings, disabling BLE and turning off Wifi sleep
    • Rx and Tx counts to Heartbeat MQTT payload
    • Ethernet support
    • id to info command to show only a heatingcircuit
    • add sending devices that are not listed to 0x07
    • extra MQTT boolean option for "ON" and "OFF"
    • Support for chunked MQTT payloads to allow large data sets > 2kb
    • External Button support (#708) for resetting to factory defaults and other actions
    • new console set command in system, set ethernet <profile> for quickly enabling cabled ethernet connections without using the captive wifi portal
    • Added in MQTT nested mode, for thermostat and mixer, like we had back in v2
    • Cascade MC400 (product-id 210) (3.0.0b6)
    • values for wwMaxPower, wwFlowtempOffset
    • RC300 thermostat temp -1 to clear temporary setpoint in auto mode
    • Syslog port selectable (#744)

    Fixed

    • telegrams matched to masterthermostat 0x18
    • multiple roomcontrollers
    • readback after write with delay (give ems-devices time to set the value)
    • Thermostat ES72/RC20 device 66 to command-set RC20_2
    • MQTT payloads not adding to queue when MQTT is re-connecting (fixes #369)
    • fix for HA topics with invalid command formats (#728)
    • wrong position of values #723, #732
    • OTA Upload via Web on OSX

    Changed

    • changed how telegram parameters are rendered for mqtt, console and web (#632)
    • split show values in smaller packages (edited)
    • extended length of IP/hostname from 32 to 48 chars (#676)
    • check flowsensor for tap_water_active
    • mqtt prefixed with Base
    • count Dallas sensor fails
    • switch from SPIFFS to LITTLEFS
    • Added ID to MQTT payloads which is the Device's product ID and used in HA to identify a unique HA device
    • Increased MQTT buffer and reduced wait time between publishes
    • Updated to the latest ArduinoJson library
    • some names of mqtt-tags like in v2.2.1
    • new ESP32 partition side to allow for smoother OTA and fallback
    • Network Gateway IP is optional (#682)emsesp/EMS-ESP
    • moved to a new GitHub repo https://github.com/emsesp/EMS-ESP32

    Firmware Installation

    Follow the instructions in the documentation on how to install the firmware binaries in the Assets below.

    Source code(tar.gz)
    Source code(zip)
    CHANGELOG.md(2.35 KB)
    EMS-ESP-3_0_0-ESP32.bin(1.61 MB)
Arduino/ESP32 firmware for DIY haptic gloves. Officially compatible with LucidVR gloves.

Arduino/ESP32 firmware for DIY haptic gloves. Officially compatible with LucidVR gloves.

null 1.6k Nov 25, 2022
a pc heat verifier using arduino uno and oled screen(ssd1306)

pc-heat-check a pc heat verifier using arduino uno and oled screen(ssd1306) to this application works needs this other application running: https://gi

Helder Lourenço de Abreu Marques 1 Oct 5, 2022
A basic system that waters a plant according to the heat index of the environment.

Basic-Plant-Watering-System ?? This is a basic plant watering system created on Arduino Uno using DHT11 Temperature and Humidity sensor. DHT Sensor Li

Aydanur Akça 5 Apr 11, 2021
ESP32 + GitHub Actions + Husarnet. A boilerplate project for ESP32 allowing in-field firmware update using GitHub Actions workflow.

esp32-internet-ota ESP32 + GitHub Actions + Husarnet. A boilerplate project for ESP32 allowing in-field firmware update using GitHub Actions workflow.

Husarnet 31 Sep 22, 2022
AnalogWrite for ESP32 and ESP32-S2 with LEDC PWM. Includes PWM Phase Control, DAC and Smart GPIO resource management.

analogWrite() ESP32 Installation Instructions This library was tested using using the ESP32 Arduino IDE Boards Manager installation method. Stable rel

null 32 Nov 26, 2022
Arduino Interface for cheap 2.4ghz RF enabled Solar Micro Inverters

NETSGPClient Arduino Interface for cheap 2.4ghz RF enabled Solar Micro Inverters using the so-called NETSGP protocol for communication. Here is a YouT

null 44 Nov 28, 2022
Grafana/Prometheus exporter for EPEVER/EPSOLAR Tracer solar charge controllers

epever_exporter epever_exporter is a standalone program written in C that can query Epever/Epsolar Tracer solar charge controllers and output metrics

Cédric Félizard 1 Nov 23, 2021
CC1312R1 Sub-G Solar power asset tracker

Sub-G Solar Power Asset Tracker TOP BOTTOM Sub-G Solar Power Asset Tracker 은 AxDen 의 Aggregator Platform 를 이용하여 온도, 가속도, GPS 위치와 같은 Asset tracking 에 필

AXDEN 5 Nov 8, 2022
ESP32-Skid-Steer - Bruder Catepillar Skid Steer model converted to RC, controlled by an ESP32 with 2 analog joysticks and a receiver that is an ESP32 on the model.

ESP32-Skid-Steer Bruder Catepillar Skid Steer model converted to RC, controlled by an ESP32 with 2 analog joysticks and a receiver that is an ESP32 on

null 6 Oct 27, 2022
Arduino firmware for DIY haptic gloves. Officially compatible with LucidVR gloves.

lucidgloves-firmware This repo contains the arduino firmware as well as the STL files for Prototype 3 of the LucidVR glove prototype. This is a finger

null 1.6k Nov 25, 2022
Flashrom/serprog compatible firmware for the Raspberry Pi Pico

pico-serprog This is a very basic flashrom/serprog compatible SPI flash reader/writer for the Raspberry Pi Pico. It does not require a custom version

stacksmashing 34 Nov 3, 2022
Firmware for ExpressLRS compatible backpacks

What is a "TX Backpack"? Some of the ExpressLRS TX modules include an additional ESP8285 chip, which lets us communicate wirelessly with other ESP8285

ExpressLRS 45 Nov 23, 2022
A free and open-source cross-platform application to control your Philips hue compatible lights💡

?? OpenHue ?? A cross platform application to control your Philips hue compatible lights. licensed under the gpl 3.0 license. Currently in super early

BOB450 3 Dec 19, 2021
This software brings you the possibility to Read and Write the internal Flash of the Nordic nRF52 series with an ESP32

ESP32 nRF52 SWD flasher This software brings you the possibility to Read and Write the internal Flash of the Nordic nRF52 series with an ESP32 using t

null 131 Nov 24, 2022
FluidNC - The next generation of motion control firmware

FluidNC (CNC Controller) For ESP32 Introduction FluidNC is the next generation of Grbl_ESP32. It has a lot of improvements over Grbl_ESP32 as listed b

null 628 Nov 21, 2022
Harsh Badwaik 1 Dec 19, 2021
ESP32 S2 C++ host library compatible with arduino, esp-idf.

Info I would like to announce USB host library for esp32 S2 compatible with arduino, esp-idf and PIO (when pio will be updated to most recent esp-idf)

null 17 Nov 15, 2022
Adafruit GFX compatible arduino library for using cat thermal printers with the ESP32

CatGFX This library offers a Adafruit GFX "driver" for ESP32 and the cheap cat (or rabbit?) BLE thermal printers like this one: For usage information

Claus Näveke 5 Sep 23, 2022
Bluetooth LE Keyboard library for the ESP32 (Arduino IDE compatible)

ESP32 BLE Keyboard library This library allows you to make the ESP32 act as a Bluetooth Keyboard and control what it does. You might also be intereste

null 1.5k Nov 22, 2022