Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

read timeout when trying to read different parameters #18

Open
pauldtc opened this issue Oct 28, 2024 · 11 comments
Open

read timeout when trying to read different parameters #18

pauldtc opened this issue Oct 28, 2024 · 11 comments

Comments

@pauldtc
Copy link

pauldtc commented Oct 28, 2024

Hello,

first of all thank you for your great work.

I'm struggling though to make ebusd read different parameters such as "z1_heat_request".Everytime i issue a request via "ebusctl read -m 0 -c energymgr z1_heat_request" -> "ERR: read timeout" is returned. My current setup involves a direct serial connection from a PC to eBUS Adapter v5 from John.

Here is my current config:

EBUSD_OPTS="--configpath=/etc/ebusd -d ens:/dev/ttyACM0 --mqttport=1883 --mqtthost=******** --mqttuser ***** --mqttpass ******** --mqttjson --mqttint=/etc/ebusd/mqtt-hassio.cfg --mqtttopic=ebusd/%circuit/%name --enablehex --accesslevel=*"

Ebusctl returns the following:

version: ebusd 23.3.23.3
update check: version 24.1 available, device firmware 1[4a1b] available
device: /dev/ttyACM0, serial high speed, enhanced, firmware 1.1[4a08].1[4a08]
access: *
signal: acquired
symbol rate: 49
max symbol rate: 178
min arbitration micros: 7
max arbitration micros: 47
min symbol latency: 4
max symbol latency: 6
reconnects: 0
masters: 7
messages: 341
conditional: 0
poll: 0
update: 55
address 00: master #1
address 03: master #11
address 31: master #8, ebusd
address 36: slave #8, ebusd
address 37: master #18
address 3c: slave #18
address 70: master #4
address 7f: master #24
address 84: slave #24
address f0: master #5

This is what i found from the logs:

2024-10-28 13:41:55.530 [update notice] received read gateway gateway_wifi_state QQ=70: cloud_connected
2024-10-28 13:41:55.799 [update notice] received update-read ignored ign4 QQ=7f:
2024-10-28 13:41:55.896 [update notice] received update-read broadcast cast_date QQ=37: 13:11;28.10.2024
2024-10-28 13:41:56.033 [bus error] send to 18: ERR: read timeout, retry
2024-10-28 13:41:56.221 [update notice] received read boiler boiler_status QQ=7f: standby
2024-10-28 13:41:56.297 [bus error] send to 18: ERR: read timeout, retry
2024-10-28 13:41:56.335 [update notice] received unknown BC cmd: 7ffe2020030b9000
2024-10-28 13:41:56.411 [bus error] send to 18: ERR: read timeout
2024-10-28 13:41:56.411 [bus error] send message part 0: ERR: read timeout
2024-10-28 13:41:56.474 [update notice] received unknown BC cmd: 7ffe207309000000000000000003

2024-10-28 13:41:59.686 [update notice] received unknown BC cmd: 37fe20101001910000029100000391000004910000
2024-10-28 13:41:59.808 [update notice] received unknown BC cmd: 37fe2010080591000006910000
2024-10-28 13:41:59.900 [update notice] received read boiler config_version_counter QQ=70: 4
2024-10-28 13:42:00.940 [bus error] send to 18: ERR: read timeout, retry
2024-10-28 13:42:01.074 [bus error] send to 18: ERR: read timeout, retry
2024-10-28 13:42:01.207 [bus error] send to 18: ERR: read timeout
2024-10-28 13:42:01.207 [bus error] send message part 0: ERR: read timeout
2024-10-28 13:42:01.481 [update notice] received unknown BC cmd: 37fe2000026471
2024-10-28 13:42:01.562 [update notice] received update-read energymgr z1_heat_offset QQ=37: -10.0

2024-10-28 13:42:06.693 [update notice] received unknown BC cmd: 37fe2000026571
2024-10-28 13:42:06.772 [update notice] received unknown BC cmd: 37fe200f0565715e0100
2024-10-28 13:42:06.969 [bus error] send to 18: ERR: read timeout, retry
2024-10-28 13:42:07.103 [bus error] send to 18: ERR: read timeout, retry
2024-10-28 13:42:07.235 [bus error] send to 18: ERR: read timeout
2024-10-28 13:42:07.235 [bus error] send message part 0: ERR: read timeout
2024-10-28 13:42:07.420 [update notice] received unknown BC cmd: 37fe200002c67e
2024-10-28 13:42:07.495 [update notice] received unknown BC cmd: 37fe200f04c67e0200

I don't know if this problem is related to ebusd, my ebus adapter or my boiler, i'm stuck and any pointers would be really appreciated.

Kind Regards.

@wrongisthenewright
Copy link
Owner

Hi pauldtc,
from your ebusctl info command i gather you dont' have the "stand-alone" energy manager, your config should be composed by the boiler, the wifi gateway and the remote control. In the CSV try to map all the lines to the boiler address:

eg. change this:

r,energymgr,z1_heat_request,Z1 Heating Request,,18,2000,0191,,s,IGN:1,,,,,s,onoff

to this

r,energymgr,z1_heat_request,Z1 Heating Request,,3c,2000,0191,,s,IGN:1,,,,,s,onoff

@pauldtc
Copy link
Author

pauldtc commented Oct 28, 2024

Hello,

thank you for your quick reply.

I made the change to z1_heat_request and this is what i get:

ebusctl read -m 0 -c energymgr z1_heat_request
ERR: invalid position in decode

This is from the log:

2024-10-28 15:13:46.474 [update notice] received unknown BC cmd: 37fe200f04c67e0200
2024-10-28 15:13:47.236 [update notice] received unknown MS cmd: 3784200008c0f21421c5f00921 / 050f01000001
2024-10-28 15:13:47.291 [mqtt error] decode energymgr z1_heat_request: ERR: invalid position
2024-10-28 15:13:47.691 [update notice] received read boiler config_version_counter QQ=70: 6
2024-10-28 15:13:48.390 [update error] unable to parse read energymgr z1_heat_request from 313c2000020191 / 0100: ERR: invalid position
2024-10-28 15:13:48.390 [main error] read energymgr z1_heat_request: decode ERR: invalid position
2024-10-28 15:13:48.494 [update notice] received update-read ignored ign5 QQ=7f:
2024-10-28 15:13:49.035 [update notice] received read energymgr config_version_counter QQ=37: 3

This is from the log with --lograwdata=bytes flag:

2024-10-28 15:15:43.588 [bus notice] <aa
2024-10-28 15:15:43.618 [bus notice] <aa
2024-10-28 15:15:43.648 [bus notice] <aa
2024-10-28 15:15:43.678 [bus notice] <aa
2024-10-28 15:15:43.708 [bus notice] <aa
2024-10-28 15:15:43.712 [bus notice] >31
2024-10-28 15:15:43.712 [bus notice] >3c
2024-10-28 15:15:43.717 [bus notice] <3c
2024-10-28 15:15:43.717 [bus notice] >20
2024-10-28 15:15:43.722 [bus notice] <20
2024-10-28 15:15:43.722 [bus notice] >00
2024-10-28 15:15:43.727 [bus notice] <00
2024-10-28 15:15:43.727 [bus notice] >02
2024-10-28 15:15:43.732 [bus notice] <02
2024-10-28 15:15:43.732 [bus notice] >01
2024-10-28 15:15:43.737 [bus notice] <01
2024-10-28 15:15:43.737 [bus notice] >91
2024-10-28 15:15:43.742 [bus notice] <91
2024-10-28 15:15:43.742 [bus notice] >c2
2024-10-28 15:15:43.747 [bus notice] <c2
2024-10-28 15:15:43.751 [bus notice] <00
2024-10-28 15:15:43.755 [bus notice] <01
2024-10-28 15:15:43.759 [bus notice] <00
2024-10-28 15:15:43.764 [bus notice] <9b
2024-10-28 15:15:43.764 [bus notice] >00
2024-10-28 15:15:43.769 [bus notice] <00
2024-10-28 15:15:43.770 [update error] unable to parse read energymgr z1_heat_request from 313c2000020191 / 0100: ERR: invalid position
2024-10-28 15:15:43.770 [bus notice] >aa
2024-10-28 15:15:43.770 [main error] read energymgr z1_heat_request: decode ERR: invalid position
2024-10-28 15:15:43.775 [bus notice] <aa
2024-10-28 15:15:43.803 [bus notice] <aa
2024-10-28 15:15:43.833 [bus notice] <aa
2024-10-28 15:15:43.863 [bus notice] <aa
2024-10-28 15:15:43.893 [bus notice] <aa
2024-10-28 15:15:43.923 [bus notice] <aa
2024-10-28 15:15:43.953 [bus notice] <aa
2024-10-28 15:15:43.983 [bus notice] <aa
2024-10-28 15:15:44.014 [bus notice] <aa
2024-10-28 15:15:44.044 [bus notice] <aa
2024-10-28 15:15:44.074 [bus notice] <aa

The boiler is a Ariston Alteas One with builtin wifi and 2 Ariston Cube thermostats ( Z1 + Z2 ) wired in parallel on the same bus.

Kind Regards.

Kind Regards.

@wrongisthenewright
Copy link
Owner

wrongisthenewright commented Oct 28, 2024

OK, it seems the boiler doesn't answer to requests.

313c2000020191 / 0100

means that 3c address is not able to answer (number of parameters reported back count byte =00)

try dumping the most recent messages received by the adapter

ebusctl grab result all > message_dump.txt

and post it here, I need to see what's traveling on the bus

@pauldtc
Copy link
Author

pauldtc commented Oct 28, 2024

message_dump.txt
I've attached the file.

Thanks !

@pauldtc
Copy link
Author

pauldtc commented Oct 28, 2024

I also manually ran the read_all.sh script to poll all items in CSV and also raised the temperature from the thermostat to trigger heating. Now i have more values from "ebusctl grab result all", please see the dump attached.
message_dump2.txt

@wrongisthenewright
Copy link
Owner

ok, it seems that in your case many parameters are not transmitted on the bus, probably because the boiler and the thermostats don't need to exchange many info.

For the heat request stauts you can use the data broadcasted by these lines:

37fe200f0401910000 = 10
37fe200f0402910000 = 10

using these "ad hoc" CSV lines

b,energymgr,z1_heat_request,Heating Request,37,fe,200f,0191,z1_heat_request,s,BCD,0=off;1=on
b,energymgr,z2_heat_request,Heating Request,37,fe,200f,0291,z2_heat_request,s,BCD,0=off;1=on

but other parameters seems to be missing from the bus.

From what I see from the message dump something (not much) can be gathered by parsing broadcasted messages but it needs a great effort to adapt the file, and not having the device It's really difficult to do debugging.

If you badly need some parameter let me know that I'll look into it.

@pauldtc
Copy link
Author

pauldtc commented Oct 28, 2024

Changed the CSV file as recommended did the trick and i now have status on / off in HA,
I'm looking to get basic functionality out of this as the Ariston app is really slow and unreliable.

Would it be possible to also write a few parameters like Z1 / Z2 Heating Setpoint and DHW temperature ?

Thanks alot for your help, really appreciate it.

@wrongisthenewright
Copy link
Owner

Would it be possible to also write a few parameters like Z1 / Z2 Heating Setpoint and DHW temperature ?

For z1/z2 Setpoints (Day/Night temps) have you tried with 3c as slave address?Like these:

r,energymgr,z1_day_temp,Z1 Day Temp,,3c,2000,6271,,s,IGN:1,,,,,,SIN,10,°C
b,energymgr,z1_day_temp,Z1 Day Temp,,fe,200f,6271,,m,SIN,10,°C
w,energymgr,z1_day_temp,Z1 Day Temp,,fe,2020,6271,,s,SIN,10,°C
r,energymgr,z1_night_temp,Z1 Night Temp,,18,2000,6371,,s,IGN:1,,,,,,SIN,10,°C
w,energymgr,z1_night_temp,Z1 Night Temp,,fe,2020,6371,,s,SIN,10,°C
b,energymgr,z1_night_temp,Z1 Night Temp,,fe,200f,6371,,m,SIN,10,°C
r,energymgr,z2_day_temp,Z2 Day Temp,,3c,2000,6272,,s,IGN:1,,,,,,SIN,10,°C
b,energymgr,z2_day_temp,Z2 Day Temp,,fe,200f,6272,,m,SIN,10,°C
w,energymgr,z2_day_temp,,,fe,2020,6272,,s,SIN,10,°C
r,energymgr,z2_night_temp,Z2 Night Temp,,3c,2000,6372,,s,IGN:1,,,,,,SIN,10,°C
b,energymgr,z2_night_temp,Z2 Night Temp,,fe,200f,6372,,s,SIN,10,°C
w,energymgr,z2_night_temp,Z2 Night Temp,,fe,2020,6372,,s,SIN,10,°C

for DHW:

r,energymgr,dhw_comfort_temp,DHW Comfort Temp,,3c,2000,6126,,s,SIN,10,°C
b,energymgr,dhw_comfort_temp,DHW Comfort Temp,,fe,200e,6126,,s,SIN,10,°C
w,energymgr,dhw_comfort_temp,DHW Comfort Temp,,fe,2020,6126,,s,SIN,10,°C
r,energymgr,dhw_economy_temp,DHW Economy Temp,,3c,2000,6226,,s,SIN,10,°C
b,energymgr,dhw_economy_temp,DHW Economy Temp,,fe,200e,6226,,s,SIN,10,°C
w,energymgr,dhw_economy_temp,DHW Economy Temp,,fe,2020,6226,,s,SIN,10,°C
r,energymgr,dhw_comfort_mode,DHW Comfort Mode,,3c,2000,c028,,s,BCD,0=off;1=timed;2=always_on
b,energymgr,dhw_comfort_mode,DHW Comfort Mode,,fe,200e,c028,,s,BCD,0=off;1=timed;2=always_on
w,energymgr,dhw_comfort_mode,DHW Comfort Mode,,fe,2020,c028,,s,BCD,0=off;1=timed;2=always_on

@pauldtc
Copy link
Author

pauldtc commented Oct 28, 2024

Hi @wrongisthenewright,

tried it and same error unfortunately:

ebusctl read -m 0 -d 3c -c energymgr dhw_comfort_temp
ERR: invalid position in decode

ebusctl read -m 0 -d 3c -c energymgr z1_day_temp
ERR: invalid position in decode

This is what i've found with ebusctl grab result:
313c2000026271 / 0100 = 1
313c2000026126 / 0100 = 1

Thanks !

@wrongisthenewright
Copy link
Owner

You can try to leave these lines and change the setpoints from the Cube then see what happens...

@wrongisthenewright
Copy link
Owner

also: try to look at Ysard repo (https://github.com/ysard/ebusd_configuration_chaffoteaux_bridgenet) he has a configuration similar to your (boiler only, in his case even without Cube/remote thermostat).

Try his CSV, doesn' cost that much...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants