ha_magiqtouch icon indicating copy to clipboard operation
ha_magiqtouch copied to clipboard

Zone Handling and common zones

Open wrodie opened this issue 2 years ago • 11 comments

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.

wrodie avatar Feb 03 '23 05:02 wrodie