Tado Smartes Thermostat

Ich habe die Tados auch im virtuellem Homee in Homee. Mir ging es hier primär darum Luftfeuchtigkeit, Raumtemperatur im Homee verfügbar zu haben. Aktuell fehlt mir noch die Steuerung von Homee an Tado. Das geh ich an wenn mal Zeit ist. Wobei ich nicht glaube, dass ich jemals Homee die Steuerung durchführen lasse.
Ich würde behaupten, dass Tado das beste smarte Steuerungssystem für Heizungen ist. Hab ich in meiner längeren Heizungs-Smarthome-Kariere besser noch nicht gesehen. (Wetterabhängigkeit, Anwesenheit usw. alles sehr einfach) Wie @coffeelover es schon sagt, kann das Tado perfekt.

Das sieht in NodeRed aktuell so aus(Aber lerne erstmal die Grundlagen (Wiki usw.):

4 „Gefällt mir“

Sieht sehr gut aus!!
Ich hänge leider beim ansteuern des Tado-Systems an einer kleinen stelle.
Und zwar übergibt Homee die Temperatur an das virtuelle Thermostat. Von dort aus sollte es dann weiter an die Tado-Api gehen. Bei dieser kann ich die Temperatur angeben, die eingestellt werden soll.
Leider kann ich hier nur direkt eine Temperatur angeben. Schreibe ich dort {{{payload}}} in verschiedensten varianten rein wird dieses nicht aufgelöst.
Im payload steht nach einer Funktion nur eine Zahl, als String habe ich es auch schon getestet.

Habe ich da jetzt einen Hänger oder geht es generell nicht dort Variablen einzufügen.
In der Debug-Box kommt „Error: Request failed with status code 422“

Und ja Tado macht es wirklich nahezu Perfekt =)

Grüße
Edit: habs jetzt über die function-node direkt gemacht :face_with_hand_over_mouth: scheint zu funktionieren

1 „Gefällt mir“

Jetzt wo Homee auch Geofence hat wäre eine Integration noch schöner. Anstatt mit IFTT zu arbeiten.

Ich hatte vor einiger Zeit bei Tado angefragt warum es keine Integration gibt und die Antwort von Tado war, dass ihnen dazu die Informationen fehlen…

Da fehlt es wohl leider an Willen auf beiden Seiten.

Macht wohl wirtschaftlich für keine der beiden Seiten wirklich Sinn.

Ich weiß - das Thema vhih wird derzeit als Lösung „aller“ Probleme gesehen. Ich habe meine Tado mit iobroker verbunden, habe dort NodeRed installiert und die Tados virtualisiert. Damit habe ich sie auch in homee.

2 „Gefällt mir“

könntest du auch den Flow zu Verfügung stellen?
Danke

Klar.

[
    {
        "id": "342106b1.5fe48a",
        "type": "homeeDevice",
        "z": "307fd425.05802c",
        "virtual-homee": "",
        "name": "Heizung Wohnzimmer",
        "nodeId": "360",
        "showNodeId": true,
        "profile": "3004",
        "icon": "nodeicon_radiator",
        "attributes": [
            {
                "instance": 0,
                "minimum": 0,
                "maximum": 10000,
                "current_value": 0,
                "target_value": 0,
                "last_value": 0,
                "unit": "text",
                "step_value": 1,
                "editable": 0,
                "type": 44,
                "state": 1,
                "last_changed": 1543522914,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "data": "1.23",
                "id": 360,
                "node_id": 360
            },
            {
                "instance": 0,
                "minimum": 4,
                "maximum": 25,
                "current_value": 5,
                "target_value": 5,
                "last_value": 5,
                "unit": "%C2%B0C",
                "step_value": 1,
                "editable": 0,
                "type": 5,
                "state": 1,
                "last_changed": 1573711842,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "data": "",
                "id": 362,
                "node_id": 360
            },
            {
                "instance": 0,
                "minimum": 4,
                "maximum": 25,
                "current_value": 5,
                "target_value": 5,
                "last_value": 5,
                "unit": "%C2%B0C",
                "step_value": 1,
                "editable": 1,
                "type": 6,
                "state": 1,
                "last_changed": 1573711842,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "data": "",
                "id": 363,
                "node_id": 360
            },
            {
                "instance": 0,
                "minimum": 0,
                "maximum": 100,
                "current_value": 21,
                "target_value": 21,
                "last_value": 21,
                "unit": "n%2Fa",
                "step_value": 1,
                "editable": 0,
                "type": 7,
                "state": 1,
                "last_changed": 1573711842,
                "changed_by": 1,
                "changed_by_id": 0,
                "based_on": 1,
                "data": "",
                "id": 364,
                "node_id": 360
            }
        ],
        "statusTemplate": "",
        "x": 720,
        "y": 880,
        "wires": [
            [
                "3235f30e.e915fc"
            ]
        ]
    },
    {
        "id": "b9fc7fc9.8e35e",
        "type": "ioBroker in",
        "z": "307fd425.05802c",
        "name": "Value.Temperature",
        "topic": "tado.0.290480.Rooms.4.Actual_Temperature",
        "payloadType": "value",
        "onlyack": "",
        "func": "all",
        "gap": "",
        "x": 150,
        "y": 820,
        "wires": [
            [
                "36cb2b7.481b0d4"
            ]
        ]
    },
    {
        "id": "743245f4.6ac24c",
        "type": "function",
        "z": "307fd425.05802c",
        "name": "Funktion on off",
        "func": "Temp = msg.payload;\nreturn {payload:{\"attribute\":{\"id\":362,\"value\": Temp}}};",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "x": 480,
        "y": 820,
        "wires": [
            [
                "342106b1.5fe48a"
            ]
        ]
    },
    {
        "id": "5b91472d.62a688",
        "type": "ioBroker in",
        "z": "307fd425.05802c",
        "name": "Value.Temperature",
        "topic": "tado.0.290480.Rooms.4.setting.temperature",
        "payloadType": "value",
        "onlyack": "",
        "func": "all",
        "gap": "",
        "x": 150,
        "y": 860,
        "wires": [
            [
                "a4ce1f49.50a1d"
            ]
        ]
    },
    {
        "id": "3d81a59.f24665a",
        "type": "function",
        "z": "307fd425.05802c",
        "name": "Funktion on off",
        "func": "Temp = msg.payload;\nreturn {payload:{\"attribute\":{\"id\":363,\"value\": Temp}}};",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "x": 480,
        "y": 860,
        "wires": [
            [
                "342106b1.5fe48a"
            ]
        ]
    },
    {
        "id": "36cb2b7.481b0d4",
        "type": "json",
        "z": "307fd425.05802c",
        "name": "",
        "property": "payload",
        "action": "",
        "pretty": false,
        "x": 330,
        "y": 820,
        "wires": [
            [
                "743245f4.6ac24c"
            ]
        ]
    },
    {
        "id": "a4ce1f49.50a1d",
        "type": "json",
        "z": "307fd425.05802c",
        "name": "",
        "property": "payload",
        "action": "",
        "pretty": false,
        "x": 330,
        "y": 860,
        "wires": [
            [
                "3d81a59.f24665a"
            ]
        ]
    },
    {
        "id": "7b0049d3.547d38",
        "type": "template",
        "z": "307fd425.05802c",
        "name": "",
        "field": "payload",
        "fieldType": "msg",
        "format": "handlebars",
        "syntax": "mustache",
        "template": "{{payload.targetValue}}",
        "output": "str",
        "x": 1040,
        "y": 840,
        "wires": [
            [
                "184c60e5.d7884f"
            ]
        ]
    },
    {
        "id": "184c60e5.d7884f",
        "type": "ioBroker out",
        "z": "307fd425.05802c",
        "name": "Temperature",
        "topic": "tado.0.290480.Rooms.4.setting.temperature",
        "ack": "false",
        "autoCreate": "false",
        "stateName": "",
        "role": "",
        "stateUnit": "",
        "stateMin": "",
        "stateMax": "",
        "x": 1190,
        "y": 840,
        "wires": []
    },
    {
        "id": "ed5a4aad.37a618",
        "type": "ioBroker in",
        "z": "307fd425.05802c",
        "name": "Current Fw Version",
        "topic": "tado.0.290480.Rooms.4.devices.RU3104574464.info.currentFwVersion",
        "payloadType": "value",
        "onlyack": "",
        "func": "all",
        "gap": "",
        "x": 150,
        "y": 900,
        "wires": [
            [
                "1178c545.9c37f3"
            ]
        ]
    },
    {
        "id": "7cfbad63.e43ff4",
        "type": "ioBroker in",
        "z": "307fd425.05802c",
        "name": "Luftfeuchtigkeit",
        "topic": "tado.0.290480.Rooms.4.Actual_Humidity",
        "payloadType": "value",
        "onlyack": "",
        "func": "all",
        "gap": "",
        "x": 140,
        "y": 940,
        "wires": [
            [
                "e4c723.89eb78e"
            ]
        ]
    },
    {
        "id": "e4c723.89eb78e",
        "type": "json",
        "z": "307fd425.05802c",
        "name": "",
        "property": "payload",
        "action": "",
        "pretty": false,
        "x": 330,
        "y": 940,
        "wires": [
            [
                "317ad69e.27dfca"
            ]
        ]
    },
    {
        "id": "317ad69e.27dfca",
        "type": "function",
        "z": "307fd425.05802c",
        "name": "Funktion on off",
        "func": "Temp = msg.payload;\nreturn {payload:{\"attribute\":{\"id\":364,\"value\": Temp}}};",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "x": 480,
        "y": 940,
        "wires": [
            [
                "342106b1.5fe48a"
            ]
        ]
    },
    {
        "id": "3235f30e.e915fc",
        "type": "switch",
        "z": "307fd425.05802c",
        "name": "",
        "property": "payload.attributeId",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "362",
                "vt": "num"
            },
            {
                "t": "eq",
                "v": "363",
                "vt": "num"
            },
            {
                "t": "eq",
                "v": "360",
                "vt": "num"
            },
            {
                "t": "eq",
                "v": "364",
                "vt": "num"
            },
            {
                "t": "eq",
                "v": "365",
                "vt": "str"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 5,
        "x": 910,
        "y": 860,
        "wires": [
            [],
            [
                "7b0049d3.547d38"
            ],
            [],
            [],
            [
                "fe418c83.48763"
            ]
        ]
    },
    {
        "id": "fe418c83.48763",
        "type": "function",
        "z": "307fd425.05802c",
        "name": "Reset",
        "func": "return {payload: true};",
        "outputs": 1,
        "noerr": 0,
        "x": 1030,
        "y": 880,
        "wires": [
            [
                "8be7a9f1.d3b358"
            ]
        ]
    },
    {
        "id": "8be7a9f1.d3b358",
        "type": "ioBroker out",
        "z": "307fd425.05802c",
        "name": "Temperature",
        "topic": "tado.0.290480.Rooms.4.overlay.clearZoneOverlay",
        "ack": "false",
        "autoCreate": "false",
        "x": 1170,
        "y": 880,
        "wires": []
    },
    {
        "id": "1178c545.9c37f3",
        "type": "function",
        "z": "307fd425.05802c",
        "name": "Set Software",
        "func": "var firmware = parseFloat(msg.payload);\nmsg.payload = {\"attribute\":{ \"id\":360, \"value\": firmware}};\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "x": 350,
        "y": 900,
        "wires": [
            [
                "342106b1.5fe48a"
            ]
        ]
    }
]
2 „Gefällt mir“

Danke

1 „Gefällt mir“

Wie verbindet ihr aktuell homee und tado? Mir reichen 3 IFTT nicht und ich möchte keinen Rechner laufen haben. Gibt es noch eine andere Möglichkeit?

Aktuell die beste Lösung
vHiH in Verbindung mit node-red auf nem Raspi

Mache ich auch wie @ZetX, jedoch mit tado und Nodered in iobroker. In jedem Fall braucht es aber einen Pi (= Rechner).

:coffee:

Hast du eine Empfehlung für eine anfängertaugliche Beschreibung wie man Tado und Hoeme mit node red auf einem Raspi verbindet?

Hi Anna,

wie weit bist du denn schon?
Die Infos sind alle hier im Forum vorhanden und auch die Videos von Micha helfen sehr gut. Es braucht folgende Schritte:

  • Installation iobroker auf dem Raspberry,
  • Installation der 3 Adapter in iobroker: homee, nodered, tado
  • Anlegen der Geräteflows in nodered (wenn du soweit bist - kann ich dann gerne schicken
  • Suchen der virtuellen Geräte als homee in homee

:coffee:

Edit: Hier haben wir dazu schon mal links gesammelt: WIKI: Virtuelle Geräte via hih (vhih)

2 „Gefällt mir“

Hi,

habe mehrere Fragen. Überlege schon länger die tado Fußbodenheizungsthermostste zu kaufen. Habe auch IoBroker und node red bei mir laufen. Jetzt die Fragen. Wie funktioniert tado genau, also bezogen auf die automatische Steuerung bezüglich des Wetters? Benötigt man ein Abo? Kann dies über node red erfolgen bzw. Besser über die automatische Steuerung von tado? Ich würde es glaube ich über tado laufen lassen und als hih bei homee die Werte übertragen lassen und vielleicht mal manuell darüber verändern (Solltemperatur).
Wäre super wenn du mir hier etwas zu sagen könntest.

Hi,
für die prognosebasierte Steuerung brauchst du kein Abo. Grundsätzlich sind 4 Wege möglich:

  1. Tado steuert alleine
  2. NodeRed steuert
  3. Iobroker steuert
  4. homee steuert via iobroker und Nodered.
    Am Ende: Geschmacksache.

Ich habe die Automatik in Tado eingestellt und übersteuere mit homee bei Abwesenheit oä.

:coffee:

Habe tado seit längerem im Einsatz sowohl bei den Raumthermostaten für die Fußbodenheizung als auch den Heizkörperthermostaten. Das System läuft zuverlässig und ich greife da nicht manuell oder andere Systeme ein. Abwesenheitssteuerung funktioniert automatisch, macht aber nur bei Heizkörpern Sinn. Fenster offen hatte ich zeitweise über homee und IFTTT eingerichtet, nutze aber mittlerweile einfach die integrierte Logik von tado, die das ja auch erkennt.
Wer HomeKit nutzt, kann darüber auch tado in Verbindung mit anderen Geräten regeln.

1 „Gefällt mir“

Danke euch beiden für eure Erfahrung.

Danke! Ich bin endlich mal wieder dazu gekommen. Die Heizung habe ich drin, am Brauchwasser scheiterte ich gerade. Gibt es für die Steuerung des Warmwassers in homee einen Beispielflow?

Hallo in die Runde,

gibt es denn hier schon Neuigkeiten, ob Tado mal integriert wird. Eine Bastellösung über Dritt Anwendungen kommt für mich nicht in Frage…

Nein.