Hallo zusammen,
vorab sollte ich sagen, dass ich absoluter FHEM Neuling bin. Hoffe aber, dass ich das mit Eurer Hilfe ändern kann ;-)
Ich versuche einen 2 Kanäle eines 4fach Hutschienen Schaltaktors (HM-LC-SW4-DR) per CUL zu schalten (on-for-timer 0.3). Grundsätzlich funktioniert das auch, wenn ich die Befehle einzeln sende (z.B. per Befehlszeile).
Werden beide Befehle direkt nacheinander durch ein notify gesendet, kommt der zweite scheinbar nicht mehr an, ein resend scheitert ebenfalls. Auch ein "sleep 5" (!) zwischen den Befehlen hat nichts gebracht (siehe Log-Auszug unten).
Was mache ich falsch? :-\
{fhem("set Schalter_Dachrollos_West_ab on-for-timer 0.3; sleep 5;");;
fhem("set Schalter_Dachrollos_Ost_ab on-for-timer 0.3");}
2016.08.30 20:45:39 5: CUL_HM Schalter_Dachrollos protEvent:CMDs_pending pending:1
2016.08.30 20:45:39 3: CUL_HM set Schalter_Dachrollos_West_ab on-for-timer 0.3
2016.08.30 20:45:39 5: CUL_HM Schalter_Dachrollos protEvent:CMDs_processing... pending:0
2016.08.30 20:45:39 1: WARNING: sleep without additional commands is deprecated and blocks FHEM
2016.08.30 20:45:44 3: CUL_HM set Schalter_Dachrollos_Ost_ab on-for-timer 0.3
2016.08.30 20:45:44 4: CUL_HM_Resend: Schalter_Dachrollos nr 2
2016.08.30 20:45:44 5: CUL_HM Schalter_Dachrollos protEvent:CMDs_processing... pending:0
2016.08.30 20:45:44 5: CUL_HM Schalter_Dachrollos protEvent:CMDs_done
Sleep in den notifies traue ich nicht. Nach meiner Erfahrung wird alles auf einmal mal bearbeitet.
Du kannst einmal die messages sniffen - siehe Wiki.
Die cul sollte auf die Antwort des ersten warten und dann erst den 2. Schicken. Allerdings macht die default cul ein unzuverlässige timing. Koennte auch ein Problem sein.
Alternative cul ist meine Empfehlung. Das Problem ist separat zu betrachten.
nach dem sleep muss ein weiterer befehl kommen (im selben fhem("...")), sonst blockiert fhem, siehe dein log.
{fhem("set Schalter_Dachrollos_West_ab on-for-timer 0.3; sleep 5; set Schalter_Dachrollos_Ost_ab on-for-timer 0.3")}
Hey, danke für die schnelle Antworten!
@frank: Danke für die Info. War auch eher ein Versuch (nicht die favorisierte Lösung).
@martin: Werde ich gerne mal versuchen. Ich habe einen CULv3, welches hex-File der aculfw sollte ich denn dann flashen? Eine CUL_V3_HM_868MHZ.hex gibt es leider nicht :-\
edit: habe grade gelesen, dass der Björn garnichts am HM Code geändert hat bei seiner a-culfw? Man könne auch die Original culfw verwenden: https://213.252.140.23/index.php/topic,35064.msg451874.html#msg451874 (https://213.252.140.23/index.php/topic,35064.msg451874.html#msg451874)
Wäre ein HMLAN Adapter für Homematic besser gewesen als ein CUL?
Vom Protokol ist ein hm-io die bessere Wahl. Es erledigt einige Dinge direkt und damit zeitlich deutlich präziser als eine CUL. Auch der processing Aufwand ist geringer.
Dagegen unterstützen alle CUL einen fwupdate der hm devices, ein hmlan hingegen nicht.
Weitere Unterschiede sind m.e. gering. Ok, eine normale cul geht ( rechtlich verbotener weise) nie in overload.