[Modul] Tado (beta)

Hi, ich habe leider mein Gerät wieder zurückgesendet.

Bei mir funktioniert alles wunderbar.

Es war aber auch ne schwere Geburt herauszufinden in welchen Modi welche Parameter von Tado akzeptiert bzw. vorausgesetzt werden. Ich gehe davon aus, dass dies bei den Geräten unterschiedlich ist.

Hi,
@ubittner
Ich verwende das Smart AC Control mit einer Samsung Klimaanlage. Im Debug gibt es keine Fehlermeldungen, und wenn ich einen Action request mache aktualisiert sich der Status in Symcon für ein paar Sekunden, aber ohne tatsächlich die Einstellungen zu ändern.

Wenn es um die Parameter geht bin ich überfordert. Sind die erforderlichen Parameter für die im Modul enthaltenen Methoden für alle Klimaanlagen unterschiedlich oder gibt es nur manche Abweichungen?

Beste Grüße,
David

Hi David,

es gibt ja leider keine offizielle API.

Daher kann man nur „mitloggen“ was in der Tado App bzw. WebApp passiert und welche Tado Parameter genutzt werden.

Das mitloggen kann man per Wireshark oder Fiddler durchführen.
Es gibt vermutlich unterschiedliche Befehle/ Parameter für unterschiedliche Klimaanlagen.

Bei einer Fujitsu Klimaanlage funktioniert es.

Hast du denn in der Instanzkonfiguration von Standard auf Fujitsu mal gewechselt, auch wenn du eine Samsung Anlage hast.

Es darf nicht „Standard“ ausgewählt sein.

Uli

Hi Uli,
danke dir für den Tipp. Habe jetzt auf Fujitsu gewechselt. Jetzt funktionieren alle Standardbefehle. Ich werde in den nächsten Tagen schauen, ob alles funktioniert und sollte ich Lücken entdecken probier ich mal die Parameter rauszufischen.

Beste Grüße,
David

Hallo Uli,

vielen dank für das super Modul!
Ich habe hier eine Klimaanlage von LG. Die lässt sich momentan nur eingeschränkt steuern.
Was geht:

  • Von Manuell auf Automatik schalten. (zurück geht nicht)
  • Temperatur setzen

Was geht nicht:

  • An oder aus schalten
  • von Automatik auf Manuell schalten
  • Lüftungsintensität. Springt immer auf Gering
  • Lamellenbewegung (wird aber auch nicht in der Tado App angezeigt)

Wenn Du mir kurz erklärst wie ich mit Wireshark noch den richtigen Paketen suche kann ich gerne weitere Infos bereitstellen.

Danke und viele Grüße
Stephan

Hi Stephan,

hast du in der Instanzkonfiguration des Tado Cooling das Gerät mal auf etwas anderes gestellt, als Standard?

Es kann ruhig auch FUJITSU ausgewählt werden, das ist ein erweiterter Modus.

Ansonsten mit der App die Funktion auslösen und mit Wireshark schauen, was übergeben wird. Eventuell kannst du auch Fiddler nehmen.

Gruß

Uli

Hab die beiden FUJITSU Geräte getestet. Macht leider keinen Unterschied. Mein Problem mit Wireshark: Ich sehe da am Mac keine Pakete vom iPhone. Wie läuft das?

Viele Grüße
Stephan

Hi Stephan,

du könntest dich am PC/Mac auf tado mittels WebBrowser einloggen.

Tado Web Login

Dann Wireshark starten oder vielleicht besser noch Fiddler.
Wir müssten dann schauen welche Parameter benötigt / gesendet werden, wenn du eine Funktion auslöst.

Wenn du das vom iPhone machen willst dann schau mal nach mitmproxy.

Vermutliches es so, wie @Samoth bereits beschrieben hat:

Versuche aber gerne zu helfen, soweit es meine Zeit zulässt.

Fangen wir doch mit den zwei Punkten mal an:

  • An oder aus schalten
  • von Automatik auf Manuell schalten

Uli

mit Fiddler und der Tado Webseite funktioniert es.

Klima aus:
Request:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„power“: „OFF“,
„type“: „AIR_CONDITIONING“
}
}

Response:
{
„type“: „MANUAL“,
„setting“: {
„type“: „AIR_CONDITIONING“,
„power“: „OFF“
},
„termination“: {
„type“: „MANUAL“,
„typeSkillBasedApp“: „MANUAL“,
„projectedExpiry“: null
}
}

Klima an:
Request:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„temperature“: {
„celsius“: 27,
„fahrenheit“: 80.6
},
„mode“: „HEAT“,
„type“: „AIR_CONDITIONING“,
„power“: „ON“,
„fanSpeed“: „LOW“
}
}

Response:
{
„type“: „MANUAL“,
„setting“: {
„type“: „AIR_CONDITIONING“,
„power“: „ON“,
„mode“: „HEAT“,
„temperature“: {
„celsius“: 27,
„fahrenheit“: 80.6
},
„fanSpeed“: „LOW“
},
„termination“: {
„type“: „MANUAL“,
„typeSkillBasedApp“: „MANUAL“,
„projectedExpiry“: null
}
}

Fanspeed auf Auto:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„type“: „AIR_CONDITIONING“,
„power“: „ON“,
„mode“: „HEAT“,
„temperature“: {
„celsius“: 27,
„fahrenheit“: 80.6
},
„fanSpeed“: „AUTO“
}
}

Fanspeed LOW:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„type“: „AIR_CONDITIONING“,
„power“: „ON“,
„mode“: „HEAT“,
„temperature“: {
„celsius“: 27,
„fahrenheit“: 80.6
},
„fanSpeed“: „LOW“
}
}

Fanspeed MIDDLE:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„type“: „AIR_CONDITIONING“,
„power“: „ON“,
„mode“: „HEAT“,
„temperature“: {
„celsius“: 27,
„fahrenheit“: 80.6
},
„fanSpeed“: „MIDDLE“
}
}

Fanspeed HIGH:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„type“: „AIR_CONDITIONING“,
„power“: „ON“,
„mode“: „HEAT“,
„temperature“: {
„celsius“: 27,
„fahrenheit“: 80.6
},
„fanSpeed“: „HIGH“
}
}

Mode umschalten:

COOL:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„temperature“: {
„celsius“: 23,
„fahrenheit“: 73.4
},
„mode“: „COOL“,
„type“: „AIR_CONDITIONING“,
„power“: „ON“,
„fanSpeed“: „LOW“
}
}

DRY:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„mode“: „DRY“,
„type“: „AIR_CONDITIONING“,
„power“: „ON“
}
}

FAN:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„mode“: „FAN“,
„type“: „AIR_CONDITIONING“,
„power“: „ON“
}
}

AUTO:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„mode“: „AUTO“,
„type“: „AIR_CONDITIONING“,
„power“: „ON“
}
}

HEAT:
{
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„temperature“: {
„celsius“: 27,
„fahrenheit“: 80.6
},
„mode“: „HEAT“,
„type“: „AIR_CONDITIONING“,
„power“: „ON“,
„fanSpeed“: „LOW“
}
}

Hoffe das hilft so weiter

Gruß Stephan

Hallo Stephan,

danke für die schnelle Bereitstellung.

Ich schaue mir das mal an… Das wird jetzt aber etwas dauern, da ich im Moment eingespannt bin.

Ich melde mich wieder, sobald ich mehr weiß.

Magst du mir noch verraten welchen Typ du von der LG Klimaanlage hast?

Uli

kein Stress :+1:

Genau Bezeichnung der Klima ist:
LG Standard Plus PC12SQ

Hi Stephan,

kannst du mir die URLs noch zu den Aktionen schicken. Die hatten letzten an einer anderen Stelle die URL geändert.

Danke

Uli

Hi Stephan,

magst du mal im Store auf den Beta Kanal wechseln und ausprobieren, ob es jetzt besser ist?!

Ich habe jetzt mal auf die schnelle den „Swing“ für dein Gerät entfernt, da dies vermutlich nicht unterstützt wird. Ist jetzt noch etwas Blindflug, da ich es ja nicht selber testen kann.

Bitte in der Instanzkonfiguration dein Gerät auswählen.

Uli

Hi Uli,

bin auf Beta und hab in der Instanz die LG ausgewählt. Steuerung ist identisch zu vorher. Ich kann nur von Manuell auf Automatik schalten (zurück geht nicht). Aus schalten oder Modus wechseln etc. geht überhaupt nicht.

Viele Grüße
Stephan

Hi Stephan,

dann muss ich mal weiter forschen.

Im Moment ist das Konzept folgendermaßen:

Es werden mehrere Parameter übertragen, auch wenn du nur An oder Aus schaltest.

Muss ich mal gucken, welche Lösung es für dich gibt.

Was wird denn im Debug ausgegeben, bzw. was sagt der Fiddler, wenn du von IPS aus schaltest?

Uli

Hi Stephan,

Update 1.05-34 ist online

Hatte in der Vorversion noch etwas vergessen :see_no_evil:. Magst du es jetzt noch einmal ausprobieren?

Falls es immer noch nicht klappt, dann muss ich tiefer einsteigen und mir Gedanken machen, wie ich alle Geräte unter einen Hut bringen kann. Vermutlich müssen Methoden umgeschrieben werden.

Wenn du es ausprobierst, bitte Meldungsfenster und den jeweiligen Debug (Splitter, Gerät) offen haben.

Uli

Hi Stephan,

im Beta Kanal gibt es eine neue Version 1.05-35, hier habe ich einiges überarbeitet, um hoffentlich alle Geräte unter einen Hut bringen zu können.

Nach dem Update musst du bitte die Instanzkonfiguration des Cooling Devices prüfen.
Bei dir sollte / muss die Lamellenbewegung aus sein, da dein Gerät keinen „SWING“ unterstützt. Alle Anderen User, welche ein Gerät mit „SWING“ haben, bitte aktivieren. Dies soll aber beim Update bereits automatisch erfolgen.

Freue mich über deine Rückmeldung.

Uli

@Samoht

Nur zur Info, siehe Post oben. Du muss es nicht unbedingt aktualisieren. Ich habe jetzt aber ein paar Requests vorliegen, die unterschiedlich sind.

Diese Logik war jetzt aus einem anderen Debug:

########## Check device mode

// COOL: we need teperature and fanspeed, if device has swing mode we also need swing mode

// DRY: without temperature and fan speed, if device has swing mode we also need swing mode
              
// FAN: without temperature and fanspeed, if device has swing mode we also need swing mode

// HEAT: we need temperature and fanspeed, if device has swing mode we also need swing mode

Bei deinem Gerät hattest du mir mal dies gemeldet:

"mode": "FAN": ohne Temperatur
"mode": "DRY": ohne Temperatur und ohne fanSpeed

Hier gibt es eine Unstimmigkeit bei FAN. Kannst du bei dir nochmals prüfen ob wirklich fanSpeed benötigt wird?

Danke

Uli

Hallo Uli,

entschuldige die späte Rückmeldung.
Soweit funktioniert jetzt alles! Top!

Bezüglich FAN schickt die Tado Webseite folgendes:
„termination“: {
„typeSkillBasedApp“: „MANUAL“
},
„setting“: {
„mode“: „FAN“,
„type“: „AIR_CONDITIONING“,
„power“: „ON“
}
}

Da wird kein Fanspeed benötigt. Auf der Webseite kann man in diesem Modus auch nichts einstellen außer an und aus.

Viele Grüße
Stephan