john30 / ebusd

daemon for communication with eBUS heating systems
GNU General Public License v3.0
592 stars 136 forks source link

No writable entities in Homeassistant #1384

Open Pavel-Demidyuk opened 2 weeks ago

Pavel-Demidyuk commented 2 weeks ago

Description

I run ebusd as an addon in Supervised HA, and it can discover my Vaillant boiler and bunch of sensors, but there is no writable entities for my boiler, even though I added

--mqttvar=filter-direction=r|u|^w

to the config

Actual behavior

A lot of sensors are successfully displayed on the main page of HA, however there is nothing I can write to.

ebusctl find -w
broadcast id = no data stored
broadcast queryexistence = no data stored
broadcast vdatetime = no data stored

Expected behavior

Some writable entities should be presented

ebusd version

current source from git

ebusd arguments

--foreground --mqtthost=192.168.50.87 --mqttport=1883 --mqttuser=ebusd --mqttpass=ebusd --scanconfig --mqttjson --configpath=/config/ebusd-configuration/latest/en/ --mqttint=/config/ebusd-configuration/latest/en/mqtt.cfg --mqtttopic=ebusd --device=enh:192.168.50.106:9999 --log=all:notice --log=main:notice --log=bus:notice --log=update:notice --log=network:notice --log=other:notice --mqttvar=filter-direction=r|u|^w

Operating system

Debian 12 (Bookworm) / Ubuntu 22-23 / Raspberry Pi OS 12 (including lite)

CPU architecture

x64

Dockerized

same as ebusd version

Hardware interface

Adapter Shield v5 via Ethernet

Related integration

MQTT Home Assistant via mqtt-hassio.cfg

Logs

s6-rc: info: service s6rc-oneshot-runner: starting s6-rc: info: service s6rc-oneshot-runner successfully started s6-rc: info: service fix-attrs: starting s6-rc: info: service fix-attrs successfully started s6-rc: info: service legacy-cont-init: starting s6-rc: info: service legacy-cont-init successfully started s6-rc: info: service legacy-services: starting s6-rc: info: service legacy-services successfully started

ebusd --foreground --mqtthost=192.168.50.87 --mqttport=1883 --mqttuser=ebusd --mqttpass=ebusd --scanconfig --mqttjson --configpath=/config/ebusd-configuration/latest/en/ --mqttint=/config/ebusd-configuration/latest/en/mqtt.cfg --mqtttopic=ebusd --device=enh:192.168.50.106:9999 --log=all:notice --log=main:notice --log=bus:notice --log=update:notice --log=network:notice --log=other:notice --mqttvar=filter-direction=r|u|^w 2024-11-08 18:38:36.023 [main notice] ebusd 23.2.p20230716 started with auto scan on device: 192.168.50.106:9999, enhanced 2024-11-08 18:38:36.066 [bus notice] device status: resetting 2024-11-08 18:38:36.067 [bus notice] bus started with own address 31/36 2024-11-08 18:38:36.069 [bus notice] device status: reset, supports info 2024-11-08 18:38:36.070 [bus notice] device status: extra info: firmware 1.1[4505].1[4505], jumpers 0x07 2024-11-08 18:38:36.087 [bus notice] signal acquired 2024-11-08 18:38:36.140 [mqtt notice] connection established 2024-11-08 18:38:36.187 [mqtt error] write message basv StorageTempDesired not found 2024-11-08 18:38:36.187 [mqtt error] write message bai StorageTempDesired not found 2024-11-08 18:39:39.579 [bus notice] new master 03, master count 2 2024-11-08 18:39:46.246 [bus notice] scan 08: ;Vaillant;BAI00;0109;7503 2024-11-08 18:39:46.246 [update notice] store 08 ident: done 2024-11-08 18:39:46.246 [update notice] sent scan-read scan.08 QQ=31: Vaillant;BAI00;0109;7503 2024-11-08 18:39:46.246 [bus notice] scan 08: ;Vaillant;BAI00;0109;7503 2024-11-08 18:39:46.281 [main notice] read common config file vaillant/broadcast.csv 2024-11-08 18:39:46.284 [main notice] read common config file vaillant/general.csv 2024-11-08 18:39:46.288 [main notice] read common config file vaillant/scan.csv 2024-11-08 18:39:46.295 [main notice] read scan config file vaillant/08.bai.csv for ID "bai00", SW0109, HW7503 2024-11-08 18:39:46.444 [update notice] sent scan-read scan.08 id QQ=31: 2024-11-08 18:39:46.599 [update notice] sent scan-read scan.08 id QQ=31: 2024-11-08 18:39:46.749 [update notice] sent scan-read scan.08 id QQ=31: 2024-11-08 18:39:46.902 [update notice] sent scan-read scan.08 id QQ=31: 21;22;48;0010023658;3100;005560;N7 2024-11-08 18:39:46.952 [main notice] found messages: 224 (3 conditional on 28 conditions, 0 poll, 10 update) 2024-11-08 18:39:47.038 [bus notice] max. symbols per second: 116 2024-11-08 18:39:47.143 [update notice] sent scan-read scan.08 id QQ=31: 21;22;48;0010023658;3100;005560;N7 2024-11-08 18:39:47.300 [update notice] sent scan-read scan.08 id QQ=31: 21;22;48;0010023658;3100;005560;N7 2024-11-08 18:39:47.452 [update notice] sent scan-read scan.08 id QQ=31: 21;22;48;0010023658;3100;005560;N7 2024-11-08 18:39:47.604 [update notice] sent scan-read scan.08 id QQ=31: 21;22;48;0010023658;3100;005560;N7 2024-11-08 18:39:47.604 [bus notice] scan 08: ;21;22;48;0010023658;3100;005560;N7 2024-11-08 18:39:56.780 [update notice] sent poll-read bai CounterStartattempts1 QQ=31: 0 2024-11-08 18:40:02.146 [update notice] sent poll-read bai CounterStartattempts2 QQ=31: 0 2024-11-08 18:40:08.168 [update notice] sent poll-read bai CounterStartAttempts3 QQ=31: 0 2024-11-08 18:40:14.143 [update notice] sent poll-read bai CounterStartAttempts4 QQ=31: 0 2024-11-08 18:40:20.162 [update notice] sent poll-read bai DeactivationsTemplimiter QQ=31: 0 2024-11-08 18:40:26.141 [update notice] sent poll-read bai DisplayMode QQ=31: 2 2024-11-08 18:40:32.183 [update notice] sent poll-read bai expertlevel_ReturnTemp QQ=31: -1.81;cutoff 2024-11-08 18:40:38.163 [update error] unable to parse poll-read bai externalFlowTempDesired from 3108b509030d2500 / 00: ERR: invalid position 2024-11-08 18:40:39.874 [mqtt error] decode bai externalFlowTempDesired: ERR: invalid position 2024-11-08 18:40:44.136 [update error] unable to parse poll-read bai ExtFlowTempDesiredMin from 3108b509030d6e04 / 00: ERR: invalid position 2024-11-08 18:40:49.887 [mqtt error] decode bai ExtFlowTempDesiredMin: ERR: invalid position 2024-11-08 18:40:50.159 [update notice] sent poll-read bai FanHours QQ=31: - 2024-11-08 18:40:56.146 [update notice] sent poll-read bai FanStarts QQ=31: - 2024-11-08 18:41:02.175 [update notice] sent poll-read bai FlowTemp QQ=31: 35.75;ok 2024-11-08 18:41:08.156 [update notice] sent poll-read bai FlowTempDesired QQ=31: 37.00 2024-11-08 18:41:14.139 [update notice] sent poll-read bai FlowTempMax QQ=31: 0.00 2024-11-08 18:41:20.166 [update notice] sent poll-read bai HcHours QQ=31: 0 2024-11-08 18:41:26.141 [update error] unable to parse poll-read bai HcPumpMode from 3108b509030d4904 / 00: ERR: invalid position 2024-11-08 18:41:29.942 [mqtt error] decode bai HcPumpMode: ERR: invalid position 2024-11-08 18:41:32.167 [update notice] sent poll-read bai HcPumpStarts QQ=31: - 2024-11-08 18:41:38.149 [update notice] sent poll-read bai HcStarts QQ=31: 0 2024-11-08 18:41:44.169 [update notice] sent poll-read bai HcUnderHundredStarts QQ=31: 0 2024-11-08 18:41:50.152 [update error] unable to parse poll-read bai HoursTillService from 3108b509030d2004 / 00: ERR: invalid position 2024-11-08 18:41:50.606 [main notice] update check: version 24.1 available, device firmware 1[4a1b] available, broadcast.csv: different version available, memory.csv: different version available, vaillant/bai.308523.inc: different version available, vaillant/broadcast.csv: different version available, vaillant/errors.inc: different version available, vaillant/general.csv: different version available, vaillant/hcmode.inc: different version available 2024-11-08 18:41:55.615 [mqtt error] decode bai HoursTillService: ERR: invalid position 2024-11-08 18:41:56.173 [update notice] sent poll-read bai HwcHours QQ=31: 0 2024-11-08 18:42:02.148 [update error] unable to parse poll-read bai HwcPostrunTime from 3108b509030d1104 / 00: ERR: invalid position 2024-11-08 18:42:05.628 [mqtt error] decode bai HwcPostrunTime: ERR: invalid position 2024-11-08 18:42:08.136 [update notice] sent poll-read bai HwcStarts QQ=31: 0 2024-11-08 18:42:14.144 [update notice] sent poll-read bai HwcTemp QQ=31: 0.00;ok 2024-11-08 18:42:20.470 [update error] unable to parse poll-read bai HwcTempDesired from 3108b509030dea03 / 00: ERR: invalid position 2024-11-08 18:42:25.655 [mqtt error] decode bai HwcTempDesired: ERR: invalid position 2024-11-08 18:42:26.160 [update error] unable to parse poll-read bai HwcTempMax from 3108b509030d4304 / 00: ERR: invalid position 2024-11-08 18:42:30.660 [mqtt error] decode bai HwcTempMax: ERR: invalid position 2024-11-08 18:42:32.140 [update notice] sent poll-read bai HwcUnderHundredStarts QQ=31: 0 2024-11-08 18:42:38.161 [update notice] sent poll-read bai maintenancedata_HwcTempMax QQ=31: 0.00 2024-11-08 18:42:44.139 [update notice] sent poll-read bai ModulationTempDesired QQ=31: 100.0

john30 commented 1 week ago

check the discovery messages sent to HA using e.g. mosquitto_sub -v -t 'homeassistant/#' and check if there is really no write message in it

mansellrace commented 1 week ago

Same for me, I have a vaillant that is recognised as bai 08. I have configured the ability to write, but on home assistant I only see entities that cannot be edited

image

john30 commented 1 week ago

did you add the writable direction to the filter? and was that escaped correctly (as the pipe symbol is special at least on the command line)?

mansellrace commented 1 week ago

did you add the writable direction to the filter? and was that escaped correctly (as the pipe symbol is special at least on the command line)?

Hi! Yesterday I studied the way configuration files work and I found that for my model there is no specific configuration file, and the generic one is loaded that it has no writable entities

I have a 0010019985 Vaillant

As soon as I have some free time I would like to try to understand if one of the specific ones for other models is suitable for my boiler Is this the best way to proceed? Is there any command or procedure to understand what data can I extract from the boiler? Or is it just attempts?

Thanks for your project!

Kolbi commented 1 week ago

You are some steps ahead of me (using a 10021924 ) :) I'm currently at the same point not exactly knowing how to determine infos for creating a special file.

JonesGW-MGD commented 1 week ago

@mansellrace - many us are able to write values even using the default bai file (bai308523.inc) and the associated controller devices - so I suspect it's not an actual 'issue' with the ebusd application or the configuration files, but perhaps your set-up? You might find if you raise a discussion item rather than an issue you get some help - I'd be happy to share my experience for example. (Some of which I documented here to write values as mundane as MaintenanceDate and as useful as HeatCurve using ebusd and HA 'out of the box')