ha_magiqtouch
ha_magiqtouch copied to clipboard
Zone Handling and common zones
I don't believe you guesses here are correct
climate.py line 187
# Best guess: generally if this is true, this zone is a "common zone" of some kind.
self.controls_system = (
self.zone_index >= self.controller.current_system_state.NoOfZonesControl
or self.controller.current_system_state.NoOfZones == 0
)
In my system (heating only) Zones are returned as
"ZoneName1": "MASTER BED",
"ZoneName2": "BEDS 2,3,BATH",
"ZoneName3": "OFFICE",
"ZoneName4": "LOUNGE",
"ZoneName5": "COMMON ZONE",
"ZoneName6": "ZONE 6",
"ZoneName7": "ZONE 7",
"ZoneName8": "ZONE 8",
"ZoneName9": "ZONE 9",
"ZoneName10": "ZONE 10"
but
"NoOfZones": 5,
"NoOfZonesControl": 1,
"HeaterInSystem": 1,
Your code's assumption is that zone 1 is the common zone, but in my situation that is zone5 (zone_index = 4)
Using the climate card I can turn off the zone only for the "MASTER BED" zone, if I attempt with any of the others, then it turns off the system.
If I log (self.zone_index, self.controls_system, self.controller.current_system_state.NoOfZonesControl)
then I get the following results
0 , False, 1
1 , True, 1
2 , True, 1
3 , True, 1
4 , True, 1
Which is not correct.