Automatisierung von Readings

Begonnen von desasterguy, 22 Februar 2017, 22:50:00

Vorheriges Thema - Nächstes Thema

desasterguy

Ein Hallo aus der Pfalz!

Nachdem ich Somfy Tahoma den Rücken gekehrt habe, habe ich FHEM für mich entdeckt.
Ich bin fasziniert von den Möglichkeiten die ich dadurch habe.

Von einer schönen Oberfläche bin ich noch sehr weit entfernt. Derzeit versuche ich erst einmal alle Funktionen zu implementieren.

Das hat auch soweit gut funktioniert. In meinem Fall ist das
- tahoma (Rollläden 95% io rest RTS, Velux Dachfenster, GU-Türsensor)
- Phillips HUE
- Buderus KM100

Jetzt habe ich das Problem, dass ich trotz sehr vieler Versuche (longpoll, at, ....) es nicht hinbekomme, dass alle 60 sek. die Readings des Device aktualisiert werden.

Ich bin echt ratlos und hoffe auf euere Hilfe.

Viele Grüße
Tim


2 x respbarry pi4, Somfy Tahoma, Philips HUE, Amazon Alexa, Homematic, elektr. Velux Fenster, Honeywell EvoHome Heizungssteuerung + Buderus Öl&Solaranlage mit KM100.

Fhem ist die Zentrale Steuereinheit auf 2 wandmontierten Touchpads.

igami

Zitat von: desasterguy am 22 Februar 2017, 22:50:00
Jetzt habe ich das Problem, dass ich trotz sehr vieler Versuche (longpoll, at, ....) es nicht hinbekomme, dass alle 60 sek. die Readings des Device aktualisiert werden.
Ich kenne das Tahoma Modul nicht, aber bei anderen Modulen werden die ja von "außen" aktualisiert, z.B. ein Temperatursender sendet alle 3 Minuten, dazuwischen passiert nichts mit den Readings.

Es gibt im Wiki einen Beitrag indem eine Funktion namens addlog beschrieben wird.
Vielleicht kannst du ja noch kurz beschreiben wofür du alle 60 Sekunden einen neuen Wert brauchst.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

desasterguy

Das Modul überwacht den Zustand der Haustür (offen/geschlossen & locked/unlocked)
Deswegen sollen sich die Readings alle 60 sek. aktualisieren

Zusätzlich kann das Modul auch den Summer betätigen und wenn ein motorisiertes Schloss vorhanden ist auch dies steuern.

Viele Grüße
Tim
2 x respbarry pi4, Somfy Tahoma, Philips HUE, Amazon Alexa, Homematic, elektr. Velux Fenster, Honeywell EvoHome Heizungssteuerung + Buderus Öl&Solaranlage mit KM100.

Fhem ist die Zentrale Steuereinheit auf 2 wandmontierten Touchpads.

bugster_de

Hi,

ich kenne das Tahoma Modul jetzt auch nicht im Detail, aber wichtig ist m.E. das Grund-Verstädniss, wie Readings in FHEM aktualisiert werden. Es gibt da zwei verschiedene Mechnismen, die schlicht und ergreifend von der Hardware (sprich dem Snesor/Aktor) abhängen. Ich nenne die beiden Mechanismen jetzt mal Push und Pull

Beim Push sendet das Gerät selbstständig neue Werte. Damit hat FHEM keinen Einfluß darauf, wann neue Werte (readings) kommen. Dies kann zyklisch sein (z.B. bei Temperatur Sensoren) oder nur, wenn es wirklich etwas neues zu "berichten" gibt (Bsp. Homematic Türkontaktsensoren). Im zweiten Fall senden die Sensoren gar nichts sondern wirklich nur, wenn z.B. die Türe geöffnet wurde und sich damit der Zustand verändert hat.
Wenn man nun in FHEM bei Änderung eines Wertes reagieren will, dann setzt man sich ein notify auf diesen Wert und arbeitet seine entsprechende Funktion ab.

Beim Pull sendet das Gerät nicht selbstständig sondern möchte von FHEM gefragt werden. Sprich FHEM muß immer, wenn es neue Werte benötigt, beim Gerät anfragen; dies ist z.B. bei den Wetter-Modulen der Fall. Dabei gibt es zwei Unterspielarten: entweder das Modul macht das in sich selbst, in dem es z.B. von sich aus in zyklischen Abständen einen neuen Wert abfragt oder du kannst das von "außen" durch den Aufruf z.B. einer Set Funktion wie "StatusRequest" machen ("set mytahoma statusrequest"). Im ersten Fall gibt es dann hoffentlich am Modul ein Attribut, welches die Zykluszeit bestimmt, die du dann auf 560 Sekunden setzen mußt, im zweiten Fall mußt du dir ein at als Timer aufsetzen (define mytimer +*00:01:00 set mytahoma statusrequest)
Bedenke aber bei Batteriebetriebenen Geräten, dass das Senden Strom kostet und dann Ruck Zuck die Batterie leer sein kann.

Thorsten Pferdekaemper

Hi,
was macht den das Attribut "interval", das auf dem Screenshot zu sehen ist?
Btw.: Die meisten Leute hier schauen sich keine Screenshots an. Mach das nächste mal lieber ein "list".
Gruß,
  Thorsten
FUIP

desasterguy

#5
Vielen Dank für die Antworten als auch Erklärungen!

@Thorsten
das Attribut "interval" lässt auf die gewünschte Funktion schießen... aber dem ist leider nicht so. Ich denke dass dieses Interval das auch nicht von den 300 auf einen kleineren oder größeren Wert abzuändern geht nur Richtung Tahoma Box aktualisiert. Aber nicht zu Fhem.

Also dafür müsste dann Fhem alle 300 Sekunden die Tahoma Box erneut abfragen. Davon abgesehen, dass es nicht geht finde ich für eine Türüberwachung auch 5 min zu lange.

@bugster
Ich war schon so weit, dass wenn ich im Device den Set Befehl zum Status lock/unlock abgefragt habe wurde dieser Reading auch direkt aktualisiert. Deswegen habe ich die Hoffnung, dass dein Beispiel

define mytimer +*00:01:00 set <device> <request>

hoffentlich den gewünschten Effekt erzielt.

Ich werde es gleich testen.

Gestestet:

Es wäre auch zu schön gewesen wenn es mal ohne Probleme funktioniert.

Hier die Meldung nach speichern der fhem.cfg
ERROR:
Unknown module +*00:01:00

:) Ich habe den Fehler selbst gefunden. Das at hat gefehlt.

define mytimer at +*00:01:00 set <device> <request>

Es funktioniert. Top DANKE!
2 x respbarry pi4, Somfy Tahoma, Philips HUE, Amazon Alexa, Homematic, elektr. Velux Fenster, Honeywell EvoHome Heizungssteuerung + Buderus Öl&Solaranlage mit KM100.

Fhem ist die Zentrale Steuereinheit auf 2 wandmontierten Touchpads.