An ebusd add-on

fixed using latest ebusd:devel docker, my docker-compose below

ebusd:
  container_name: ebusd_compose
  image: john30/ebusd:devel
  ports:
    - 9999:9999
  volumes:
    - /usr/share/hassio/homeassistant:/config
  command: --foreground --scanconfig --device=192.168.5.110:9999 --mqtthost=192.168.5.104 --mqttport=1883 --mqttuser=mqtt-user --mqttpass=xxxxx --mqttjson --mqtttopic=ebusd --mqttint=/config/ebusd/mqtt-hassio.cfg --configpath=/config/ebusd/config/en/ --latency=50 --accesslevel=* --pollinterval=15 --log=all:notice
  restart: always

After a bugfix yesterday from john30, I have a fully working thermostat in HA:
image

I’m running eBusd Edge for now to use this bugfix.

YAML config for the entity:

climate:
  - platform: mqtt
    name: CV
    max_temp: 25
    min_temp: 15
    precision: 0.1
    temp_step: 0.5

    action_topic: "ebusd/bai/Status01"
    action_template: "{{ (value_json['5'].value == 'on') | iif('heating', 'idle') }}"
    modes:
      - auto
      - heat
      - cool
      - "off"
    mode_state_template: >-
      {% set mode_values = { 'auto':'auto', 'on':'heat',  'night':'cool', 'summer':'off'} %}
      {{ mode_values[value_json['0'].value] | default('off') }}
    mode_state_topic: "ebusd/35000/Hc1OPMode"
    mode_command_template: >-
      {% set values = { 'auto':'auto', 'heat':'on',  'cool':'night', 'off':'summer'} %}
      {{ values[value] | default('auto') }}
    mode_command_topic: "ebusd/35000/Hc1OPMode/set"
    value_template: "{{ value_json.temp1.value }}"
    temperature_state_topic: "ebusd/35000/DisplayedHc1RoomTempDesired"
    temperature_low_state_topic: "ebusd/35000/Hc1NightTemp"
    temperature_high_state_topic: "ebusd/35000/Hc1DayTemp"

    temperature_low_command_topic: "ebusd/35000/Hc1NightTemp/set"
    temperature_high_command_topic: "ebusd/35000/Hc1DayTemp/set"
    current_temperature_topic: "ebusd/35000/DisplayedRoomTemp"
    current_temperature_template: "{{ value_json.temp.value }}"

Note that I abuse the HA thermostat slightly by setting the night temperature as “low temperature” in this entity. Normally you only set the “low temperature” if you have a device that can both heat and cool your place to keep it within the stated temperature range.

4 Likes

Great addon - much better than the HA original integration
@andrej33 found John30’s post about writeable sensors where he says you need to add "--mqttvar=filter-direction=r|u|^w" as a startup parameter if you want to discover writable sensors.
It would be very helpful if this could be optional as a switch in the configuration (e.g. “Include writable”) rather than having to know the format of the command line switch for ebusd. It would also remind users that by default they won’t see writable sensors.

Also, some sensors have disappeared. I used to have a sensor ebusd/ehp/Subcooling and ebusd/ehp/Superheat but I now get no response from them.
Is this one for John30 or here?
Thanks again

Thanks @Sonosy, I asked on Github and got the answer :slight_smile:

Anybody can tell me how use this auto discovery with my boiler and multimatic 700 ? How create climate and other entities…

Hi
I installed new addon ebusd 22.1 in my Home Assistant and start test Auto Discovery. On MQTT found me entities on my BAI and 700 but some entities has wrong value… Example z2RoomTemp tempv has wrong temperature. Still show me 20 but in my controller is 22,5. Why entities on auto discovery no refresh value ? Please help me how use it on Home Assistant step by step.

Before i use old addon 0,87 ebusd and i create manuallly in configuration Home Assistant ex sensors, binary_sensor,climate and then create automation in HA to refresh data on this sensor.
But now how ?

On old config also example i get info about water pressure but now i dont see this entiti
In old: ebusd/700/WaterPressure/get

@timstanley1985 Need some help, please.
I noticed there are some fixes (this) and I’m wondering how to update and test this fix on this addon? Do you have any suggestions how to update ebusd?
Thanks!!

Switch to ebusd-edge. There are instructions on how to update to the latest source in the docs.

Thanks @timstanley1985 I was just about to ask the same question for the same reason.

If I want to wait for a stable version with the fix @andrej33 mentioned above how long will I have to wait?
I ask as I don’t understand what triggers a new stable release - is it likely to be days or weeks?

John30 seems to do a new release about every 6 months so might be a while.

You could try docker compose and use latest or developer version of ebusd. I’m using portainer and start stacks from there.

Thanks @timstanley1985, I switched to ebusd-edge…and the unmatchable topic error is not showing up…but instead I get an error if I write (change input number):

2022-02-16 20:50:37.839 [mqtt debug] received topic ebusd/hwc/StorageTempDesiredStop/set with data 57
2022-02-16 20:50:37.839 [mqtt info] received set topic for hwc StorageTempDesiredStop
2022-02-16 20:50:37.839 [mqtt error] write message hwc StorageTempDesiredStop not found
2022-02-16 20:50:41.989 [main debug] performing regular tasks

Any clues?
Thanks!

Hi. I have a problem… I use EBUSD EDGE and use mqttvar:

filter-name=status|temp|fuel|count|energy|power|runtime|hours|starts|mode|curve|^load$|^party$|cooling|heat|sensor|data|error|pressure|flame

then i have sensors by auto discovery. He found me what i need.
Then i create in climate thermostat but it is no working:

- platform: mqtt
  name: Parter podłogówka
  max_temp: 30
  min_temp: 5
  precision: 0.1
  temp_step: 0.5
  modes:
    - auto
    - heat
    - cool
    - "off"
  mode_state_template: >-
    {% set values = { 'auto':'auto', 'day':'heat',  'night':'cool', 'off':'off'} %}
    {{ values[value] if value in values.keys() else 'off' }}
  mode_state_topic: "ebusd/700/z2OpMode"
  mode_command_topic: "convert/z2modeset"
  temperature_low_state_topic: "ebusd/700/z2NightTemp"
  temperature_high_state_topic: "ebusd/700/z2DayTemp"
  temperature_low_command_topic: "ebusd/700/z2NightTemp/set"
  temperature_high_command_topic: "ebusd/700/z2DayTemp/set"
  current_temperature_topic: "ebusd/700/z2RoomTemp"

thermo

please help me… On old addon 0.87 this works with no problem.

Have you done anything to try and debug this yourself before asking questions? What do your logs say? Are all the sensors listed in the config working? Does the command topic work?

Thanks @timstanley1985 and @Mozzarella
Since @andrej33 and @pepeEL are also still having problems with writing I’d like to switch back to V0.87 until there’s a stable release which works for writing.
I’m going to try a selective restore from a backup as suggested here and see if I can get back to 0.87

1 Like

Possible rounding error on a writable sensor.
I’ve got this number sensor which is the only one with a red underline
image
The hover popup reads
Please enter a valid value: The two nearest valid values are 16.06 and 17.06
Developer->states shows it as


I’m not sure where it specifies this as an integer (step: 1) value (although it probably is) but the x.06 is a bit weird. This value has previously shown as a non-integer number (17.06… with extra trailing digits I can’t remember)
The ebusd-configuration is here at line 20
It’s not really a problem but I thought I’d mention it.
Thanks to all for the really good work on this addon

Well restoring the backup didn’t work :frowning_face:
It appeared to install 0.87 (according to HA) but a -V command lime parameter to ebusd shows 22.1 (the latest)
So the container is 0.87 but the executable is 22.1
Really stuck now with not being able to write…

Topic looks that work. When send by MQTT Explorer command ebusd/700/z2OpMode/get i recived:
{ “opmode”: {“value”: “auto”}}

In logs no show any errors…

I also think that 0,87 is more stable than version with auto discovery

To disable discovery remove any text from the the mqttint field and switch off mqttjson. This should return the addon back to 0.87 functionality.

If you really wanted to roll back you could also clone the add-on repo into your /addon folder and tweak the dockerfile of ebusd-edge to clone an older version of ebusd and build if you are adamant you need the older binary version.

That being said, if it was me I would persevere with auto-discovery and try and make it work for you (raising issues on the ebusd github if you spot bugs) rather than sit on an old version.