Open blb4github opened 1 week ago
Thanks for the report. I have recently obtained a few PIC16F1847 controllers and plan to implement the additional commands in the near future.
I checked the documentation for the BS
command and so far I don't find its explanation very clear. From what I understand it only affects the values sent to the boiler, so if the TT
and TC
commands don't work on your thermostat then the BS
command won't change that. You can test this with otmonitor or in Home Assistant with the opentherm_gw.send_transparent_command
service action.
If you're testing this anyway, I would appreciate a log of the protocol from otmonitor or a Home Assistant integration debug log with some information on the applied testing procedure if it's not too much trouble. Keep in mind that the opentherm protocol is slow and depends on the thermostat polling for values, so please give it some time (2-3 minutes should be enough, but longer could be necessary) to settle between commands when testing.
Thanks!! I did miss the transparent_command option, that one is working now for me! The value provided with the BS command is indeed only send to the boiler, not to the Thermostat. My Opentherm Honeywell Evohome (multi-zone) thermostat is not setting the room temperature nor the required room temperature, which would be difficult indeed in a multi-zone installation. Currently I'm controlling my heatpump with chEnable, Control Setpoint and max ch water setpoint which should be fine but the behavior of my thermostat is not that smooth. I like to use the difference between my actual living room temperature and the living room setpoint in the logic and via the BS command I can sent this value to my heatpump.
my YAML:
alias: OTGW BS
description: Change RoomTempSet to current Living Room Temp
trigger:
- platform: state
entity_id:
- climate.01_187689_00
attribute: current_temperature
- platform: state
entity_id:
- climate.01_187689_00
attribute: temperature
condition: []
action:
- action: opentherm_gw.send_transparent_command
metadata: {}
data:
gateway_id: opentherm
transp_cmd: BS
transp_arg: >-
{{ state_attr('climate.01_187689_00', 'current_temperature') + 20 -
state_attr('climate.01_187689_00', 'temperature')}}
mode: single
Output otmonitor:
19:32:03.779889 BS: 21.10
19:32:03.939925 T80000200 Read-Data Status: 00000010 00000000
19:32:04.119292 B40000200 Read-Ack Status: 00000010 00000000
19:32:04.479195 T00050000 Read-Data Application-specific flags: 00000000 0
19:32:04.639185 BF0050000 Unk-DataId Application-specific flags: 00000000 0
19:32:07.139446 T10010A00 Write-Data Control setpoint: 10.00
19:32:07.319241 BD0010A00 Write-Ack Control setpoint: 10.00
19:32:07.699120 T90181400 Write-Data Room temperature: 20.00
19:32:08.239387 T90181400 Write-Data Room temperature: 20.00
19:32:08.759823 B50181400 Write-Ack Room temperature: 20.00
19:32:08.938712 T00050000 Read-Data Application-specific flags: 00000000 0
19:32:09.099190 BF0050000 Unk-DataId Application-specific flags: 00000000 0
19:32:10.020406 T10010A00 Write-Data Control setpoint: 10.00
19:32:10.178912 BD0010A00 Write-Ack Control setpoint: 10.00
19:32:10.558738 T10101400 Write-Data Room setpoint: 20.00
19:32:10.559730 R1010151A Write-Data Room setpoint: 21.10
19:32:10.718793 BD010151A Write-Ack Room setpoint: 21.10
19:32:10.739252 AD0101400 Write-Ack Room setpoint: 20.00
Hi,
since 6.5, PIC16F1847- only verion), a new command is added: BS=temperature Boiler setpoint. Some boilers ignore certain controls sent by the thermostat, based on the room temperature and room setpoint values. Sending a different room setpoint can help to convince these boilers to do what they are supposed to do. Set the temperature to 0 to return to passing along the value specified by the thermostat. Examples: BS=16.3, BS=0
It would be great if this one can be added (and then to the HA integration as well) as with my Honeywell Evohome Opentherm thermostat the TT and TC commands don't work.