homee in Verbindung mit MQTT: homeeToMqtt

In meinem Homee sind mehrere Hörmann Geräte definiert.
Diese wurden im Cube angelernt, damit der Cube die entsprechenden Funksignale an Stelle der Fernbedienung senden kann.
Ich kann alle Geräte daher vom Cube aus steuern. Genau dies soll jetzt per MQTT erfolgen.
Während ich die Stati aller Geräte einsehen kann und auch sehe, wenn über den Homee oder eine Fernbedienung ein Geräte angesteuert wird, kann ich nichts schalten.
Was ich erkennen kann, hatte ich oben geschrieben. Was ich nicht weiß, ist natürlich, welche Attribute beschreibbar sind und welche nur lesbar wären.

Würde der Homee ab Werk MQTT unterstützen, könnte ich Hörmann fragen. So werden die damit vermutlich wenig anfangen können. Kann ich aber trotzdem mal probieren.

Hast Du ein Beispiel, wie Du konkret etwas im Homee per MQTT schaltest?
Ich arbeite mit dem MQTT Explorer, aber in anderen Tools gibt man ja das Topic an und den Inhalt, den man schreiben möchte.

Du sagst du hast in der App einen Button zum öffnen des Tores.
Ist dieser Button im Gerätprofil der FB oder wo versteckt sich dieser ?

Wenn ich irgendein Gerät mit dem Homee schalten will, ist dieses in der App oder unter my.hom.ee zu sehen. Dabei ist es doch völlig egal, wie das Gerät da reingekommen ist. Der Button zum Öffnen ist unter Geräte beim Gerät „Haustür“. Wenn ich da raufklicke, öffnet sie sich. Ich weiß nur nicht, wie ich das per MQTT auslöse.

Ich sende den Wert auf den human

Hier einfach 1 für an und 0 für aus.

1 „Gefällt mir“

Danke für Deine Geduld. Ich habe es probiert und bei mir funktioniert es nicht.
Vielleicht hat der Hörmann Cube irgendeine Besonderheit. Jedenfalls kann ich offensichtlich nichts schreiben. Werde mal bei Hörmann anfragen, aber ob man sich dort mit sowas Exotischem beschäftigen will, weiß ich nicht.

Hast du mal probiert das Attribut über das Terminal anzusteuern ?
Put:nodes/000/attributes/000?target_value=1

2 „Gefällt mir“

Wo mache ich das? Nutze die Hörmann Homee WebApp im Desktop-Browser und die App auf dem iPhone. Im Mac Terminal kann ich ja nicht einfach den obigen Befehlt eingeben.

Damit kannst du es mal testen.

Danke! Mit dem Terminal und Put:nodes/9/attributes/28?target_value=1 ging die Tür auf :smiley:

Das ist dann aber eine Verbindung über Websocket und nicht über MQTT.
Jetzt ist die Frage, warum es (bei mir) nicht per MQTT geht.
Das könnte wohl nur @gido beantworten.

Ausgabe im homee-terminal von Pascal Mattes ist:


Object
 attribute:Object
  id:28
  node_id:9
  instance:0
  minimum:0
  maximum:1
  current_value:1
  target_value:1
  last_value:0
  unit:"n%2Fa"
  step_value:1
  editable:1
  type:327
  state:1
  last_changed:1647293840
  changed_by:1
  changed_by_id:0
  based_on:8
  data:""
  name:""
  options:Object
   history:Object
    day:1
    week:26
    month:6

Hallo zusammen,

ich habe das gleiche Problem mit meinem Hörmann Garagentor, welches ich über MQTT in OpenHAB als Gerät abbilden wollte - um es von dort idealerweise nach HomeKit zu schleusen. Leider lösen meine MQTT Put-Befehle auch keinerlei Torbewegung aus… Mit Lichtschaltern funktioniert es hingehen problemlos.
Momentan bekomme ich das Tor zwar über das HTTP Binding mit den Webhooks gesteuert, aber generell wäre MQTT besser, auch um den Status (geöffnet/geschlossen/Position) abzugreifen.

Danke und Gruß
Markus

Funktioniert denn die homee → HomeKit Anbindung nicht ?

Doch klar, aber Hörmann Geräte kann nicht für die HomeKit Synchronisation auswählen. Ich schätze das ist von Hörmann nicht gewollt und daher von Homee nicht umgesetzt.

Das ist von Apple untersagt worden, da Hörmann eine direkte Schnittstelle zu Homekit in einer älteren Software hat. Apple hatte gedroht, dass homee sonst seine Homekit Zulassung komplett verliert.

1 „Gefällt mir“

ah okay das ist mir wohl entgangen.

Ich hab es jetzt so umgesetzt, dass der Öffnen und Schließen-Befehl vom „Garagentor“ Rollershutter-Item in OpenHAB über ein HTTP-Thing per HTTP GET als Webhook in Homee auslöst.
Den Status (0-100 %) nehme ich aus dem MQTT Topic homee/human/Garagentor(nn)/CurrentPosition(nnn) als Position des Items „Garagentor“ (Typ „Rollershutter“).
In OpenHAB wird auch alles bestens angezeigt (Position) und öffnen wie schließen geht auch.

Wenn ich das Item (Typ Rollershutter) via OpenHAB allerdings als GarageDoorOpener an HomeKit sende, passiert beim öffnen und schließen gar nichts und der Zustand wird immer als geschlossen (auch wenn es offen ist). Sende ich es als Door, Window oder WindowCovering passiert etwas, aber ich sehe im Homee-Logbuch dass er gleich alle Befehle (öffnen+schließen+stop) an Homee via WebHook absetzt.

Aber gut, gehört hier nicht hin. Muss ich mal im OpenHAB Forum weiter forschen.
Wäre aber natürlich schön, wenn man öffnen und schließen auch via MQTT machen könnte (um wieder zurück zum Thema zu kommen).

Leider kann auch ich immer noch kein Hörmann Gerät bei mir über MQTT schalten. HomeKit nutze ich nicht. Es geht rein über die MQTT Anbindung. Wenn hierzu noch jemand eine Idee hat, gerne.
Vielleicht hat hierzu ja auch @Hoermann_KG_AST eine Idee. Danke.

Ich habe mich heute ausführlicher damit beschäftigt, es klappt leider nicht… über die homee API passiert nichts, wenn auf dem Garagentor für das Attribut UpDown ein target_value von 2 (Lüften), 3 (Öffnen) oder 4 (Schließen) setze. Im Frontend steht dann zwar z.B. „Öffnen…“ aber es bewegt sich nichts. Keine Ahnung wie die das gemacht haben, aber offensichtlich lassen sich die Hörmann-Geräte nicht mit Put bewegen. Bei mir klappt es auch nicht mit dem homee-terminal.

Für meine Anforderung „Garagentor in HomeKit“ nutze ich nun OpenHAB in Kombination mit Node-RED.

Hierzu in OpenHAB einen Rollershutter anlegen, diesen z.B. als „Window“, „WindowCovering“ oder „Door“ für HomeKit bereitstellen.
Eine Bereitstellung als „GarageDoorOpener“ geht übrigens nicht, HAB erwartet dann einen Switch-Button und keinen Rollershutter, aber nur der Rollershutter hat UP/DOWN/STOP-Befehle). Es kommt dann sowas im Log (keine Ahnung ob man das irgendwie „beheben“ kann, bin noch kein OpenHAB Profi):

2022-06-03 19:44:36.770 [WARN ] [essories.HomekitGarageDoorOpenerImpl] - Unsupported item type Rollershutter for garagedoor. Only Switch and String are supported
2022-06-03 19:44:36.771 [WARN ] [essories.HomekitGarageDoorOpenerImpl] - Unrecognized current door state: 100. Expected CLOSED, CLOSING, OPEN, OPENING or STOPPED strings in value.

Mit diesen Fehlern kommt jedenfalls nichts von HomeKit in Node-RED an.

Über Node-RED kommen die Updates vom Tor (Zustand, Position) bei OpenHAB an, dies passiert über MQTT, da ich mit dem node-red-contrib-homee/homeeApi leider absolut gar keine sinnvollen Updates reinbekomme (ansonsten würde es natürlich auch damit gehen).
Ebenso in Node-RED fange ich den Steuerbefehl von HomeKit kommend ab (immer ein Wert zwischen 0 und 100) und bastle diesen soweit um, dass ich über WebHooks in Homee ein Homegramm starte, welches das Tor öffnet (=0), schließt (=100) oder lüftet (=1-99).

Funktioniert für mich nun soweit, mal sehen ob es robust genug ist. Ich denke das würde so analog auch für Türen oder ähnliches von Hörmann funktionieren.

Hier der gesamte Flow:

Das es über die API nicht gehen soll möchte ich nicht glauben.
Die Webapp nutzt ja die gleiche Schnittstelle und dort geht es ja auch.
Evt. nen Fehler bei der Eingabe gemacht ?
Wenn du die Webapp startest und dann die DEV Einstellungen öffnest siehst du den Befehl der von der Webapp gesendet wird.
Einfach mal schauen was da passiert wenn du den öffnen Button drückst.
Was mich wundert ist aber das du sagst das es richtig angezeigt wird.
Könnte natürlich wirklich gesperrt sein vom Core.
Die Apps haben ja ihre eigene Kennung und das könnte dort gefiltert sein.
Das würde auch erklären warum es nicht im HomeKit enthalten ist.

Hast recht, geht nun im Flow über homeeApi. Ich kann allerdings nicht mehr nachvollziehen was falsch gewesen sein sollte.
Allerdings geht homeeApi in Node-RED nur ausgehend und nicht eingehend. Da kommen zwar unzählige Messages rein, aber ohne Payload, egal ob Hörmann, Z-Wave o.ä. Das mache ich also momentan über MQTT im Flow.
Aber das ist ja ein Problem von und mit dem homee Plugin für Node RED und hat nicht hiermit zu tun.

Das homeeapi Node funktioniert ohne Probleme. Wenn du nichts konfigurierst dann kommen alle Nachrichten dort an.
Du musst dann am Ausgang auf die nodeid oder AttributID filtern.

VG

1 „Gefällt mir“