Abfragen von Erfolg von Befehl

Begonnen von freehawk, 26 August 2025, 09:32:57

Vorheriges Thema - Nächstes Thema

freehawk

Hallo zusammen,

ich setzte über folgenden Befehl einen Ausgang:

set device on-for-timer 0.5

Bei dem Device handelt es sich um den Typ HM-LC-SW4-WM.

Nun kommt es immer wieder vor, dass der Befehl wohl nicht bei dem Device ankommt. Da hier entweder die Funkverbindung nicht stabil ist oder meine Zentrale über dem 1% Sendezeit in der Stunde liegt.

Gibt es eine Möglichkeit das Erfolgreiche Senden des Befehls abzufragen? Also Quasi ein Ackknowlage von dem HM-LC-SW4-WM zu bekommen?

Danke

Gruß
Markus

betateilchen

Ein Homematic Aktor antwortet doch nach dem Schalten ohnehin mit seinem neuen Zustand?
Das ist doch gerade der große Vorteil von Homematic, dass es bidirektional arbeitet.

Hier mal ein Auszug aus dem event-Monitor für das Schalten einer Lampe für 5 Sekunden:

2025-08-26 10:35:42 CUL_HM wz_Licht_Sessel set_on-for-timer 5
2025-08-26 10:35:42 CUL_HM wz_Licht_Sessel deviceMsg: on (to hmvccu)
2025-08-26 10:35:42 CUL_HM wz_Licht_Sessel level: 100
2025-08-26 10:35:42 CUL_HM wz_Licht_Sessel pct: 100
2025-08-26 10:35:42 CUL_HM wz_Licht_Sessel on
2025-08-26 10:35:42 CUL_HM wz_Licht_Sessel timedOn: running
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rabehd

#2
Bei mir ändert sich mit einem solchen Befehl das Internal STATE. Tut es das auch wenn der Befehl nicht ankommt?

Zitat von: freehawk am 26 August 2025, 09:32:57Nun kommt es immer wieder vor, dass der Befehl wohl nicht bei dem Device ankommt. Da hier entweder die Funkverbindung nicht stabil ist oder meine Zentrale über dem 1% Sendezeit in der Stunde liegt.
Das solltest Du eher lösen.
Auch funktionierende Lösungen kann man hinterfragen.

frank

Zitat von: freehawk am 26 August 2025, 09:32:57oder meine Zentrale über dem 1% Sendezeit in der Stunde liegt.
in diesem fall wäre es doch absurd zu testen, ob der befehl angekommen ist.

dein system ist scheinbar extrem schlecht konfiguriert/konzeptioniert.
zeig mal ein "get hminfo ptotoEvents all".
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

freehawk

Das mit dem Überschreiten des Sendelimits ist erstmal eine Vermutung und ich möchte mit diesem Thema annähern.

Da ich den Zustand, dass der Befehl nicht ankommt nicht provozieren kann will ich eben erstmal abtesten und Prüfen ob der Befehl erfolgreich gesendet wurde um in dem Fall dass das nicht geschieht einfach auch ein paar Daten aufzeichnen zu können wie z.B. RSSI oder die Sendelast auszulesen.

Dann werde ich mir mal Anschauen wie ich die Events auswerten kann oder ob ich auf das Reading State gehen kann.

Danke

RalfRog

#5
Der Weg den Frank da aufzeigt "get hminfo protoEvents all" ist bestimmt schon der richtige Weg für
Zitatmal Anschauen wie ich die Events auswerten kann

Nach Abschluss eines Kommandos steht in den Readings des Gerätes "state  CMDs_done" und ansonsten wenn das Kommando nicht ausgeführt wird sowas wie "Miss_Ack" (hab gerade keins für den genauen Text). Wie es mit der 1% Regel aussieht kann ich nicht sagen.
FHEM auf Proxmox VM Bookworm (Futro S740) - nanoCUL, HM-MOD-RPI-PCB und MAX!Cube über LAN
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder sowie Shelly 3EM, 1PM, PlugS und IT Schaltsteckdosen

Prof. Dr. Peter Henning

Zitat von: freehawk am 26 August 2025, 09:32:57meine Zentrale über dem 1% Sendezeit in der Stunde liegt.
Das halte ich für unwahrscheinlich, würde nämlich zu einer Meldung führen.

LG

pah