Homematic-Befehl wiederholen

Begonnen von fruemmel, 28 Dezember 2013, 21:02:21

Vorheriges Thema - Nächstes Thema

fruemmel

Hallo,

ich nutze FHEM u. a. zur Anwesenheitssimulation und steuere einige Lampen bei Abwesenheit. Nun ist es schon vorgekommen, dass
trotz der eingebauten Befehlswiederholung bei HM eine Lampe nicht geschaltet hat. Deshalb lasse ich über einen Timer alle 60 Sekunden
eine Perl-Funktion laufen, die prüft, ob ein HM-Gerät nicht den zuletzt gesendeten Zustand angenommen hat, und wiederhole dann den
letzten Schaltbefehl max. 2 Mal. Wenn es dann immernoch nicht klappt, gibt es mittels Prowl eine Nachricht aufs Smartphone.

Um das zu realisieren, merke ich mir durch eine kleine Anpassung in 10_CUL_HM bei jedem Schaltbefehl das Gerät, den Befehl und
den Zeitpunkt.

Geht das auch einfacher bzw. mit Bordmitteln von FHEM?

Gruß Wolfgang

Rohan

Hallo Wolfgang,

Zitat von: fruemmel am 28 Dezember 2013, 21:02:21
...
Um das zu realisieren, merke ich mir durch eine kleine Anpassung in 10_CUL_HM bei jedem Schaltbefehl das Gerät, den Befehl und
den Zeitpunkt.

Geht das auch einfacher bzw. mit Bordmitteln von FHEM?

Wäre für mich der falsche Ansatzpunkt. Was sagen denn die RSSI-Werte der betreffenden Geräte?

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

martinp876

Hallo Wolfgang,

kannst du erst einmal darlegen, ob FHEM einen Fehler signalisiert? Kommt ein ACK vom device oder nicht? Welches schaltkommando nutzt du? Nur 'on'/'off' oder etwas mit timer?
Schicke erst einmal mehr Details zum Fehlern.
Wie Thomas schon andeuted - FHEM ziel ist, dass automatisch alles versucht wird - also sollte erst einmal der Grund gefunden werden

das Attribut msgRepeat kann bei fehlenden Acks genutzt werden.
mit statusRequest kannst du sofort nachfragen, wie der Stand ist - musst nicht 60 sec warten

Gruss Martin


fruemmel

Hallo,
erstmal vielen Dank für Eure spontane Unterstüztung.

Leider ist der letzte Fall schon ein paar Tage her, deswegen muss ich Details beim nächsten Auftreten nachliefern.

Das Gerät, bei dem es am häufigsten vorkommt, hat derzeit ein RSSI von -84. Die beschriebenen Fälle sind immer
ein reines on oder off. Timer sind nicht im Spiel. Es kam kein Ack, sondern der Status stand auf MISSING_ACK
(diesen Status scheint es ja in den aktuellen Versionen so nicht mehr zu geben). Ein Fehler (im Log) ist
nicht protokolliert worden.

Die Wartezeit mit ca. 60 Sekunden habe ich extra "großzügig" gewählt, da es bei der Anwesenheitsimulation nicht
auf die Sekunde ankommt, und ich nicht noch mehr HM-Funk durch ein StatusRequest auslösen wollte.

Gruß Wolfgang

Rohan

Hallo Wolfgang,

Zitat von: fruemmel am 29 Dezember 2013, 21:16:21... Das Gerät, bei dem es am häufigsten vorkommt, hat derzeit ein RSSI von -84. ...

Das (-84) ist schon mal .... zumindest suboptimal ;)

Falls du HMinfo installiert haben solltest (falls nicht, bitte nachholen), da gibt es einen Link zu "rssi"-Werten aller deiner HM-Devices. Diese Ausgabe wäre interessant.Der Momentanwert sagt nämlich nicht besonders viel aus... kann ein Best-/Mittel-/Schlecht-Wert sein.

Einige Infos zu deiner sonstigen Ausstattung wären hier angebracht: CUL/HM-LAN/HM-USB, bauliche Voraussetzungen ....

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor