EnOcean Bestätigungstelegramm/Status anfordern

Begonnen von jensb, 23 Dezember 2018, 12:51:23

Vorheriges Thema - Nächstes Thema

jensb

EnOcean ist eine Funk-Infrastruktur. In der Praxis ist es daher unvermeidbar, dass mal ein Telegramm nicht ankommt, selbst wenn man im Normalfall durch Anordnung der Devices und Konfiguration von Repeatern eine gute Verbindung hat. Wenn man gezielt steuern will, benötigt man aber den aktuellen Zustand des Aktors. Wurde z.B. ein Rollo mit lokalem Taster gesteuert und das Bestätigungstelegramm ist unter die Räder gekommen, dann macht die Rollladensteuerung die nächste Entscheidung auf Basis einer falschen Annahme. Das Rollo bleibt dann je nach Situation z.B. nachts oben.

Lösungen gibt es wahrscheinlich schon, aber ich habe mit der Suche nichts passendes gefunden. Vorstellen könnte ich mir

  • FHEM wiederholt ein Steuerkommando optional solange (periodisch, mit Timeout und Fehlerstatus), bis ein Bestätigungstelegramm eintrifft
  • man fragt bei Bedarf den Status beim Aktor mit get an. Das setzt natürlich voraus, dass dies im EnOcean Protokoll prinzipiell vorgesehen und von den Herstellern umgesetzt wurde (bei mir Eltako Serie 61)

Nicht geeignet halte ich den Ansatz, der z.B. bei FS20 gern verwendet wird, mit DOIF und repeatcmd einen Befehl immer wieder abzusetzen. Damit wäre es nicht mehr möglich, einen lokalen Taster zu verwenden.

Bitte Info, wenn jemand hierzu eine Idee hat. Wenn Programmierung erforderlich ist, bin ich gern dabei.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

krikan

Schau dir mal in https://fhem.de/commandref.html#EnOcean den Abschnitt "Observing Functions" an.

Gruß, Christian

jensb

Hallo Christian,

danke für den Hinweis, nach "observe" hatte ich noch nicht gesucht. Die Funktion hilft das Senden von Kommandos über den Gateway abzusichern. Ich stecke noch nicht tief genug im EnOcean Protokoll: Ist ein Kommando-Acknowlege und ein "Bestätigungstelegramm" das Gleiche?

Observe hilft meiner Ansicht nach in dem von mir geschilderten Fall mit dem lokalen Taster nicht, da ja kein Kommando über das Gateway abgesetzt wird, das man überwachen könnte. Bleibt also die Frage, wie man einen Aktor dazu bringen kann seinen Status zu melden, ohne ihm ein Kommando zu schicken, das den Zustand des Aktors ändert.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb