zxdavb / ramses_cc

HA integration for CH/DHW and HVAC systems that use the RAMSES II RF protocol
GNU General Public License v3.0
79 stars 17 forks source link

Adding cooling support for evohome #64

Open fuecy opened 1 year ago

fuecy commented 1 year ago

Hi, i think i have a new feature request. I have an evohome setup with a heatpump that supports heating and cooling. Basically my heatpump is controlled by 2 BRD91T1004. One for the normal demand, and one for sending that demand to the heating input or to the cooling input. From my evohome, i can set the system modus in cooling or heating. this is the support article of my setup.

When i switch from heat to cold, i see the following errors.

[ramses_rf.protocol.message]  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC180400007FFF00
[ramses_rf.protocol.message]  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC180400007FFF00
[ramses_rf.protocol.message]  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC180400007FFF00
[ramses_rf.protocol.message]  I --- 01:172368 13:040439 --:------ 1100 008 FC042814007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC042814007FFF00
[ramses_rf.protocol.message]  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC180400007FFF00
[ramses_rf.protocol.message]  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC180400007FFF00

Package log of today. packet.log

'01:172368': {}

config: 
enforce_known_list: false

known_list: 
- '01:172368':
    class: controller
- '04:197921':
    class: radiator_valve
- '04:197927':
    class: radiator_valve
- '04:197901':
    class: radiator_valve
- '34:239834':
    class: thermostat
- '13:075359':
    class: electrical_relay
- '12:235249':
    class: thermostat
- '13:040441':
    class: electrical_relay
- '18:009876':
    class: gateway_interface
- '13:040439':
    class: electrical_relay

block_list: 
other_list: 
_is_evofw3: null
device_class: problem
friendly_name: 18:009876 status

My feature request will be, can we make it support cooling?

zxdavb commented 1 year ago

Hello - I have make the necessary fix - it will be included in the next version of the library (ramses_rf).

Getting it into (ramses_cc) will take a little longer, and I will need testers.

Please keep an eye out here.

fuecy commented 1 year ago

Hi Thanks for looking in to this. I am happy to do some extensive debugging and diving in all scenarios. But I think like most of us, I have private and work commitments and I just can’t guarantee same day reply and the weekend might be full. But I am happy if I can help in any way. I have attached another log file. This file the system is on cooling from the beginning. packet.log

I have some observations till now.

  1. It looks like that 13:040441 is the relay that switches between heating and cooling. However in home assistant it never switches from state. Its only off.

2a. On the moment the system is in cooling, there is some disagreement over the set temperature. (the graph is of 04:197927 included in the log. Purple is the set temperature) Afbeelding1

2b. It might be related. The zones can be heat only, cold only and heat/cold. When the zone is on heat only, evohome shows the zone as off, however the radiator valve goes completely open and on 100% demand. So I have al my zones on, but with a set temperature of 30. (and so its switching between 5 (off?) and 30.

  1. the logs when switching from cold to heat and back

Switching from cold to heating

2023-06-09T18:13:41.900026 045  I --- 01:172368 --:------ 01:172368 0009 003 0000FF
2023-06-09T18:13:41.911790 045  I --- 01:172368 --:------ 01:172368 0008 002 0000
2023-06-09T18:13:41.924197 045  I --- 01:172368 --:------ 01:172368 0008 002 FC00
2023-06-09T18:13:41.937101 045  I --- 01:172368 --:------ 01:172368 0009 003 FC00FF
2023-06-09T18:13:41.953039 045  I --- 01:172368 13:040439 --:------ 1100 008 FC182814007FFF01
2023-06-09T18:13:41.967923 045  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF01
2023-06-09T18:13:41.977790 045  I --- 01:172368 --:------ 01:172368 3150 002 FC00
2023-06-09T18:13:41.991073 045  I --- 01:172368 --:------ 01:172368 2D49 003 F600FF
2023-06-09T18:13:42.005913 053  I --- 13:040441 --:------ 13:040441 3EF0 003 0000FF
2023-06-09T18:13:42.054707 095 RQ --- 18:009876 13:040441 --:------ 3EF1 001 00
2023-06-09T18:13:42.069088 055 RP --- 13:040441 18:009876 --:------ 3EF1 007 00000015F800FF
2023-06-09T18:13:42.597132 057  I --- 13:075359 --:------ 13:075359 3EF0 003 0000FF
2023-06-09T18:13:42.630703 095 RQ --- 18:009876 13:075359 --:------ 3EF1 001 00
2023-06-09T18:13:42.645795 056 RP --- 13:075359 18:009876 --:------ 3EF1 007 0000EA00EA00FF
2023-06-09T18:13:42.786750 061  I --- 13:040439 --:------ 13:040439 3EF0 003 0000FF
2023-06-09T18:13:42.829925 095 RQ --- 18:009876 13:040439 --:------ 3EF1 001 00
2023-06-09T18:13:42.844729 069 RP --- 13:040439 18:009876 --:------ 3EF1 007 0000EA00EA00FF
2023-06-09T18:13:49.217784 064  I --- 04:197901 --:------ 01:172368 1060 003 036401
2023-06-09T18:13:49.232604 064  I --- 04:197901 --:------ 04:197901 1060 003 006401
2023-06-09T18:13:49.247738 063  I --- 04:197901 --:------ 01:172368 12B0 003 030000
2023-06-09T18:13:49.428477 064  I --- 04:197901 --:------ 01:172368 1060 003 036401
2023-06-09T18:13:49.442705 063  I --- 04:197901 --:------ 04:197901 1060 003 006401
2023-06-09T18:13:49.457599 065  I --- 04:197901 --:------ 01:172368 12B0 003 030000
2023-06-09T18:14:01.013068 065  I --- 04:197901 --:------ 01:172368 2309 003 037EFF
2023-06-09T18:14:13.658256 045  I --- 01:172368 --:------ 01:172368 0009 003 0000FF
2023-06-09T18:14:13.804531 045  I --- 01:172368 --:------ 01:172368 3150 002 FC00
2023-06-09T18:14:14.603596 045  I --- 01:172368 --:------ 01:172368 0008 002 0000
2023-06-09T18:14:14.703621 045  I --- 01:172368 --:------ 01:172368 0008 002 FC00
2023-06-09T18:14:15.896403 045  I --- 34:239834 --:------ 34:239834 30C9 003 00098F
2023-06-09T18:14:16.104500 045  I --- 01:172368 --:------ 01:172368 0009 003 FC00FF
2023-06-09T18:14:16.120000 045  I --- 01:172368 13:040439 --:------ 1100 008 FC182814007FFF01
2023-06-09T18:14:16.169254 045  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF01
2023-06-09T18:14:16.309155 045  I --- 01:172368 --:------ 01:172368 0009 003 0000FF
2023-06-09T18:14:16.320993 045  I --- 01:172368 --:------ 01:172368 0008 002 00C8
2023-06-09T18:14:16.333193 045  I --- 01:172368 --:------ 01:172368 0008 002 FCC8
2023-06-09T18:14:16.345146 045  I --- 01:172368 --:------ 01:172368 3150 002 FCC8
2023-06-09T18:14:16.357346 045  I --- 01:172368 --:------ 01:172368 2D49 003 F6C8FF
2023-06-09T18:14:16.372336 053  I --- 13:040441 --:------ 13:040441 3EF0 003 00C8FF
2023-06-09T18:14:16.422710 095 RQ --- 18:009876 13:040441 --:------ 3EF1 001 00
2023-06-09T18:14:16.430624 055 RP --- 13:040441 18:009876 --:------ 3EF1 007 00000015F800FF
2023-06-09T18:14:16.598061 061  I --- 13:075359 --:------ 13:075359 3EF0 003 00C8FF
2023-06-09T18:14:16.666964 095 RQ --- 18:009876 13:075359 --:------ 3EF1 001 00
2023-06-09T18:14:16.681598 071 RP --- 13:075359 18:009876 --:------ 3EF1 007 0000C800C8C8FF
2023-06-09T18:14:20.205707 045  I --- 01:172368 --:------ 01:172368 0009 003 FC00FF
2023-06-09T18:14:20.220487 045  I --- 01:172368 13:040439 --:------ 1100 008 FC182814007FFF00
2023-06-09 18:14:20.221 WARNING (MainThread) [ramses_rf.protocol.message]  I --- 01:172368 13:040439 --:------ 1100 008 FC182814007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC182814007FFF00
2023-06-09T18:14:20.234716 045  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00
2023-06-09 18:14:20.236 WARNING (MainThread) [ramses_rf.protocol.message]  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC180400007FFF00
2023-06-09T18:14:20.603278 045  I --- 01:172368 --:------ 01:172368 0009 003 0000FF
2023-06-09T18:14:20.615145 045  I --- 01:172368 --:------ 01:172368 0008 002 0000
2023-06-09T18:14:20.627307 045  I --- 01:172368 --:------ 01:172368 0008 002 FC00
2023-06-09T18:14:20.638975 045  I --- 01:172368 --:------ 01:172368 3150 002 FC00
2023-06-09T18:14:20.651323 045  I --- 01:172368 --:------ 01:172368 2D49 003 F600FF
2023-06-09T18:14:20.789679 068  I --- 13:040439 --:------ 13:040439 3EF0 003 0000FF
2023-06-09T18:14:20.874319 095 RQ --- 18:009876 13:040439 --:------ 3EF1 001 00
2023-06-09T18:14:20.888997 068 RP --- 13:040439 18:009876 --:------ 3EF1 007 000194019400FF
2023-06-09T18:14:21.597248 059  I --- 13:075359 --:------ 13:075359 3EF0 003 0000FF
2023-06-09T18:14:21.639522 095 RQ --- 18:009876 13:075359 --:------ 3EF1 001 00
2023-06-09T18:14:21.877085 095 RQ --- 18:009876 13:075359 --:------ 3EF1 001 00

Switching from heating to cold

2023-06-09T18:14:30.840486 045  I --- 01:172368 --:------ 01:172368 0009 003 0000FF
2023-06-09T18:14:30.850576 045  I --- 01:172368 --:------ 01:172368 0008 002 00C8
2023-06-09T18:14:30.862733 045  I --- 01:172368 --:------ 01:172368 0008 002 FCC8
2023-06-09T18:14:30.874902 045  I --- 01:172368 --:------ 01:172368 3150 002 FCC8
2023-06-09T18:14:30.886980 045  I --- 01:172368 --:------ 01:172368 2D49 003 F6C8FF
2023-06-09T18:14:30.902159 053  I --- 13:040441 --:------ 13:040441 3EF0 003 00C8FF
2023-06-09T18:14:30.987595 095 RQ --- 18:009876 13:040441 --:------ 3EF1 001 00
2023-06-09T18:14:31.001890 055 RP --- 13:040441 18:009876 --:------ 3EF1 007 00000015F800FF
2023-06-09T18:14:31.597650 062  I --- 13:075359 --:------ 13:075359 3EF0 003 00C8FF
2023-06-09T18:14:31.666742 095 RQ --- 18:009876 13:075359 --:------ 3EF1 001 00
2023-06-09T18:14:31.680795 070 RP --- 13:075359 18:009876 --:------ 3EF1 007 0000B900B9C8FF
2023-06-09T18:14:31.713447 045  I --- 01:172368 --:------ 01:172368 0009 003 FC00FF
2023-06-09T18:14:31.723330 045  I --- 01:172368 13:040439 --:------ 1100 008 FC182814007FFF00
2023-06-09 18:14:31.725 WARNING (MainThread) [ramses_rf.protocol.message]  I --- 01:172368 13:040439 --:------ 1100 008 FC182814007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC182814007FFF00
2023-06-09T18:14:31.737965 045  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00
2023-06-09 18:14:31.741 WARNING (MainThread) [ramses_rf.protocol.message]  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC180400007FFF00
2023-06-09T18:14:37.620090 095 RQ --- 18:009876 13:040441 --:------ 0008 001 00
2023-06-09T18:14:37.630213 055 RP --- 13:040441 18:009876 --:------ 0008 002 0000
2023-06-09T18:14:43.441346 095 RQ --- 18:009876 01:172368 --:------ 2349 002 0000
2023-06-09T18:14:43.457289 045 RP --- 01:172368 18:009876 --:------ 2349 007 00089800FFFFFF
2023-06-09T18:15:06.558286 095 RQ --- 18:009876 01:172368 --:------ 0418 003 000000
2023-06-09T18:15:06.584331 045 RP --- 01:172368 18:009876 --:------ 0418 022 000000B0000000000000000000007FFFFF7000000000
2023-06-09T18:15:20.924281 095 RQ --- 18:009876 13:040439 --:------ 3EF1 001 00
2023-06-09T18:15:20.938983 069 RP --- 13:040439 18:009876 --:------ 3EF1 007 000158015800FF
2023-06-09T18:15:32.515487 045  I --- 01:172368 --:------ 01:172368 0008 002 00C8
2023-06-09T18:15:32.816896 045  I --- 01:172368 --:------ 01:172368 2D49 003 F6C8FF
2023-06-09T18:15:32.831094 054  I --- 13:040441 --:------ 13:040441 3EF0 003 00C8FF
2023-06-09T18:15:32.891511 095 RQ --- 18:009876 13:040441 --:------ 3EF1 001 00
2023-06-09T18:15:32.905936 055 RP --- 13:040441 18:009876 --:------ 3EF1 007 00000015F800FF
2023-06-09T18:15:33.815536 045  I --- 01:172368 --:------ 01:172368 0008 002 FCC8
2023-06-09T18:15:35.616774 045  I --- 01:172368 --:------ 01:172368 0009 003 0000FF
2023-06-09T18:15:35.631784 045  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00
2023-06-09 18:15:35.633 WARNING (MainThread) [ramses_rf.protocol.message]  I --- 01:172368 --:------ 01:172368 1100 008 FC180400007FFF00 < Corrupt payload: Payload doesn't match '^(00|FC)[0-9A-F]{6}(00|FF)([0-9A-F]{4}01)?$': FC180400007FFF00
2023-06-09T18:15:35.642625 045  I --- 01:172368 --:------ 01:172368 3150 002 FCC8

Full log of switching to heating and back. packet.log

Let me know if you need to need specific scenario's, i will try to catch the exact event.