homee in Verbindung mit MQTT: homeeToMqtt

@gido Hast Du eine Idee, warum ich es mit dem Homee Terminal per Websocket schaffe, meine Hörmann Haustür mit Put:nodes/9/attributes/28?target_value=1 zu öffnen und per homee2mqtt nicht? Schade, dass die ansonsten tolle Bridge so (für mich) nicht nutzbar ist. Zur nächsten Home & Building wird Enertex voraussichtlich die neue Version ihrer EibPC Firmware präsentieren, in der MQTT eingebaut ist. Dann wollte ich alles im Haus, was nicht per KNX läuft, per MQTT ansteuern.

Du musst den entsprechenden MQTT Topic setzen:

homee/devices/set/[DeviceId]/attributes/[AttributeId]

In deinem Fall:

homee/devices/set/9/attributes/28 auf 1

Für alle die hier mit MQTT spielen sei hier nochmal der MQTT Explorer empfohlen.
Dann sieht man was passiert.

3 „Gefällt mir“

Danke @guido,
leider funktioniert genau das nicht. Mit dem MQTT Explorer arbeite ich auch schon länger und kann damit z.B. meine WiFI Relais mit ESPurna schalten. Wenn ich es versuche, wie von Dir beschrieben, passiert leider nichts.


Ich habe den Homee nur für meine Hörmann Tore und Türen. Daher kann ich leider nicht vergleichen.

Schick doch mal einen Screenshot vom Topic:

homee/devices/status/9/attributes/28

evtl. fehlt der Typ für dein Tore in der Liste:

’ // subscribe some types
if (
type === ‚OnOff‘ ||
type === ‚Brightness‘ ||
type === ‚TargetTemperature‘ ||
type === ‚CurrentPosition‘ ||
type === ‚ColorTemperature‘ ||
type === ‚HomeeMode‘ ||
type === ‚HeatingMode‘
)

1 „Gefällt mir“

Hier ist der Inhalt vom Topic meiner Hörmann Haustür:

{
 "id":28,
 "node_id":9,
 "instance":0,
 "minimum":0,
 "maximum":1,
 "current_value":0,
 "target_value":0,
 "last_value":0,
 "unit":"",
 "step_value":1,
 "editable":1,
 "type":327,
 "state":1,
 "last_changed":1663511832,
 "changed_by":1,
 "changed_by_id":0,
 "based_on":4,
 "data":0,
 "name":"Haustür",
 "typeString":327,
 "cubeType":"Unknown",
 "note":"# Hörmann ThermoSafe Smart",
 "boolData":"False"
}

Du musst wahrscheinlich den Code von @gido bearbeiten auf deinem 24/7 System und den Type vom Tor hinzufügen.

Du musst die homee enums austauschen und den Type 327 im Code hinzufügen.

Habe ich gerade gemacht.
Steht ungetestet auf GitHub.
Sorry beruflich Land unter.
Wer erbarmt sich zum testen :wink:

2 „Gefällt mir“

Und danke an @stfnhmplr für die Pflege der Enum Liste.

Da ich vor ein paar Wochen angefangen habe mit Homeassistant zu spielen, um meine sonstigen Kram zu integrieren, habe ich Homee2Mqtt in Go nochmal mit neuen Ansatz implementiert, um den MQTT Autodiscover von HA zu unterstützen. Es fehlt noch ein bisschen Liebe aber es stehen in der MQTT Integration jetzt 108 Devices und 450 Entities zur Verfügung.

Es fehlen noch:

  • Homee Api Key renew
  • Rauchmelder
  • Jalousien/Rollos
  • Türen und Tore :wink:

Das Ding läuft bereits als HA Addon.
Bei Interesse bzw. den Wunsch des Mitprogrammierertums stelle ich den Stand gerne auf GitHub zur Verfügung.
Die Mappings für das Autodiscover erfordern hier die meiste Fleißarbeit.

1 „Gefällt mir“

Danke! Teste ich gerne, wenn ich einen Docker Container bekomme.
Aktuell nutze ich den von @MehrCurry im Docker Hub

Für Türen und Tore kann ich zumindest für Hörmann zwei beisteuern, da ich neben der bereits angesprochenen Haustür noch ein Garagentor und ein Zaunschiebetor habe. Folgt gleich in neuem Post.

Hier das Topic für mein Hörmann Garagentor

{
 "id":25,
 "node_id":5,
 "instance":0,
 "minimum":0,
 "maximum":4,
 "current_value":0,
 "target_value":0,
 "last_value":3,
 "unit":"",
 "step_value":1,
 "editable":1,
 "type":135,
 "state":1,
 "last_changed":1662818651,
 "changed_by":1,
 "changed_by_id":0,
 "based_on":4,
 "data":0,
 "name":"Garage",
 "options":{
   "can_observe":[300],
   "automations":["toggle"]
   },
 "typeString":"UpDown",
 "cubeType":"Unknown",
 "note":"# Hörmann SupraMatic E3",
 "boolData":"False"
}

{
 "id":26,
 "node_id":5,
 "instance":0,
 "minimum":0,
 "maximum":100,
 "current_value":0,
 "target_value":0,
 "last_value":57,
 "unit":"%",
 "step_value":1,
 "editable":0,
 "type":15,
 "state":1,
 "last_changed":1662818651,
 "changed_by":1,
 "changed_by_id":0,
 "based_on":4,
 "data":0,
 "name":"Garage",
 "options":{
  "history":{
   "day":35,
   "week":5,
   "month":1}
   },
 "typeString":"Position",
 "cubeType":"Unknown",
 "note":"# Hörmann SupraMatic E3",
 "boolData":"False"
}

{
    "id": 27,
    "node_id": 5,
    "instance": 0,
    "minimum": 0,
    "maximum": 1,
    "current_value": 0,
    "target_value": 0,
    "last_value": 0,
    "unit": "",
    "step_value": 1,
    "editable": 0,
    "type": 70,
    "state": 1,
    "last_changed": 1662818651,
    "changed_by": 1,
    "changed_by_id": 0,
    "based_on": 4,
    "data": 0,
    "name": "Garage",
    "options": {
        "history": {
            "day": 182,
            "week": 26,
            "month": 6,
            "stepped": true
        }
    },
    "typeString": "MalfunctionAlarm",
    "cubeType": "Unknown",
    "note": "# Hörmann SupraMatic E3",
    "boolData": "False"
}

{
    "id": 30,
    "node_id": 5,
    "instance": 0,
    "minimum": 0,
    "maximum": 30,
    "current_value": 0,
    "target_value": 0,
    "last_value": 5,
    "unit": "min",
    "step_value": 1,
    "editable": 1,
    "type": 88,
    "state": 1,
    "last_changed": 1649197237,
    "changed_by": 1,
    "changed_by_id": 0,
    "based_on": 1,
    "data": 0,
    "name": "Garage",
    "typeString": "PollingInterval",
    "cubeType": "Unknown",
    "note": "# Hörmann SupraMatic E3",
    "boolData": "False"
}

{
    "id": 33,
    "node_id": 5,
    "instance": 0,
    "minimum": 0,
    "maximum": 1,
    "current_value": 0,
    "target_value": 0,
    "last_value": 0,
    "unit": "",
    "step_value": 1,
    "editable": 1,
    "type": 385,
    "state": 1,
    "last_changed": 0,
    "changed_by": 0,
    "changed_by_id": 0,
    "based_on": 0,
    "data": 0,
    "name": "Garage",
    "typeString": 385,
    "cubeType": "Unknown",
    "note": "# Hörmann SupraMatic E3",
    "boolData": "False"
}

Und hier das Topic für einen Drehtorantrieb:

{
    "id": 21,
    "node_id": 2,
    "instance": 0,
    "minimum": 0,
    "maximum": 1,
    "current_value": 0,
    "target_value": 0,
    "last_value": 0,
    "unit": "",
    "step_value": 1,
    "editable": 1,
    "type": 304,
    "state": 1,
    "last_changed": 1663653735,
    "changed_by": 1,
    "changed_by_id": 0,
    "based_on": 4,
    "data": 0,
    "name": "Tor",
    "typeString": 304,
    "cubeType": "Unknown",
    "note": "# Hörmann VersaMatic",
    "boolData": "False"
}

{
    "id": 22,
    "node_id": 2,
    "instance": 0,
    "minimum": 0,
    "maximum": 100,
    "current_value": 0,
    "target_value": 0,
    "last_value": 0,
    "unit": "%",
    "step_value": 1,
    "editable": 0,
    "type": 15,
    "state": 1,
    "last_changed": 1663653735,
    "changed_by": 1,
    "changed_by_id": 0,
    "based_on": 4,
    "data": 0,
    "name": "Tor",
    "options": {
        "history": {
            "day": 35,
            "week": 5,
            "month": 1
        }
    },
    "typeString": "Position",
    "cubeType": "Unknown",
    "note": "# Hörmann VersaMatic",
    "boolData": "False"
}

{
    "id": 23,
    "node_id": 2,
    "instance": 0,
    "minimum": 0,
    "maximum": 4,
    "current_value": 2,
    "target_value": 2,
    "last_value": 2,
    "unit": "",
    "step_value": 1,
    "editable": 0,
    "type": 135,
    "state": 1,
    "last_changed": 1663653735,
    "changed_by": 1,
    "changed_by_id": 0,
    "based_on": 4,
    "data": 2,
    "name": "Tor",
    "typeString": "UpDown",
    "cubeType": "Unknown",
    "note": "# Hörmann VersaMatic",
    "boolData": "True"
}

{
    "id": 24,
    "node_id": 2,
    "instance": 0,
    "minimum": 0,
    "maximum": 1,
    "current_value": 0,
    "target_value": 0,
    "last_value": 0,
    "unit": "",
    "step_value": 1,
    "editable": 0,
    "type": 70,
    "state": 1,
    "last_changed": 1663653735,
    "changed_by": 1,
    "changed_by_id": 0,
    "based_on": 4,
    "data": 0,
    "name": "Tor",
    "options": {
        "history": {
            "day": 182,
            "week": 26,
            "month": 6,
            "stepped": true
        }
    },
    "typeString": "MalfunctionAlarm",
    "cubeType": "Unknown",
    "note": "# Hörmann VersaMatic",
    "boolData": "False"
}

{
    "id": 29,
    "node_id": 2,
    "instance": 0,
    "minimum": 0,
    "maximum": 30,
    "current_value": 0,
    "target_value": 0,
    "last_value": 5,
    "unit": "min",
    "step_value": 1,
    "editable": 1,
    "type": 88,
    "state": 1,
    "last_changed": 1649197222,
    "changed_by": 1,
    "changed_by_id": 0,
    "based_on": 1,
    "data": 0,
    "name": "Tor",
    "typeString": "PollingInterval",
    "cubeType": "Unknown",
    "note": "# Hörmann VersaMatic",
    "boolData": "False"
}

{
    "id": 32,
    "node_id": 2,
    "instance": 0,
    "minimum": 0,
    "maximum": 1,
    "current_value": 0,
    "target_value": 0,
    "last_value": 0,
    "unit": "",
    "step_value": 1,
    "editable": 1,
    "type": 385,
    "state": 1,
    "last_changed": 0,
    "changed_by": 0,
    "changed_by_id": 0,
    "based_on": 0,
    "data": 0,
    "name": "Tor",
    "typeString": 385,
    "cubeType": "Unknown",
    "note": "# Hörmann VersaMatic",
    "boolData": "False"
}

Ich habe gerade eine neues Image mit dem Stand von heute hochgeladen.

Allerdings nutze ich homee nicht mehr, somit kann ich das Image nicht testen.

Feedback willkommen.

Guido

2 „Gefällt mir“

Danke an Gido und MehrCurry,

ich habe gerade den neuen Docker Container getestet und leider tut sich immer noch nichts.
Im MQTT Explorer habe ich für

Topic homee/devices/set/9/attributes/28 den Wert 1 als raw gepublished.
Topic homee/devices/set/5/attributes/25 den Wert 1 als raw gepublished.
Topic den Wert 1 als raw gepublished.

Leider bewegt sich hier nix. Eigentlich müssten die weiter oben zitierten Türen und Tore aufgehen.
Wenn ich den Status der jeweiligen Attribute anschaue, sehe ich, dass für 327 nun typeString:BrieflyOpenImpulse hinterlegt ist und für 135 typeString:UpDown.

Der Hörmann Cube hat übrigens die einzelnen Topics nicht unter devices, sondern dazwischen noch eine Ebene status und bool. Ich weiß nicht, ob das normal ist. Mein WifiRelais hat das nicht. Der komplette Pfad(?) im MQTT Explorer wäre also z.B. homee/devices/bool/9/attributes/28
Müsste sich dann der Aufruf ändern oder stimmt homee/devices/set/9/attributes/28 auf 1 hier?