Hallo zusammen,
ich habe ein Problem mit einem neuen Funk MP3-Gong von Homematic.
Diesen habe ich an mein HMLAN2 gepaired. Es lässt sich auch soweit ansprechen.
Drücke ich im WebIF bei "Gong3_Led" oder "Gong3_Mp3" auf "press short", so blinkt die LED oder der Gong klingelt mit dem Standard-Ton.
Es erscheint kein Fehler im Log.
Sobald ich den Gong aber über eine Funktion wie folgt anspreche, erhalte ich im LOG immer zeitgleich mit dem Aufruf der Funktion:
2014.09.30 18:56:35 2: CUL_HM Gong3 attack:11200DB828E06B80020101C8:11200DB828E06B8001010132010000000000000000.
2014.09.30 18:57:14 3: CUL_HM set Gong3_Led led orangeL
2014.09.30 18:57:14 3: CUL_HM set Gong3_Mp3 playTone 200
Da es immer zeitgleich mit meinem Auslösen auftritt, kann man denke ich ausschließen, dass hier ein echter "Angriff" stattfindet oder es sich um das HM-Device eines Nachbarn handelt.
Der Log-Eintrag fällt immer mit dem von mir ausgelösten Ereignis auf.
Neu gepaired habe ich zwischenzeitlich auch schon (den Gong habe ich allerdings nicht auf Werkseinstellungen zurückgesetzt.
Die entscheidende Zeile aus der Funktion, die den Gong ansteuert:
fhem("set ".$FunkgongName.".Led led orangeL; set ".$FunkgongName.".Mp3 playTone ".$NummerMp3);
Meine komplette Funktion lautet:
#Routine für mehrfache, zeitverzögerte Auslösung des Funk-Gongs
#Heiko, 04.08.2014 / 29.09.2014
#Parameter-Reihenfolge
# 1) Name des Funkgongs, z.B. "Gong1" (mit Anführungsstrichen)
# 2) Anzahl der Wiederholungen
# 3) Name des Bewegungsmelders
# 4) Name des ausloesenden FernAlarmDummies
# 5) Nummer der Mp3-Datei, die wiedergegeben werden soll
sub Mp3GongAusloesen($$$$$) {
my ($FunkgongName, $AnzahlWiederholungen, $NameBewegungsmelder, $NameAlarmDummy, $NummerMp3) = @_;
if ( Value($NameAlarmDummy) eq "on" ) {
# Log 3, "Dummy ".$NameAlarmDummy." wurde auf on geschaltet, somit Funkgong auslösen.";
fhem("set ".$FunkgongName.".Led led orangeL; set ".$FunkgongName.".Mp3 playTone ".$NummerMp3);
Log 3, "1 . Signal für ".$FunkgongName." wurde gesendet, insgesamt: ".$AnzahlWiederholungen.", ausgelöst durch Bewegungsmelder: ".$NameBewegungsmelder." (Funktion Mp3GongAusloesen)";
if ( $AnzahlWiederholungen > 1 ) {
fhem("define ".$FunkgongName.$NameBewegungsmelder."Temp at +*{".($AnzahlWiederholungen-1)."}00:00:40 set ".$FunkgongName.".Led led orangeL;; set ".$FunkgongName.".Mp3 playTone ".$NummerMp3);
fhem("attr ".$FunkgongName.$NameBewegungsmelder."Temp room Klingel");
Log 3, "Wiederholungstimer für ".$FunkgongName." wurde eingerichtet mit insgesamt: ".$AnzahlWiederholungen." (Funktion Mp3GongAusloesen)";
}
}
else {
# Log 3, "Dummy ".$NameAlarmDummy." wurde auf off geschaltet, somit keine Aktion.";
}
}
Vielen Dank für eure Antworten,
viele Grüße,
Heiko
Da sind zu viele nullen dran....
Zeichne einmal die rohmessages auf
Also mit
######ROHMESSAGES AUFZEICHNEN#####
attr global verbose 1
attr global mseclog 1
attr HMLAN1 logIDs all,sys
erscheint leider gar nichts mehr im LogFile...
Was ist an meinem Code falsch?
wenn keiner funkt, gibt es auch nicht mehr viel zu sehen. das ist ja der sinn der sache. ;)
Ich soll doch aber die Rohmessages aufzeichnen für martin!
Und dass gefunkt wird, stelle ich dadurch sicher, dass ich selbst den Gong auslöse.
Damit der gongt, muss gefunkt werden :o
Vielleicht kann mir jemand die benötigten ATTR nennen, mit denen ich die benötigten Rohmessages posten kann.
Hallo,
heisst dein HM-LAN1 auch HM-LAN1?
Aber vermutlich schon und ich hab wieder was übersehen den eine Fehlermeldung wäre dir sicher aufgefallen.
Grüße
dein HMLAN heisst HMLAN1?
oder hast du eine CUL?
siehe
http://www.fhemwiki.de/wiki/Homematic_Nachrichten_sniffen
@martin:
Ich habe 1x HMLAN1 sowie 1x HMLAN2 mit derselben HMId.
Problem: Wenn ich die ATTR genau wie in der Wiki beschrieben setze, erscheint einfach gar nichts mehr im Log.
@Puschel:
Mein IODevice heisst HMLAN1.
Wie kommst du auf HM-LAN1 (mit Bindestrich).
Ich habe jetzt die gesamte fhem.cfg mittels suche nach "HM-LAN1" durchsucht, das kommt nicht vor!
Viele Grüße,
Heiko
Fehler von mir.
HMLAN1 ist natürlich richtig.
Ich wäre ja schon froh gewesen, wenn sich der Fehler durch die Beseitigung eines kleinen Tippfehlers hätte beseitigen lassen...
Du musst das attribut im aktiven hmlan setzen. An besten in beiden, dann ist der korrekte dabei. E,pfaengt dein hmlan1 gerade nichts ?
Grossschreibung beachten
Du musst das attribut im aktiven hmlan setzen. An besten in beiden, dann ist der korrekte dabei. E,pfaengt dein hmlan1 gerade nichts ?
Grossschreibung beachten
Ok, ich habe nun für HMLAN1 übers WebIF die ATTR verbose & logIDs gesetzt.
mseclog kann ich dort nicht als ATTR setzen
Nach Auslösen des Gongs erhalte ich:
Reicht der nachfolgende Log?
2014.10.01 20:46:43 3: CUL_HM set Gong3_Led led orangeL
2014.10.01 20:46:43 3: CUL_HM set Gong3_Mp3 playTone 202
2014.10.01 20:46:43 3: 1 . Signal für Gong3 wurde gesendet, insgesamt: 1, ausgelöst durch Bewegungsmelder: Tuertaster (Funktion Mp3GongAusloesen)
2014.10.01 20:46:43 3: Fernbedienung Scharfstell-Taste gedrueckt!
2014.10.01 20:46:44 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:06A9EFA1 d:FF r:FFB7 m:64 A011 200DB8 28E06B 8001010132010000000000000000
2014.10.01 20:46:44 2: CUL_HM Gong3 attack:11200DB828E06B80020101CA:11200DB828E06B8001010132010000000000000000.
2014.10.01 20:46:44 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:06A9F020 d:FF r:FFBB m:64 8002 28E06B 200DB8 0101C80046
2014.10.01 20:46:44 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:06A9F134 d:FF r:FFB7 m:65 A011 200DB8 28E06B 80020101CA
2014.10.01 20:46:44 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:06A9F1B8 d:FF r:FFBA m:65 8002 28E06B 200DB8 0102C80046
Und wenn ich die ATTR auch noch zu HMLAN2 hinzufüge:
2014.10.01 20:50:24 0: HMLAN_Send: HMLAN1 I:K
2014.10.01 20:50:24 0: HMLAN_Send: HMLAN2 I:K
2014.10.01 20:50:24 0: HMLAN_Parse: HMLAN2 V:03C4 sNo:LEQ0049873 d:272F60 O:200DB8 t:069B8082 IDcnt:000C
2014.10.01 20:50:24 0: HMLAN_Parse: HMLAN1 V:03C4 sNo:LEQ0102417 d:26E9C8 O:200DB8 t:06AD4C76 IDcnt:0020
2014.10.01 20:50:36 0: HMLAN_Parse: HMLAN1 R:E2682D7 stat:0000 t:06AD7AFE d:FF r:FFB1 m:4C A240 2682D7 200DB8 020F
2014.10.01 20:50:36 3: CUL_HM set Gong3_Led led orangeL
2014.10.01 20:50:36 0: HMLAN_Send: HMLAN2 S:SCD0CBC78 stat: 00 t:00000000 d:01 r:CD0CBC78 m:66 A011 200DB8 28E06B 8001010132010000000000000000
2014.10.01 20:50:36 3: CUL_HM set Gong3_Mp3 playTone 202
2014.10.01 20:50:36 3: 1 . Signal für Gong3 wurde gesendet, insgesamt: 1, ausgelöst durch Bewegungsmelder: Tuertaster (Funktion Mp3GongAusloesen)
2014.10.01 20:50:36 3: Fernbedienung Scharfstell-Taste gedrueckt!
2014.10.01 20:50:36 0: HMLAN_Parse: HMLAN2 R:E2682D7 stat:0000 t:069BAF05 d:FF r:FFC1 m:4C A240 2682D7 200DB8 020F
2014.10.01 20:50:36 0: HMLAN_Parse: HMLAN2 R:E200DB8 stat:0000 t:069BAF80 d:FF r:FFBA m:4C 8002 200DB8 2682D7 00
2014.10.01 20:50:36 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:06AD7D70 d:FF r:FFB8 m:66 A011 200DB8 28E06B 8001010132010000000000000000
2014.10.01 20:50:36 0: HMLAN_Parse: HMLAN2 R:RCD0CBC78 stat:0001 t:069BB1F9 d:FF r:FFB9 m:66 8002 28E06B 200DB8 0101C80047
2014.10.01 20:50:36 0: HMLAN_Send: HMLAN2 S:SCD0CBD36 stat: 00 t:00000000 d:01 r:CD0CBD36 m:67 A011 200DB8 28E06B 80020101CA
2014.10.01 20:50:37 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:06AD7DED d:FF r:FFBA m:66 8002 28E06B 200DB8 0101C80047
2014.10.01 20:50:37 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:06AD7F02 d:FF r:FFB9 m:67 A011 200DB8 28E06B 80020101CA
2014.10.01 20:50:37 0: HMLAN_Parse: HMLAN2 R:RCD0CBD36 stat:0001 t:069BB392 d:FF r:FFB8 m:67 8002 28E06B 200DB8 0102C80046
2014.10.01 20:50:37 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:06AD7F86 d:FF r:FFBB m:67 8002 28E06B 200DB8 0102C80046
2014.10.01 20:50:40 0: HMLAN_Parse: HMLAN2 R:E28E06B stat:0000 t:069BC18B d:FF r:FFBA m:69 A410 28E06B 200DB8 06010000
2014.10.01 20:50:40 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:06AD8D84 d:FF r:FFBA m:69 A410 28E06B 200DB8 06010000
2014.10.01 20:50:41 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:06AD8DFD d:FF r:FFB8 m:69 8002 200DB8 28E06B 00
Im 2. Fall wurde kein attack event gemeldet?
Könnte mit einem delay durch den log zusammenhängen. Hast du einen fall mit beiden logs und attack?
habe es einmal durchgesehen - ist wohl dich ein Timingproblem. Kannst du einen entsprechenden Log machen?
Also hier habe ich 2 Log-Beispiele, bei dem das Gong3-Attack auftrat, wobei beide HMLANs
verbose = 1
logIds = sys,all
gesetzt hatten.
2014.10.05 14:33:25 3: CUL_HM set Gong3_Led led orangeL
2014.10.05 14:33:25 0: HMLAN_Send: HMLAN2 S:SE04CDA3E stat: 00 t:00000000 d:01 r:E04CDA3E m:26 A011 200DB8 28E06B 8001010132010000000000000000
2014.10.05 14:33:25 3: CUL_HM set Gong3_Mp3 playTone 210
2014.10.05 14:33:25 3: 1 . Signal für Gong3 wurde gesendet, insgesamt: 1, ausgelöst durch Bewegungsmelder: Fernbedienung01 (Funktion Mp3GongAusloesen)
2014.10.05 14:33:25 3: Fernbedienung Scharfstell-Taste gedrueckt!
2014.10.05 14:33:25 0: HMLAN_Send: HMLAN2 I:K
2014.10.05 14:33:25 0: HMLAN_Send: HMLAN1 I:K
2014.10.05 14:33:25 0: HMLAN_Parse: HMLAN2 R:RE04CDA3E stat:0001 t:014F49FF d:FF r:FFBA m:26 8002 28E06B 200DB8 0101C80045
2014.10.05 14:33:26 0: HMLAN_Send: HMLAN2 S:SE04CDB0A stat: 00 t:00000000 d:01 r:E04CDB0A m:27 A011 200DB8 28E06B 80020101D2
2014.10.05 14:33:26 0: HMLAN_Parse: HMLAN2 V:03C4 sNo:LEQ0049873 d:272F60 O:200DB8 t:014F4A06 IDcnt:000A
2014.10.05 14:33:26 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:01834F19 d:FF r:FFB8 m:26 A011 200DB8 28E06B 8001010132010000000000000000
2014.10.05 14:33:26 2: CUL_HM Gong3 attack:11200DB828E06B80020101D2:11200DB828E06B8001010132010000000000000000.
2014.10.05 14:33:26 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:01834F97 d:FF r:FFC6 m:26 8002 28E06B 200DB8 0101C80045
2014.10.05 14:33:26 0: HMLAN_Parse: HMLAN1 V:03C4 sNo:LEQ0102417 d:26E9C8 O:200DB8 t:01834FA5 IDcnt:0022
2014.10.05 14:33:26 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:018350AB d:FF r:FFB0 m:27 A011 200DB8 28E06B 80020101D2
2014.10.05 14:33:26 0: HMLAN_Parse: HMLAN2 R:RE04CDB0A stat:0001 t:014F4B98 d:FF r:FFB8 m:27 8002 28E06B 200DB8 0102C80047
2014.10.05 14:33:26 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:01835130 d:FF r:FFC6 m:27 8002 28E06B 200DB8 0102C80047
2014.10.05 14:33:27 0: HMLAN_Parse: HMLAN2 R:E248DD1 stat:0000 t:014F5102 d:FF r:FFD0 m:3A 8610 248DD1 000000 0AF4C10E6458
2014.10.05 14:33:27 0: HMLAN_Parse: HMLAN1 R:E248DD1 stat:0000 t:0183569E d:FF r:FFCA m:3A 8610 248DD1 000000 0AF4C10E6458
2014.10.05 14:33:30 0: HMLAN_Parse: HMLAN2 R:E28E06B stat:0000 t:014F5B43 d:FF r:FFB8 m:29 A410 28E06B 200DB8 06010000
2014.10.05 14:33:30 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:018360E0 d:FF r:FFC6 m:29 A410 28E06B 200DB8 06010000
2014.10.05 14:33:30 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:01836159 d:FF r:FFB8 m:29 8002 200DB8 28E06B 00
2014.10.05 14:33:43 0: HMLAN_Parse: HMLAN2 R:E28E06B stat:0000 t:014F8C9B d:FF r:FFB8 m:2B A410 28E06B 200DB8 06020000
2014.10.05 14:33:43 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:01839237 d:FF r:FFC6 m:2B A410 28E06B 200DB8 06020000
2014.10.05 14:33:43 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:018392B1 d:FF r:FFB6 m:2B 8002 200DB8 28E06B 00
2014.10.05 14:33:44 0: HMLAN_Parse: HMLAN1 R:E2497C4 stat:0000 t:018399C3 d:FF r:FFC0 m:ED 8610 2497C4 000000 0AF4B40E6458
2014.10.05 14:33:45 0: HMLAN_Parse: HMLAN2 R:E2497C4 stat:0000 t:014F9426 d:FF r:FFB3 m:ED 8610 2497C4 000000 0AF4B40E6458
2014.10.05 14:35:25 0: HMLAN_Parse: HMLAN2 R:E24958D stat:0000 t:01511CCD d:FF r:FFC0 m:65 8610 24958D 000000 0AF4B70F6458
2014.10.05 14:35:25 0: HMLAN_Parse: HMLAN1 R:E24958D stat:0000 t:0185226A d:FF r:FFC7 m:65 8610 24958D 000000 0AF4B70F6458
2014.10.05 14:35:26 3: FernbedienungScharfstellenZeitverzoegert wurde gelöscht, da mit der Fernbedienung innerhalb der 15min wieder unscharf geschaltet wurde.
2014.10.05 14:35:28 3: CUL_HM set Gong3_Led led orangeL
2014.10.05 14:35:28 0: HMLAN_Send: HMLAN2 S:SE04EBB80 stat: 00 t:00000000 d:01 r:E04EBB80 m:28 A011 200DB8 28E06B 8001010132010000000000000000
2014.10.05 14:35:29 3: CUL_HM set Gong3_Mp3 playTone 211
2014.10.05 14:35:29 3: 1 . Signal für Gong3 wurde gesendet, insgesamt: 1, ausgelöst durch Bewegungsmelder: Fernbedienung01 (Funktion Mp3GongAusloesen)
2014.10.05 14:35:29 3: Fernbedienung Anwesend-Taste gedrueckt - alle Alarme abgeschaltet!
2014.10.05 14:35:29 0: HMLAN_Parse: HMLAN2 R:RE04EBB80 stat:0001 t:01512B52 d:FF r:FFBA m:28 8002 28E06B 200DB8 0101C80044
2014.10.05 14:35:29 0: HMLAN_Send: HMLAN2 S:SE04EBC59 stat: 00 t:00000000 d:01 r:E04EBC59 m:29 A011 200DB8 28E06B 80020101D3
2014.10.05 14:35:29 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:0185306E d:FF r:FFAC m:28 A011 200DB8 28E06B 8001010132010000000000000000
2014.10.05 14:35:29 2: CUL_HM Gong3 attack:11200DB828E06B80020101D3:11200DB828E06B8001010132010000000000000000.
2014.10.05 14:35:29 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:018530EA d:FF r:FFC4 m:28 8002 28E06B 200DB8 0101C80044
2014.10.05 14:35:29 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:018531FF d:FF r:FFAF m:29 A011 200DB8 28E06B 80020101D3
2014.10.05 14:35:29 0: HMLAN_Parse: HMLAN2 R:RE04EBC59 stat:0001 t:01512CEB d:FF r:FFB8 m:29 8002 28E06B 200DB8 0102C80048
2014.10.05 14:35:29 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:01853283 d:FF r:FFC3 m:29 8002 28E06B 200DB8 0102C80048
2014.10.05 14:35:31 0: HMLAN_Send: HMLAN2 I:K
2014.10.05 14:35:31 0: HMLAN_Send: HMLAN1 I:K
2014.10.05 14:35:31 0: HMLAN_Parse: HMLAN2 V:03C4 sNo:LEQ0049873 d:272F60 O:200DB8 t:015132BD IDcnt:000A
2014.10.05 14:35:31 0: HMLAN_Parse: HMLAN1 V:03C4 sNo:LEQ0102417 d:26E9C8 O:200DB8 t:0185385F IDcnt:0022
2014.10.05 14:35:34 0: HMLAN_Parse: HMLAN2 R:E28E06B stat:0000 t:01513E8B d:FF r:FFBC m:2B A410 28E06B 200DB8 06010000
2014.10.05 14:35:34 0: HMLAN_Parse: HMLAN1 R:E28E06B stat:0000 t:01854428 d:FF r:FFC0 m:2B A410 28E06B 200DB8 06010000
2014.10.05 14:35:34 0: HMLAN_Parse: HMLAN1 R:E200DB8 stat:0000 t:018544A1 d:FF r:FFAF m:2B 8002 200DB8 28E06B 00
jetzt ist es klar. Du sendest 2 kommandos, LED und Ton. HMLAN1 empfängt das senden der LED nachdem HMLAN2 bereits den Ton gesendet hat.
FHEM prüft, ob das letzte Senden unserem entspricht, das ist hier nicht mehr der Fall (da es zu spät kommt).
Mal grübeln, nicht so einfach.
Vermeiden könntest du es, wenn du etwas dazwischen wartest - so 300ms sollte reichen.
Danke für die Antwort & das Debuggen!
Ok, sehr gut, Zeitverzögerung ist kein Problem.
Wichtiger ist das Tonsignal, also sende ich mit einem um
define LEDVerzoegertTemp at +00:00:01 fhem ("set Gong3_Led led orangeL");
das Senden der LED?
Oder geht das "define at" auch im Milisekunden-Bereich mit +00:00:00:500?
Viele Grüße,
Heiko
glaube ich nicht.