You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
schon mal vielen Dank für deine Mühen mit dem Plugin! Das Ganze läuft ziemlich einwandfrei bei mir, bloß ist mir aufgefallen, dass der CurrentHeatingCoolingState nicht ganz korrekt ausgelesen wird.
Wenn ich mich richtig erinnere, dann kann man in HomeKit zwar den TargetHeatingCoolingState zwischen 0, 1, 2 und 3 wählen (OFF, HEAT, COOL, AUTO), der CurrentHeatingCoolingState kennt jedoch nur 0, 1 und 2, also kein AUTO. Daher erscheint das Icon in der Home-App schwarz und zeigt nicht den tatsächlichen Zustand an.
Ich habe die Thermostat.js ein wenig angepasst und sie wie folgt geändert:
1.) Da ein Thermostat von Tado nicht kühlen kann, habe ich die validValues der Characteristic.TargetHeatingCoolingState auf 0, 1 und 3 beschränkt. Das wird in der Home-App auch übernommen und es erscheint nur noch Aus, Heizen und Automatisch.
2.) Das Thermostat kann den tatsächlichen Ventilzustand anzeigen, so dass der CurrentHeatingCoolingState korrekt (wie beispielsweise bei Verwendung über die Tado-Bridge) dargestellt wird. Folgende Fälle werden dann im Symbol der Home-App unterschieden:
grau: Heizung aus
orange: Heizung an (aktiv), Ventil offen -> Ist-Temperatur unter Zieltemperatur (HEAT)
grün: Heizung an (inaktiv), Ventil geschlossen -> Zieltemperatur erreicht (OFF)
3.) Hiervon unabhängig wird der targetstate ausgelesen, der (analog zu 1.) nur noch die Zustände OFF, HEAT und AUTO kennt.
So sieht meine self.getContent.... dann unter anderem aus:
if (result.sensorDataPoints != undefined) {
self.humidity = result.sensorDataPoints.humidity.percentage;
// Getting current state
if (result.activityDataPoints.heatingPower.percentage == 0) {
self.currentstate = 0; // OFF
} else {
self.currentstate = 1; // HEAT
}
// Getting target state and target temperature
if (result.setting.power == "OFF") {
self.targetstate = 0; // OFF
if (self.tempUnit == "CELSIUS") {
self.currenttemp = result.sensorDataPoints.insideTemperature.celsius;
self.targettemp = result.sensorDataPoints.insideTemperature.celsius;
} else {
self.currenttemp = result.sensorDataPoints.insideTemperature.fahrenheit;
self.targettemp = result.sensorDataPoints.insideTemperature.fahrenheit;
}
} else {
if (result.overlayType == null) {
self.targetstate = 3; // AUTO
} else {
self.targetstate = 1; // MANUAL / HEAT
}
if (self.tempUnit == "CELSIUS") {
self.currenttemp = result.sensorDataPoints.insideTemperature.celsius;
self.targettemp = result.setting.temperature.celsius;
} else {
self.currenttemp = result.sensorDataPoints.insideTemperature.fahrenheit;
self.targettemp = result.setting.temperature.fahrenheit;
}
}
Was hältst du davon?
Beste Grüße,
Benno
The text was updated successfully, but these errors were encountered:
Danke dir für die Mühe, ich werde es mir mal anschauen wenn ich etwas mehr Zeit habe und werde es dann in der neuen Version evtl mit aufnehmen, für die neue Version habe ich vor das Plugin umzuschreiben auf 'dynamic platform'
Hey Seyd,
schon mal vielen Dank für deine Mühen mit dem Plugin! Das Ganze läuft ziemlich einwandfrei bei mir, bloß ist mir aufgefallen, dass der CurrentHeatingCoolingState nicht ganz korrekt ausgelesen wird.
Wenn ich mich richtig erinnere, dann kann man in HomeKit zwar den TargetHeatingCoolingState zwischen 0, 1, 2 und 3 wählen (OFF, HEAT, COOL, AUTO), der CurrentHeatingCoolingState kennt jedoch nur 0, 1 und 2, also kein AUTO. Daher erscheint das Icon in der Home-App schwarz und zeigt nicht den tatsächlichen Zustand an.
Ich habe die Thermostat.js ein wenig angepasst und sie wie folgt geändert:
1.) Da ein Thermostat von Tado nicht kühlen kann, habe ich die validValues der Characteristic.TargetHeatingCoolingState auf 0, 1 und 3 beschränkt. Das wird in der Home-App auch übernommen und es erscheint nur noch Aus, Heizen und Automatisch.
2.) Das Thermostat kann den tatsächlichen Ventilzustand anzeigen, so dass der CurrentHeatingCoolingState korrekt (wie beispielsweise bei Verwendung über die Tado-Bridge) dargestellt wird. Folgende Fälle werden dann im Symbol der Home-App unterschieden:
grau: Heizung aus
orange: Heizung an (aktiv), Ventil offen -> Ist-Temperatur unter Zieltemperatur (HEAT)
grün: Heizung an (inaktiv), Ventil geschlossen -> Zieltemperatur erreicht (OFF)
3.) Hiervon unabhängig wird der targetstate ausgelesen, der (analog zu 1.) nur noch die Zustände OFF, HEAT und AUTO kennt.
So sieht meine self.getContent.... dann unter anderem aus:
Was hältst du davon?
Beste Grüße,
Benno
The text was updated successfully, but these errors were encountered: