Fhem mit KNX IP Router Kommunizieren lassen

Begonnen von ArmFpc, 20 August 2015, 15:19:01

Vorheriges Thema - Nächstes Thema

ArmFpc

Hey Leute,

ich wollte mein Fhem Server mit dem KNX koppeln um die Lampen und der gleichen zu steuern. Mein Fhem Server läuft unter Win xp und die Verbindung zwischen KNX und Fhem soll über IP laufen, nicht über diesen USB Stick.

Ich habe schon gesucht und bin aber noch nicht auf das richtige gestoßen oder wende es falsch an. Hab auf der Seite: http://www.meintechblog.de/2014/06/knx-eib-gateway-in-fhem-einbinden/ gefunden wie es wohl Funktionieren soll.

ich habe mein TUL definiert mittels:define KNX TUL eibd:192.168.9.25 4.0.0 
Das Gerät wird auch erfolgreich angelegt, aber der Status sagt immer aus "disconnected". 

Was mach ich falsch, oder hab ich da was Falsch verstanden?

igami

Du musst noch "eibd" installieren. Anleitungen dazu findet man im Internet, ich meine im Forum gibt es auch einen Beitrag zum überarbeiteten "knxd".
Bei mir ist das leider schon so lange her, und ich war damals nur froh, als es lief :D

Grüße
igami
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

ArmFpc

Ok Danke schon mal, in dem Fall bin ich schon mal nicht komplett falsch.

Nun muss ich nur irgendwo eine Eibd oder KNXd Installation für Windows finden.
Hat da jemand einen Tipp?

igami

Nach einer kurzen Suche im Internet sieht es so aus, als wenn es eibd nur für Linux gibt.
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

ArmFpc

genau das hab ich auch schon fast befürchtet  >:(

mhm shit! 

Kennt jemand eine Alternative ?!

igami

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

ArmFpc

Ja prinzipiell kein Problem wenn nicht auf dem Rechner andere SW laufen würde die nicht unter Linux geht  :P

Naja muss ich mir mal eine Alternative suchen.

Unter Linux kann ich es ja einfach über die Console installieren ?

igami

Stärkere Hardware? Dann setz dir ne VM mit Linux auf.

Die Installation von eibd war für mich damals nicht so einfach, aber das waren auch noch die Anfänge ;)
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

smurfix

Alternativ kann ich einen Raspberry Pi 2, oder eine ähnliche kleine Kiste, wärmstens empfehlen. Sowas hat mehr als genug Kapazität für FHEM, knxd, und was weiß ich noch alles – und die Kosten für das Ding hast du spätestens mit der Stromersparnis wieder rein, wenn dein Windowskasten nicht mehr die ganze Nacht durchlaufen muss.

ArmFpc

So nun habe ich mal als test alles auf Linux (Ubuntu) laufen.

ich habe wie schon oben geschrieben mich an die Anleitung aus dem Blog gehalten.

meine Logdatei meldet mit folgendes!

defined(@array) is deprecated at ./FHEM/00_TUL.pm line 704, <$fh> line 132.
(Maybe you should just omit the defined()?)
2015.08.21 14:00:23 3: TUL opening KNX device eibd:localhost
2015.08.21 14:00:23 3: Can't connect to eibd:localhost: Verbindungsaufbau abgelehnt

2015.08.21 14:02:58 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/00_TUL.pm line 876.
2015.08.21 14:02:58 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/00_TUL.pm line 886.


Wenn ich das richtig sehe funktioniert der EibD aber er kann keine Verbindung zum dem KNX IP Router aufbauen!?
Funktioniert das auch wenn man hinter die Ip Adresse noch ein Port hängt, da es über Port forwarding  läuft ?

smurfix

Zitat von: ArmFpc am 21 August 2015, 14:14:37
So nun habe ich mal als test alles auf Linux (Ubuntu) laufen.

ich habe wie schon oben geschrieben mich an die Anleitung aus dem Blog gehalten.
Welche Anleitung wo? da gibt es mehrere. Ich empfehle die aktuelle unter https://github.com/knxd/knxd.
Mit dem alten eibd würde ich mich nicht mehr herumschlagen.

Mit welchen Argumenten hast du den knxd gestartet?
Zitat
meine Logdatei meldet mit folgendes!

defined(@array) is deprecated at ./FHEM/00_TUL.pm line 704, <$fh> line 132.
(Maybe you should just omit the defined()?)
2015.08.21 14:00:23 3: TUL opening KNX device eibd:localhost
2015.08.21 14:00:23 3: Can't connect to eibd:localhost: Verbindungsaufbau abgelehnt


Wenn ich das richtig sehe funktioniert der EibD aber er kann keine Verbindung zum dem KNX IP Router aufbauen!?
Woran siehst du das? Ich sehe daran, dass dein FHEM keine Verbindung zum knxd aufbauen kann, was für mich bedeutet, dass der knxd entweder nicht läuft oder falsch konfiguriert ist.
Zitat
Funktioniert das auch wenn man hinter die Ip Adresse noch ein Port hängt, da es über Port forwarding  läuft ?
Das funktioniert zwar, aber es ist viel einfacher, wenn man von vornherein den "richtigen" Port weiterleitet. Abgesehen davon: welchen Port magst du weioterleiten? den am knxd, mit dem der FHEM redet, oder den am KNX/OP-Router, mit dem der knxd redet?

ArmFpc

Sorry für meine späte Reaktion / Antwort !!!


Ich habe es nach der Anleitung http://www.meintechblog.de/2014/06/knx-eib-gateway-in-fhem-einbinden/ gemacht.
aber ich werde es mal nach deine Tipp/Vorschlag machen und mich an
https://github.com/knxd/knxd Halten


ZitatMit welchen Argumenten hast du den knxd gestartet?

sudo nano /etc/crontab

eibd -t 1023 -S -D -R -T -i --no-tunnel-client-queuing ipt:<Ip-Adresse>


ZitatWoran siehst du das?
Wenn ich den eibd... direkt im Terminal ausführe sieht es für mich aus als würde es eine Verbindung aufbauen können. Kann nichts von Failed connection oder der gleichen lesen.


ZitatDas funktioniert zwar, aber es ist viel einfacher, wenn man von vornherein den "richtigen" Port weiterleitet. Abgesehen davon: welchen Port magst du weioterleiten? den am knxd, mit dem der FHEM redet, oder den am KNX/OP-Router, mit dem der knxd redet?
Das denke ich mir, aber zurzeit ist es für mich nur Remote lösbar.  :-\

smurfix

#12
Zitat von: ArmFpc am 26 August 2015, 12:12:10
Sorry für meine späte Reaktion / Antwort !!!


Ich habe es nach der Anleitung http://www.meintechblog.de/2014/06/knx-eib-gateway-in-fhem-einbinden/ gemacht.
aber ich werde es mal nach deine Tipp/Vorschlag machen und mich an
https://github.com/knxd/knxd Halten


sudo nano /etc/crontab

eibd -t 1023 -S -D -R -T -i --no-tunnel-client-queuing ipt:<Ip-Adresse>

Wenn ich den eibd... direkt im Terminal ausführe sieht es für mich aus als würde es eine Verbindung aufbauen können. Kann nichts von Failed connection oder der gleichen lesen.

Diese Kommandozeile funktioniert mit dem knxd nicht mehr. Du willst -DRTS, nicht -SDRT.

Das Teil heißt jetzt knxd, nicht eibd. Und: bevor du den knxd baust und installierst, müssen alle Reste vom eibd aus dem System verschwinden. Insbesondere liegt in /usr/local/lib bzw. .../include evtl. noch ein altes Library herum.

Zu dieser Anleitung: die sollte der Ersteller bei Gelegenheit überarbeiten. Abgesehen vom knxd statt eibd  8) ist "sudo su" irgendwie Unfug, und die crontab ist als Boothelfer ziemlich sinnfrei – dafür gibt es /etc/rc.local. (Beim knxd sind vernünftige Skripte bereits dabei.)

ArmFpc

So nun bin ich dran das KNXD von github zu installieren wie du geschrieben hast.

Halte mich an den Ablauf der unten steht. Das erste Problem trat auf bei dem befehl: "dpkg-buildpackage -b -uc" in dem Verzeichnis "cd pthsem-2.0.8". Das Bauabhängigkeiten fehlen würden! Dies habe ich mit dem folgendem Befehl beseitigt bekommen: sudo apt-get install build-essential libtool automake pkg-config cdbs libsystemd-daemon-dev

Nun bin ich in dem Verzeichnis Knxd und sollte den selben Befehl (" dpkg-buildpackage -b -uc") ausführen, nun kommt da aber Folgender Fehler siehe Bild.

Was Fehlt noch, das ich den Knxd Teil bauen kann, oder was mache ich Falsch das dieser Fehler auftritt?

smurfix

Dann installiere halt das angemeckerte libusb-1.0.0-dev – wo liegt das Problem?

ArmFpc

Zitat von: smurfix am 03 September 2015, 13:45:06
Dann installiere halt das angemeckerte libusb-1.0.0-dev – wo liegt das Problem?
Oh das war mein Fehler ich hab das überlesen  :-[

ZitatDiese Kommandozeile funktioniert mit dem knxd nicht mehr. Du willst -DRTS, nicht -SDRT.

Jetzt steh ich irgendwie auf dem Schlauch. Wie kann ich das Knxd dann starten? Ich gehe davon aus das ich den Dienst erst starten muss das Fhem dann über die KNX Definition darauf zugreifen kann, seh ich das richtig?

Wo geht ich dann mit den Parametern (-DRTS) hin? Muss ich das nicht mit dem befehl "knxd -t 1023 -DRTS -i <ipadresse>"  in der Konsole starten?

Oder reicht es nach der Installation einfach in Fhem.
define KNX TUL knxd:192.168.14.44 1.1.249
Einen Knx device anlegen?
Dann damit den Wert abfragen ?
#device definition
define Dimmer EIB 1/1/4 7/1/2
attr Dimmer  IODev KNX

smurfix

Hi,

ZitatWo geht ich dann mit den Parametern (-DRTS) hin? Muss ich das nicht mit dem befehl "knxd -t 1023 -DRTS -i <ipadresse>"  in der Konsole starten?

Nein, du sollst den knxd nicht von der Konsole aus starten. Jedenfalls nicht im Normalfall (mal zum testen ist was Anderes).

Das machen die Startskripte für dich, die die Optionen in /etc/knxd.conf (wenn du systemd verwendest) oder /etc/default/knxd (wenn nicht) auswerten.
Schließlich soll das alles von selber passieren, wenn mal ein Stromausfall ist ...

NB: die IP-Adresse nach "-i" kannst du im Normalfall weglassen. (Mehrfache Datenhaltung ist nie gut.)