Trigger bei Eingängen? Und openHAB.

paphko
Beiträge: 26
Registriert: Samstag 13. September 2014, 14:12

Re: Trigger bei Eingängen? Und openHAB.

Beitrag von paphko » Sonntag 22. Februar 2015, 21:51

Ok, ich bin etwas weiter. Ich brauche da vermutlich nochmal Hilfe von Andy: an welche Broadcast-Adresse genau werden UDP-Updates geschickt?

Hintergrund: wenn ein Relais schaltet, wird ja eine UDP-Nachricht geschickt. Unter Windows kann ich sie auch empfangen, mit einem Raspberry Pi mit Raspbian (Debian Wheezy) bekomme ich die Broadcasts leider nicht mit.
Wenn ich auf dem RasPi ein "wer da?" verschicke, bekomme ich eine prompte Antwort mit dem Status der Relais und IOs, allerdings bekomme ich keine weiteren Pakete mit, z.B. wenn ich über den Browser etwas schalte.

Jetzt stellt sich mir die Frage, wie die Broadcasts aussehen, damit sie unter Windows aber nicht unter Linux empfangen werden?!

Getestet mit diesem Java-Programm: https:/ /www.dropbox.com/s/6gblrctsaaxen3p/UDPTest4.jar?dl=0 (wenn ich die URL ausschreibe, kann ich den Post nicht abschicken!)
Beispiel (HUT auf 192.168.5.207, Ports 7757 und 7777):
pi@toko /home/pi/UDPTest $ sudo java -jar UDPTest4.jar "wer da?" 192.168.5.207 7757 7777 120 -d
listening on port 7777
sending to /192.168.5.207:7757 -> wer da?
Sun Feb 22 17:28:44 CET 2015 -> Broadcast enabled: true
Sun Feb 22 17:28:44 CET 2015 -> inet Address: null
Sun Feb 22 17:28:44 CET 2015 -> local Address: 0.0.0.0/0.0.0.0
Sun Feb 22 17:28:44 CET 2015 -> remote socket Address: null
received (355): NET-PwrCtrl:ANEL7 :192.168.5.207:255.255.255.0:192.168.5.1:0.4.163.14.10.86:KABEL1,0:KABEL2,0:KABEL3,0:KABEL4,0:KABEL5,0:KABEL6,0:KABEL7,0:KABEL8,0:0:80:SWITCH1,1,1:SWITCH2,1,1:SWITCH3,1,1:SWITCH4,1,1:SWITCH5,1,1:SWITCH6,1,1:SWITCH7,1,1:SWITCH8,1,1:24.4�C:NET-PWRCTRL_05.0

0. -> 'NET-PwrCtrl'
1. -> 'ANEL7 '
2. -> '192.168.5.207'
3. -> '255.255.255.0'
4. -> '192.168.5.1'
5. -> '0.4.163.14.10.86'
6. -> 'KABEL1,0'
7. -> 'KABEL2,0'
8. -> 'KABEL3,0'
9. -> 'KABEL4,0'
10. -> 'KABEL5,0'
11. -> 'KABEL6,0'
12. -> 'KABEL7,0'
13. -> 'KABEL8,0'
14. -> '0'
15. -> '80'
16. -> 'SWITCH1,1,1'
17. -> 'SWITCH2,1,1'
18. -> 'SWITCH3,1,1'
19. -> 'SWITCH4,1,1'
20. -> 'SWITCH5,1,1'
21. -> 'SWITCH6,1,1'
22. -> 'SWITCH7,1,1'
23. -> 'SWITCH8,1,1'
24. -> '24.4�C'
25. -> 'NET-PWRCTRL_05.0
'
Danach schalte ich etwas über den Browser und auf einem Windows-Rechner bekomme ich eine Antwort, auf einem RasPi nicht.
Kann das jemand bestätigen?
Hat jemand eine Vermutung warum die Broadcasts auf dem RasPi nicht ankommen?

Klaus
Beiträge: 11
Registriert: Donnerstag 31. Januar 2008, 18:51

Re: Trigger bei Eingängen? Und openHAB.

Beitrag von Klaus » Dienstag 24. Februar 2015, 15:20

Meine openHAB (Test-) Installation läuft unter Windows - und das Schalten hat da ja auch nicht funktioniert...

paphko
Beiträge: 26
Registriert: Samstag 13. September 2014, 14:12

Re: Trigger bei Eingängen? Und openHAB.

Beitrag von paphko » Freitag 27. Februar 2015, 12:33

Ok, gestern habe ich zumindest eins der Probleme gelöst: die UDP Broadcast Pakete der NET-PwrCtrl Geräte sind sogenannte limited Broadcasts mit der Ziel-IP 255.255.255.255.
Laut Wikipedia: Ein limited broadcast wird von einem Router nicht weitergeleitet.

Bei mir geht der Traffic allerdings über zwei Switches und ein WLAN, und an einem Rechner kamen die Pakete an, an einem anderen nicht. Einer der Switches hat sie wohl nicht an alle Ports weitergeleitet. :?
Nachdem ich die Switches mal resettet habe, kommen die Pakete nun auch dort an wo sie ankommen sollen :D :D :D

Erste Versuche mit openHab sind bei mir erfolgreich, habe allerdings noch einen offenen Bugfix falls mehrere Geräte existieren, den ich die Tage im openHab GIT einpflegen werde.

@Klaus: ich werde in dem Zuge auch mal weitere debug-Ausgaben einbauen, sodass wir dein Problem hoffentlich auch noch in den Griff bekommen.
Das sollten wir aber dann hier weiter diskutieren: https://groups.google.com/forum/#!forum/openhab

paphko
Beiträge: 26
Registriert: Samstag 13. September 2014, 14:12

Re: Trigger bei Eingängen? Und openHAB.

Beitrag von paphko » Sonntag 8. März 2015, 11:30

Hallo Klaus,

ich habe jetzt das Binding mit mehreren HUT Geräten erfolgreich im Einsatz, und bei mir schalten die Relais soweit problemlos.
Item: Switch L_Dachboden { anel="anel4:F3", autoupdate="false" }
Sitemap: Switch item=L_Dachboden label="Licht Dachboden"
Im Log steht dann: L_Dachboden state updated to ON
Ich kann das auch direkt über die openhab Konsole machen:

Code: Alles auswählen

openhab send L_Dachboden OFF
2015-03-08 11:26:52.255 [INFO ] [runtime.busevents             ] - L_Dachboden received command OFF
Command has been sent successfully.
osgi> 2015-03-08 11:26:52.302 [INFO ] [runtime.busevents             ] - L_Dachboden state updated to OFF
Ich habe ein kleines Testprogramm geschrieben, mit dem du mal testen kann, ob das Problem wirklich an der openhab-Konfiguration oder vielleicht an der Netzwerk-Kommunikation liegt:
1. Lade dir UDPTest.jar runter: https://www.dropbox.com/s/vizcrip59zdi0 ... t.jar?dl=0
2. In der Kommandozeile (-d steht für erweiterten debug-output): java -jar UDPTest.jar "wer da?" <ip> <send-port> <receive-port> <timout> -d
z.B.: java -jar UDPTest.jar "wer da?" 192.168.6.201 7500 7700 120 -d
Da sollte dann der Status aller Werte zurückkommen. Wenn das schon nicht klappt, vielleicht mal andere Ports probieren und die Firewall ausschalten. Auch das Netzwerk so kurz wie möglich halten (beiden Geräte am gleichen Switch).
3. Ein Relais schalten: java -jar UDPTest.jar "Sw_on3user7anel" 192.168.6.201 7500 7700 120 -d (Format wie hier angegeben: SW_on<Nr><user><pwd>)
Hier könnte die Fehlerquelle evtl. die Benutzerauthentifizierung sein.
Klaus hat geschrieben:Jetzt habe ich auch nochmal autoupdate="false" probiert, leider ohne Erfolg.

Schalte ich extern um, dann wird der angezeigte Zustand (ON/OFF) im Web-Interface sauber nachgezogen.
Versuche ich im openHAB Web-Interface umzuschalten, dann erzeuge ich zwar einen Eintrag im Events.log, z.B.
2015-02-02 17:45:34 - Anel1 received command ON
es passiert aber nichts ...

Im openhab.log kann ich dazu aber nichts finden... Müsste da auch was stehen?

Klaus
Beiträge: 11
Registriert: Donnerstag 31. Januar 2008, 18:51

Re: Trigger bei Eingängen? Und openHAB.

Beitrag von Klaus » Sonntag 8. März 2015, 19:40

Hallo paphko,

mit Deinem Java-Testprogramm funktioniert beides: Status-Abfrage und Schalten.
Alles andere hätte mich auch gewundert, da ich die gleiche Funktionalität auch via PHP-Script für mein SIP-Phone nutze.
Trotzdem danke für das Testprogramm, so können wir wenigstens beide sicher sein, dass meine Grundkonfiguration passt.

Bei der von Dir genannten Google-Group habe ich mich übrigens mittlerweile angemeldet.

Danke und Gruß,
Klaus

paphko
Beiträge: 26
Registriert: Samstag 13. September 2014, 14:12

Re: Trigger bei Eingängen? Und openHAB.

Beitrag von paphko » Montag 9. März 2015, 13:26

Klaus hat geschrieben:mit Deinem Java-Testprogramm funktioniert beides: Status-Abfrage und Schalten.
Interessant! Denn das ist exakt der gleiche Code, der auch im Binding verwendet wird...
Sorry, aber damit ist technisch alles korrekt. Keine Ahnung warum es nicht funktioniert :|

Hab paar Kleinigkeiten noch gefixt, vielleicht gab's da irgendwelche Seiteneffekte. Versuch doch mal diese Version, die wird auch in 1.6.3 enthalten sein https://www.dropbox.com/s/296g5wfg13htf ... 8.jar?dl=0

Klaus
Beiträge: 11
Registriert: Donnerstag 31. Januar 2008, 18:51

Re: Trigger bei Eingängen? Und openHAB.

Beitrag von Klaus » Montag 9. März 2015, 18:31

Supi - was immer Du da jetzt noch angepasst hast, jetzt funktioniert es auch bei mir :)
Vielen Dank!

// Klaus

paphko
Beiträge: 26
Registriert: Samstag 13. September 2014, 14:12

Re: Trigger bei Eingängen? Und openHAB.

Beitrag von paphko » Montag 9. März 2015, 19:39

Wunderbar! :mrgreen: :mrgreen: :mrgreen:
Danke für das Feedback!
Klaus hat geschrieben:Supi - was immer Du da jetzt noch angepasst hast, jetzt funktioniert es auch bei mir :)
Vielen Dank!

Antworten