Installation eibd auf pi 2

Begonnen von Marthinx, 16 September 2015, 05:22:18

Vorheriges Thema - Nächstes Thema

Marthinx

Hallo,
ich muss leider meinen Pi neu aufsetzten.
Leider funktionieren die Anleitungen im Internet nicht mehr.

z.B.
http://ekblad.org/knx/pi.html
http://www.meintechblog.de/2014/06/knx-eib-gateway-in-fhem-einbinden/#more-4757

er wird nach:
wget -O /tmp/bcusdk_0.0.5.tar.gz http://www.auto.tuwien.ac.at/~mkoegler/eib/bcusdk_0.0.5.tar.gz && tar -xvf bcusdk_0.0.5.tar.gz && wget -O /tmp/pthsem_2.0.8.tar.gz http://www.auto.tuwien.ac.at/~mkoegler/pth/pthsem_2.0.8.tar.gz && tar -xvf pthsem_2.0.8.tar.gz

der Fehler:
tar: bcusdk_0.0.5.tar.gz: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now

angezeigt.

Gibt es eine funktionierende Anleitung?
Kann jemand mir einen Tipp geben?

Vielen Dank,

Gruß
Martin

smurfix


antonwinden

Also meine Wenigkeit bekommt nach der Anleitung nix auf die reihe:
pi@raspberrypi ~/pthsem-2.0.8 $ sudo dpkg-buildpackage -b -uc
dpkg-buildpackage: source package pthsem
dpkg-buildpackage: source version 2.0.8
dpkg-buildpackage: source changed by Martin Koegler <mkoegler@auto.tuwien.ac.at>
dpkg-buildpackage: host architecture armhf
dpkg-source --before-build pthsem-2.0.8
dpkg-checkbuilddeps: Unmet build dependencies: debhelper (>= 7) cdbs
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
pi@raspberrypi ~/pthsem-2.0.8 $ cd ..
pi@raspberrypi ~ $ sudo dpkg -i libpthsem*.deb
dpkg: error processing libpthsem*.deb (--install):
cannot access archive: No such file or directory
Errors were encountered while processing:
libpthsem*.deb

und das bei einem frisch aufgesetzten system...
wenn ich aber so vorgehe:
#mit filezilla  (sftp port 22 pi password) folgende dateien kopieren
http://sourceforge.net/projects/bcusdk/files/pthsem/pthsem_2.0.8.tar.gz/download
http://sourceforge.net/projects/bcusdk/files/bcusdk/bcusdk_0.0.5.tar.gz/download
#entpacken und installieren
tar xvfz pthsem_2.0.8.tar.gz
tar xvfz bcusdk_0.0.5.tar.gz
cd pthsem-2.0.8
./configure
make
sudo make install
cd ../bcusdk-0.0.5
export LD_LIBRARY_PATH=/usr/local/lib
./configure --with-pth=yes --without-pth-test --enable-onlyeibd --enable-eibnetip --enable-eibnetiptunnel --enable-eibnetipserver
make
sudo make install
#You have to load the dynamic library in /usr/local/lib in order for eibd to work, do the following:
echo "/usr/local/lib" | sudo tee -a /etc/ld.so.conf.d/bcusdk.conf
sudo ldconfig
#Try it out with:
sudo route add 224.0.23.12 dev eth0
sudo touch /var/log/eibd.log
sudo chown $USER /var/log/eibd.log
/usr/local/bin/eibd -D -S -T -i --eibaddr=0.0.1 --daemon=/var/log/eibd.log --no-tunnel-client-queuing ipt:192.168.1.112
/usr/local/bin/groupsocketlisten ip:127.0.0.1

dann hab ich wenigstens ein funktionierendes eibd - ist halt kein knxd...
nachdem ich der ansicht bin das nicht jeder das rad neu erfinden muß...
gruß anton
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

smurfix

Hallo,
Zitatdpkg-checkbuilddeps: Unmet build dependencies: debhelper (>= 7) cdbs

dass du diese Pakete installieren und den Befehl dann nochmal ausführen sollst, steht aber schon in der Anleitung ... ganz oben ...

NB: Es geht nicht darum, Räder neu zu erfinden, sondern offensichtliche Probleme zu beheben.
Wenn der alte eibd für dich so funktioniert, fein – für mich funktioniert er nicht.

antonwinden

stimmt - mein fehler denn nach apt-get der beiden pakete geht es weiter.
danach geht aber nix mehr immer scheitert es an:
pi@raspberrypi ~/knxd $ sudo apt-get install lsb-base
Reading package lists... Done
Building dependency tree
Reading state information... Done
lsb-base is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
pi@raspberrypi ~/knxd $ sudo apt-get install dh-systemd
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package dh-systemd
pi@raspberrypi ~/knxd $ sudo dpkg-buildpackage -b -uc
dpkg-buildpackage: source package knxd
dpkg-buildpackage: source version 0.10.8-3
dpkg-buildpackage: source changed by Matthias Urlichs <matthias@urlichs.de>
dpkg-buildpackage: host architecture armhf
dpkg-source --before-build knxd
dpkg-checkbuilddeps: Unmet build dependencies: libsystemd-daemon-dev (>= 200) | lsb-base (<= 4) dh-systemd | lsb-base (<= 4)
dpkg-checkbuilddeps: Build conflicts: libsystemd-daemon-dev (<< 200)
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)


egal ob ich wie in der anleitung "edit debian/control and remove the "libsystemd-daemon-dev" line" (ist ja nur 1 zeile oder?) entferne oder ob ich versuche ohne entfernen der zeile alle pakete zu installieren - es läuft immer auf obige fehler raus...
sorry aber ich bin anscheinend zu blöd...
anton
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

SimplyJoe

Also ich hab aus der debian/control folgende Zeilen entfernt


libsystemd-daemon-dev (>= 200) | lsb-base (<= 4),

dh-systemd | lsb-base (<= 4)

Build-Conflicts: libsystemd-daemon-dev (<< 200)


Und das Packet libsystemd-daemon-dev darf nicht installiert sein.

So hat es bei mir gestern auf einem "frischen" Raspberry Pi 2 mit dem aktuellen Rasbian funktioniert.

Viele Grüße

Sepp

FHEM auf Raspberry Pi 2
hmland mit HM-CFG-USB 2: HM-ES-PMSw1-Pl, HM-SEC-SD, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-RHS
Selfbus FT1.2 Adapter: KNX
JeeLink: LaCrosseITPlusReader
SignalDuino: CTW-600, Funksteckdosen Pollin  (550666)

antonwinden

danke für den tip - werd ich morgen probieren denn den pi heute ein zweites mal neu aufsetzen dazu fehlt mir die lust besonders da die chancen gut stehen das es dann aus einem anderen grund nicht funzt.
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

SimplyJoe

Wieso willst du den Raspi neu aufsetzten.

Lösche die drei Zeilen und entferne ggf. das Packet libsystemd-daemon-dev

Bei mir ging es dann sofort.

Viele Grüße

Joe
FHEM auf Raspberry Pi 2
hmland mit HM-CFG-USB 2: HM-ES-PMSw1-Pl, HM-SEC-SD, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-RHS
Selfbus FT1.2 Adapter: KNX
JeeLink: LaCrosseITPlusReader
SignalDuino: CTW-600, Funksteckdosen Pollin  (550666)

smurfix

Zitat von: SimplyJoe am 16 September 2015, 21:48:14
Also ich hab aus der debian/control folgende Zeilen entfernt


libsystemd-daemon-dev (>= 200) | lsb-base (<= 4),
dh-systemd | lsb-base (<= 4)
Build-Conflicts: libsystemd-daemon-dev (<< 200)


Und das Packet libsystemd-daemon-dev darf nicht installiert sein.
Die Installation von lsb-base hätte das Problem auch gelöst.

Ich werde das wohl durch etwas Anderes ersetzen (müssen), das auf Wheezy sowieso installiert ist. Und/oder die Anleitung etwas umschreiben.

smurfix

... beides erledigt. (Change 9eb0654)

SimplyJoe

Super, das geht ja zackig  :)

Jetzt baut der knxd ohne jegliche Änderung an der debian/control.

lsb-base war installiert:


apt-cache show lsb-base
Package: lsb-base
Source: lsb
Version: 4.1+Debian8+rpi1+deb7u1
Architecture: all
Maintainer: Debian LSB Team <debian-lsb@lists.debian.org>
Installed-Size: 71
Multi-Arch: foreign
Homepage: http://www.linuxfoundation.org/collaborate/workgroups/lsb
Priority: required
Section: misc
Filename: pool/main/l/lsb/lsb-base_4.1+Debian8+rpi1+deb7u1_all.deb
Size: 26914
SHA256: 825dd4ea89dce68b8a38585015062f89feca6969e1643982856c8bb51ec0c78b
SHA1: 998d7f8326c38b9e37ae9ccbe0e143bc8c9f235c
MD5sum: 1c8a3962348a6217de159280bea52abb
Description: Linux Standard Base 4.1 init script functionality
The Linux Standard Base (http://www.linuxbase.org/) is a standard
core system that third-party applications written for Linux can
depend upon.
.
This package only includes the init-functions shell library, which
may be used by other packages' initialization scripts for console
logging and other purposes.


Aber egal, jetzt geht es ja.



Viele Grüße

Joe
FHEM auf Raspberry Pi 2
hmland mit HM-CFG-USB 2: HM-ES-PMSw1-Pl, HM-SEC-SD, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-RHS
Selfbus FT1.2 Adapter: KNX
JeeLink: LaCrosseITPlusReader
SignalDuino: CTW-600, Funksteckdosen Pollin  (550666)

smurfix

Zitatlsb-base war installiert:
Schon. Aber dummerweise eine neuere Version als erwartet. Ist behoben; außerdem habe ich die Doku zur Konfiguration erweitert.

antonwinden

so jetzt hab ich das ding auch zum laufen gebracht:
im gegensatz zur https://github.com/knxd/knxd/ hab ich
# If you're using Wheezy, edit debian/control and remove the "libsystemd-daemon-dev" line
nicht machen müssen.
danke für die hilfe...
anton
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

smurfix

Zitatim gegensatz zur https://github.com/knxd/knxd/ hab ich
# If you're using Wheezy, edit debian/control and remove the "libsystemd-daemon-dev" line
nicht machen müssen.
Die Zeile ist war eine Altlast. Korrigiert, danke.

Wenn jemand beim Testen mithelfen will: bitte den conn_sep-Zweig ausprobieren.

make clean # vorsichtshalber
git checkout conn_sep
dpkg-buildpackage -b -uc
...

Marthinx

Hallo
und vielen Dank für den Tipp
ich habe versucht über
https://github.com/knxd/knxd/ ...

knxd zu installieren.

Leider habe ich auch Fehlermeldungen:


pi@pi ~/pthsem-2.0.8 $ sudo dpkg-buildpackage -b -uc -d
dpkg-buildpackage: source package pthsem
dpkg-buildpackage: source version 2.0.8
dpkg-buildpackage: source changed by Martin Koegler <mkoegler@auto.tuwien.ac.at>
dpkg-buildpackage: host architecture armhf
dpkg-source --before-build pthsem-2.0.8
debian/rules clean
debian/rules:3: /usr/share/cdbs/1/rules/debhelper.mk: No such file or directory
debian/rules:4: /usr/share/cdbs/1/class/autotools.mk: No such file or directory
debian/rules:5: /usr/share/cdbs/1/rules/utils.mk: No such file or directory
make: *** No rule to make target '/usr/share/cdbs/1/rules/utils.mk'.  Stop.
dpkg-buildpackage: error: debian/rules clean gave error exit status 2

smurfix

Zitatich habe versucht über
https://github.com/knxd/knxd/ ...

knxd zu installieren.
Nein, hast du nicht. Es hat dir keiner gesagt, "sudo" oder "dpkg-buildpackage -d" zu verwenden.

Beides ist Unsinn. Insbesondere musst du das "-d" weglassen und stattdessen die fehlenden Pakete installieren.

antonwinden

#16
also ich hab dafür folgende pakete installieren müssen:
sudo apt-get install debhelper
sudo apt-get install cdbs
sudo apt-get install automake
sudo apt-get install libtool
sudo apt-get install libusb-1.0-0-dev

die ersten 2 für pthsem
den rest danach
und das sudo hab ich fast auch immer benötigt :-)
dafür geht es jetzt
gruß anton
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

smurfix

#17
chown -R $USER .
schon sind die Auswirkungen deines "sudo dpkg-buildpackage" wieder weg und du kannst es genau dort (und nur dort) einsetzen, wo die Doku es dir sagt.

NB: Ich schreibe die Paketliste absichtlich nicht in die Anleitung. Dann muss ich die Anleitung nicht anfassen, wenn sich diese Liste ändern sollte.
(Was eh meist vergessen wird ... und dann sind die Anwender noch frustrierter als ohnehin schon, angesichts der Tatsache dass man den knxd nicht einfach mit "apt-get install knxd" installieren kann. Aber das kommt auch noch.)

Marthinx

#18
vielen Dank für die Hilfe.
Ich habe jetzt die fehlenden Pakete installiert.
Jetzt hat auch die normale Installation funktioniert.
Danke Anton und alle anderen für die Hilfe.

Leider kommen ich jetzt wieder nicht weiter.
Früher habe ich bei Eibd folgendes für ein Autostart von Eid gemacht:

sudo nano /etc/crontab

und dann
@reboot         root     eibd -t 1023 -S -D -R -T -i --no-tunnel-client-queuing$ ipt:192.168.188.XXX


Wie mache ich das jetzt bei knxd?

(Ich benutzte also ein IP Gateway)

smurfix

ZitatWie mache ich das jetzt bei knxd?
/etc/default/knxd editieren. (Steht nicht eh in der Anleitung, dass du das tun sollst?)
(Ich nehme an, du verwendest noch Wheezy.)

Marthinx

Hallo danke smurfix,

ich habe für die Zukunft und für andere Besucher folgende WIKI Seite erstellt.
http://www.fhemwiki.de/wiki/Knxd

Hier könnte ich noch etwas Hilfe gebrauchen.

Ich habe folgende Anpassungen vorgenommen:
# by default knxd does NOT start. set to YES to enable
START_KNXD=YES
und
DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ipt:192.168.188.XX"


jetzt bekomme ich folgende Fehlermeldung:
/etc/init.d/knxd start
E00000016: OpenLocalSocket /tmp/eib: bind: Address already in use
initialisation of the knxd unix protocol failed: Address already in use
pi@pi ~ $ /etc/init.d/knxd status
[FAIL] knxd is not running ... failed!

antonwinden

so jetzt hab ich knxd zum laufen gebracht...
jetzt hab ich aber noch eine frage:
wenn ich in /etc/default/knxd   folgendes einfüge -D -T --eibaddr=0.0.1 -S -i --daemon=/var/log/eibd.log --no-tunnel-client-queuing ipt:192.168.1.112 dann gibt es keinen autostart und knxd lässt sich nicht starten
wenn ich aber die -u argumente aus /etc/default/knxd raushaue und nur meine obigen reingebe dann startet er brav.
allerdings macht ein knxtool groupswrite zwar eine erfolgsmeldung aber schalten tut er nicht...
in fhem definiere ich den tul mit knx:localhost 1.1.249 und er gibt auch brav initialized aber der event monitor zeigt mir nix...
irgendwas mach ich anscheinend falsch - aber was?
danke anton

p.s. mit welchen befehlen kann ich eigentlich eibd deinstallieren? - knxd lässt sich nicht parallel installieren bzw schreit das eibd vorhanden ist und kompiliert nicht weiter... will den pi2 nicht komplett neu aufsetzen wenn ich auf meinem 2. pi knxd mit fhem zum laufen gebracht hab :-)
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

smurfix

Zitatp.s. mit welchen befehlen kann ich eigentlich eibd deinstallieren?
rm -r /usr/local/bin/{eibd,knxtool,group*} /usr/local/lib/lib{eib,pthsem}*.so* /usr/local/include/pth*
Möglicherweise liegt da noch mehr rum, aber das dürften so die Knackpunkte sein.

... und genau das ist der Grund, wieso ich auf InstallationsBastelanleitungen wie die vom eibd so allergisch reagiere.

smurfix

Zitatwenn ich aber die -u argumente aus /etc/default/knxd raushaue und nur meine obigen reingebe dann startet er brav.
allerdings macht ein knxtool groupswrite zwar eine erfolgsmeldung aber schalten tut er nicht...
Du bist dir 200% sicher, dass da nicht noch ein kleiner böser eibd im Hintergrund herumwerkelt, und dass du Wheezy ohne systemd verwendest?

Übrigens empfehle ich, den Unixsocket nicht in /tmp/eibd, sondern in /run/knx zu parken. Dann wird er nicht ins Nirvana geschickt, wenn ein kleines fieses Skript daherkommt und meint, Datein in /tmp kann man löschen, wenn sie seit >1Monat keiner angefasst hat ...

antonwinden

bin mir sicher denn ich hab den 2.pi komplett neu aufgesetzt :-) - und wheezy ist es auch.
und ich war wohl etwas zu voreilig denn inzwischen geht groupswrite sogar (juhu) hab allerdings ein route add gemacht dann hat es geklappt.
jetzt muß ich nur noch fhem dazu kriegen auch etwas mitzukriegen :-( da spiesst es sich noch
hab define tul TUL knx:localhost 0.0.249 gemacht
er meint auch initialized aber nix erscheint im event monitor und wenn ich das device das ich mit groupswrite schalte definiere dann tut sich nix...
gruß anton
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

Marthinx

Ich komme leider auch nicht weiter:

Ich habe folgende Fehlermeldungen:
pi@raspberrypi ~ $ /etc/init.d/knxd status
[FAIL] knxd is not running ... failed!
pi@raspberrypi ~ $ /etc/init.d/knxd start
E00000016: OpenLocalSocket /tmp/eib: bind: Address already in use
initialisation of the knxd unix protocol failed: Address already in use

Was kann ich machen?

Danke für die Hilfe,


smurfix

Das klingt sehr danach, als ob entweder ein eibd oder noch ein knxd auf der Kiste läuft.

Ansonsten: /etc/default/knxd anhängen.

Marthinx

Ich habe den Pi extra neu aufgesetzt und nach Anleitung installiert.

also folgende Anpassungen habe ich gemacht:
DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ipt:192.168.188.52"
START_KNXD=YES

die Datei:
/etc/default/knxd

habe ich angehangen.

smurfix

Mach bitte "ps ax|grep knx". Da läuft garantiert schon/noch/??? einer.
Anders kann es (zumindest ohne systemd) nicht sein, dass beide Sockets "belegt" sind.

antonwinden

um die verwirrung noch etwas weiter zu treiben...
mit DAEMON_ARGS="-u /tmp/eib -D -T -S -i --no-tunnel-client-queuing ipt:192.168.1.112"
geht es nicht und ps ax|grep knx ergibt:
2386 pts/0    S+     0:00 grep --color=auto knx
mit DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -D -T -S -i --no-tunnel-client-queuing ipt:192.168.1.112"
das gleiche und ps ax|grep knx ergibt
2385 pts/0    S+     0:00 grep --color=auto knx
pi@raspberrypi ~ $ /etc/init.d/knxd start
E00000016: OpenLocalSocket /tmp/eib: bind: Address already in use
initialisation of the knxd unix protocol failed: Address already in use
mit DAEMON_ARGS="-D -T --eibaddr=0.0.1 -S -i --daemon=/var/log/eibd.log --no-tunnel-client-queuing ipt:192.168.1.112"
geht es und s ax|grep knx ergibt
2238 ?        Ss     0:00 /usr/bin/knxd -d -p /var/run/knxd.pid -D -T -S -i --no-tunnel-client-queuing ipt:192.168.1.112
2387 pts/0    S+     0:00 grep --color=auto knx
und ich kann geräte schalten.
allerdings meldet fhem
2015.09.30 16:40:12 3: TUL opening tul device knx:192.168.1.112
2015.09.30 16:40:12 1: knx:192.168.1.112 protocol is not supported
2015.09.30 16:40:12 3: TUL device opened
und es gibt keine events im monitor
egal ob ich define tul TUL knx:192.168.1.112 0.0.249
oder knxd, eib (die stehen alle auf initialized) oder eibd(disconnected) verwende
fhem sieht und hört nichts auf dem knx bus
wenn ich per knxtool groupswrite ip: 0/1/64 1 eine lampe einschalte seh ich nichts in fhem

keine ahnung was ich hier falsch mache - in eibd funktioniert das alles...
gruß anton
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

smurfix

Sehr seltsam, was da passiert. Mach mal bitte

# bash -x  /etc/init.d/knxd start

und maile mir das Resultat. (matthias@urlichs.de -- das muss nicht hier das Thema füllen.) Oder lass mich irgendwie auf deine Kiste, dann trace ich das.

Zitat2015.09.30 16:40:12 3: TUL opening tul device knx:192.168.1.112
2015.09.30 16:40:12 1: knx:192.168.1.112 protocol is not supported
Äh, was bitte? Die 192.168.1.112 ist doch dein KNX/IP-Gateway?? Mit dem kann FHEM nicht reden. Wie zum Kuckuck kann das so mit dem eibd funktioniert haben?

antonwinden

mein problem hab ich jetzt mal gelöst:
meine einstellungen die funktionieren (vielleicht hilft es ja wem....):
folgendes in /etc/init.d/knx eingetragen
DAEMON_ARGS="-D -T --eibaddr=0.0.1 --daemon=/var/log/eibd.log -S -i --no-tunnel-client-queuing ipt:192.168.1.112"
Tul in fhem so definiert:
define tul TUL eibd:localhost 0.0.249
das funktioniert so und fhem sieht alles..
gruß anton
KNX, Raspberry, Denon 3313, Philips TV, Xtrend9X00 und viel Optimismus...

reTOric

Hallo Alle zusammen,

ich muss diesen etwas älteren Beitrag mal wieder hochholen.
Ich arbeite schon länger mit FHEM. Nun hab ich mich an KNX versucht und bekomm leider KNXD nicht zum laufen.
Ich habe einen Raspi mit einem frischen Jessie aufgesetzt und dann FHEM installiert. Dann hab ich nach Anleitung aus dem Wiki und den Hilfestellungen aus diesem Beitrag versucht KNXD zu installieren. Pakete hab ich entsprechend der Fehlermeldung nachinstalliert. Bekomme aber dann hier dieses Fehlermeldung. Leider kann ich damit nichts anfangen. Ich hoffe mir kann jemand helfen.

● knxd.service - KNX Daemon
   Loaded: loaded (/lib/systemd/system/knxd.service; enabled)
   Active: activating (auto-restart) (Result: exit-code) since Mo 2015-11-16 18:37:44 CET; 3s ago
  Process: 5461 ExecStart=/usr/bin/knxd $KNXD_OPTS (code=exited, status=1/FAILURE)
Main PID: 5461 (code=exited, status=1/FAILURE)

Vielen Dank schon mal.
Henrik

smurfix


reTOric

Moin,

viele # Zeilen

und diese:
KNXD_OPTS="-u /tmp/eib -b ip:"

Hilft dir das?
Grüße
Henrik

reTOric

Ach was ich vergessen habe: Das System befindet sich in einem anderen IP Bereich als der von dem ich darauf zugreife.
Das System ist in meiner alten Heimat und ich greife per Fritzbox VPN auf das System zu. Kann das eine Fehlerursache sein?
Viele Grüße
Henrik

smurfix

Woher soll der knxd wissen, dass du ein VPN hast, wenn er nicht mal sauber startet?
(Ich nehme an, es existiert eine Defaultroute.)

Steht was im syslog (grep -i knxd /var/log/*) und/oder Journal (journalctl -n100 _SYSTEMD_UNIT=knxd.service)?

reTOric

syslog:
fortlaufend diese Meldung:
/var/log/syslog.1:Nov 17 06:25:03 KNX-Server-Sowa systemd[1]: knxd.service holdoff time over, scheduling restart.
/var/log/syslog.1:Nov 17 06:25:03 KNX-Server-Sowa knxd[14603]: not a valid url
/var/log/syslog.1:Nov 17 06:25:03 KNX-Server-Sowa systemd[1]: knxd.service: main process exited, code=exited, status=1/FAILURE
/var/log/syslog.1:Nov 17 06:25:03 KNX-Server-Sowa systemd[1]: Unit knxd.service entered failed state.

dazwischen kurz diese Meldung

grep: /var/log/fsck: Ist ein Verzeichnis
grep: /var/log/lightdm: Keine Berechtigung
grep: /var/log/ntpstats: Ist ein Verzeichnis
grep: /var/log/samba: Ist ein Verzeichnis

und dieses?

/var/log/auth.log:Nov 16 12:22:22 KNX-Server-Sowa groupadd[21779]: group added to /etc/group: name=knxd, GID=115
/var/log/auth.log:Nov 16 12:22:23 KNX-Server-Sowa groupadd[21779]: group added to /etc/gshadow: name=knxd
/var/log/auth.log:Nov 16 12:22:23 KNX-Server-Sowa groupadd[21779]: new group: name=knxd, GID=115
/var/log/auth.log:Nov 16 12:22:23 KNX-Server-Sowa useradd[21786]: new user: name=knxd, UID=110, GID=115, home=/var/lib/knxd, shell=/bin/false
/var/log/auth.log:Nov 16 12:22:23 KNX-Server-Sowa chage[21793]: changed password expiry for knxd
/var/log/auth.log:Nov 16 12:25:27 KNX-Server-Sowa sudo:       pi : TTY=pts/0 ; PWD=/home/pi ; USER=root ; COMMAND=/usr/bin/dpkg -i knxd_0.10.9-3_armhf.deb knxd-tools_0.10.9-3_armhf.deb
/var/log/auth.log:Nov 16 12:26:16 KNX-Server-Sowa sudo:       pi : TTY=pts/0 ; PWD=/home/pi ; USER=root ; COMMAND=/usr/bin/nano /etc/default/knxd
/var/log/auth.log:Nov 16 12:30:43 KNX-Server-Sowa sudo:       pi : TTY=pts/0 ; PWD=/home/pi ; USER=root ; COMMAND=/usr/bin/nano /etc/default/knxd
/var/log/auth.log:Nov 16 18:39:29 KNX-Server-Sowa sudo:       pi : TTY=pts/0 ; PWD=/home/pi ; USER=root ; COMMAND=/usr/bin/nano /etc/init.d/knxd
grep: /var/log/btmp: Keine Berechtigung
/var/log/daemon.log:Nov 16 12:22:27 KNX-Server-Sowa knxd[21842]: not a valid url: No such file or directory
/var/log/daemon.log:Nov 16 12:22:27 KNX-Server-Sowa systemd[1]: knxd.service: main process exited, code=exited, status=1/FAILURE
/var/log/daemon.log:Nov 16 12:22:27 KNX-Server-Sowa systemd[1]: Unit knxd.service entered failed state.
/var/log/daemon.log:Nov 16 12:22:38 KNX-Server-Sowa systemd[1]: knxd.service holdoff time over, scheduling restart.
/var/log/daemon.log:Nov 16 12:22:39 KNX-Server-Sowa knxd[21890]: not a valid url

Bei journal kommt:
No journal files were found

Grüße


JoeALLb

Versuch mal diese Datei wegzuverschieben...

/etc/systemd/system/sockets.target.wants/knxd.socket
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

smurfix

Nein, daran liegt's nicht (koplett falsche Fehlermeldung).

Das Problem ist das "-u /tmp/eib", die Leerstelle nach dem 'u' muss weg. Ich schaue mir gleich mal genauer an, was das soll.

grappa24

#40
ich hab den knxd nach Anleitung im wiki installiert und suche jetzt noch nach den korrekten Parametern für die Anbindung meines TPUART  ....
DAEMON_ARGS="-u /tmp/eib -u /var/run/knx ? ? ? ? tpuarts:dev/ttyACM0"

habe jetzt folgendes ausprobiert:
-D -T -R -S -i -u --eibaddr=1.1.249 tpuarts:/dev/ttyACM0

bekomme beim Aufruf von "/etc/init.d/knxd status" den Fehler "

/etc/init.d/knxd: 1: /etc/default/knxd: Defaults: not found
[FAIL] knxd is not running ... failed!
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

reTOric

Ich hab mal proaktiv einfach das Leerzeichen nach dem u entfernt.
Leider keinen positive Veränderung. Nur die Zahlen haben sich etwas verändert.

● knxd.service - KNX Daemon
   Loaded: loaded (/lib/systemd/system/knxd.service; enabled)
   Active: activating (auto-restart) (Result: exit-code) since Di 2015-11-17 19:36:26 CET; 206ms ago
  Process: 775 ExecStart=/usr/bin/knxd $KNXD_OPTS (code=exited, status=1/FAILURE)
Main PID: 775 (code=exited, status=1/FAILURE)


smurfix

DAEMON_ARGS="-u /tmp/eib -u /var/run/knx ? ? ? ? tpuarts:dev/ttyACM0"

Statt der Fragezeichen empfehle ich -DTRS.  8)
Nach den -u bitte (vorerst) die Leerstellen entfernen. Nach dem Doppelpunkt braucht es einen Schrägstrich.

smurfix

ZitatIch hab mal proaktiv einfach das Leerzeichen nach dem u entfernt.
Leider keinen positive Veränderung. Nur die Zahlen haben sich etwas verändert.
Hrmpf.

Mach mal
$ sudo systemctl stop knxd.socket
$ sudo systemctl stop knxd.service
$ . /etc/knxd.conf
$ set -x
$ sudo knxd $KNXD_OPTS

und sag mir was dabei rauskommt.

reTOric

Asche auf mein Haupt. Hatte nach entfernen den des Leerzeichens nach dem u das speichern vergessen. Meine Tochter kam und wollte von Papa ins Bett gebracht werden. Ich hoffe smurfix sieht es mir nach. Hab nun alles nich mal nachgesehen und die Änderung auch gespeichert und ...
es läuft.

● knxd.service - KNX Daemon
   Loaded: loaded (/lib/systemd/system/knxd.service; enabled)
   Active: active (running) since Di 2015-11-17 20:15:00 CET; 54s ago
Main PID: 477 (knxd)
   CGroup: /system.slice/knxd.service
           └─477 /usr/bin/knxd -u/tmp/eib -b ip:

War der Hinweis mit dem Schrägstrich für mich?
Nun muss ich doch nur noch das IP Interface einrichten. Muss ich dafür in KNXD auch noch etwas einstellen? Werde da leider nicht so richtig aus der Anleitung https://github.com/knxd/knxd schlau.

Erstmal vielen vielen Dank für die schnelle Hilfe.
Henrik

grappa24

Zitat von: smurfix am 17 November 2015, 19:53:43
DAEMON_ARGS="-u /tmp/eib -u /var/run/knx ? ? ? ? tpuarts:dev/ttyACM0"

Statt der Fragezeichen empfehle ich -DTRS.  8)
Nach den -u bitte (vorerst) die Leerstellen entfernen. Nach dem Doppelpunkt braucht es einen Schrägstrich.
Danke, jetzt kommt folgende Meldung
/etc/init.d/knxd: 1: /etc/default/knxd: Defaults: not found
[ ok ] knxd is running.
ist das jetzt gut oder schlecht  ::)

dann hab ich halt noch das Problem mit der fhem.cfg, wie wird der TUL definiert, so gehts nicht:
define EIB TUL eibd:localhost 1.1.249
FHEM 6.1, 2 x RasPi 3B+, Debian Buster; KNX, FS20, HM, HUE, Tradfri, Shellies, KLF200
Rollo-/Lichtsteuerung/-szenarien, T-Sensoren, Fensterkontakte, Heizungssteuerung, HEOS, Sprachsteuerung mit Alexa-FHEM, Netatmo, Nuki, ...

smurfix

@reTORic: Nein, der Doppelpunkt war für @grappa24. Bez. Netzverbindung willst du wahrscheinlich "ipt:ip-vom-Gateway". Anpingen kannst du ihn hoffentlich.

@grappa24: Du hast in der Konfigdatei einer Kommentarzeile das Kommentarzeichen geklaut. Gib es ihr wieder.

smurfix

So, die aktuelle Version hat das Leerstellenproblem nicht mehr.

reTOric

N'abend,

klar anpingen kann ich das IP-Gateway aber wo trag ich die IP genau ein?
in die /etc/knxd.conf?
Muss die Zeile dann

KNXD_OPTS="-u/tmp/eib -b ipt:192.168.XXX.XXX"

oder

KNXD_OPTS="-u/tmp/eib -b ip:192.168.XXX.XXX"

heißen?

Sorry das ich mich so dämlich anstelle, hangen mich aber an Anleitungen lang aber dafür hab ich noch nichts gefunden? Die anderen Dateien die im Thread vorherauftauchen sind bei mir irgendwie nicht da. /etc/init.d/knx z.B.

Vielen Dank schon mal für die Hinweise.
Henrik

reTOric

ALLES Läuft.

Vielen Dank an Smurfix.
Hab die Zeile geändert.

KNXD_OPTS="-u/tmp/eib -b ipt:192.168.XXX.XXX"

Damit nun zugriff auf mein knx System.

Vielen Dank

smurfix

Bitte sehr.

Nun sag mir noch, wo du die Doku bez. des Unterschieds zwischen ip: und ipt: gerne gefunden hättest, damit du nicht hättest fragen brauchen.  ;D


woodySI

Hallo,
ich versuche bis jetzt ohne nennenswerte Erfolge nach der Anleitung von "Martinx" (hier http://www.fhemwiki.de/wiki/Knxd) den knxd auf einem PI2 mit Wheezy zu installieren.

Nach der Installation läuft zwar der knxd (kontrolliert in putty) und auch FHEM sagt "initialisiert", aber ansonsten passiert nichts - fhem bekommt nichst rein und nichts raus.

Nach einem reboot des PI2 startet knxd nicht mehr. Bekomme den gleichen Fehler wie unter Beitrag 20 (http://forum.fhem.de/index.php/topic,41131.msg335876.html#msg335876)

/etc/init.d/knxd start
E00000016: OpenLocalSocket /tmp/eib: bind: Address already in use
initialisation of the knxd unix protocol failed: Address already in use
pi@pi ~ $ /etc/init.d/knxd status
[FAIL] knxd is not running ... failed!

Mit dem Löschen der Leerzeichen nach den zwei "-u"s habe ich mich schon versucht. Das hat mich aber leider nicht weiter gebracht. Ebenso wenig wie "ip" oder "ipt" für mein IP Gateway.

Ich bin blutiger Laie was linux anbelangt - sollte ich hier grundlegend was falsch gemacht haben/etwas überlesen haben, bitte ich um Nachsicht  :-[
Schon mal vielen Dank im Voraus fürs lesen.
Ich hoffe Ihr könnt mir weiterhelfen.
Schönen Abend noch.
Marcus

smurfix

ZitatE00000016: OpenLocalSocket /tmp/eib: bind: Address already in use

Wie kommst du darauf, dass der knxd nicht gestartet ist, obwohl der Socket offen ist?

Bitte die üblichen Verdächtigen angeben, als da wären
* ps ax|grep knx
* ps ax|grep eib
* systemctl status knxd.service
* systemctl status knxd.socket
* cat /etc/knxd.conf
* cat /etc/default/knxd # nur, falls es bei dir kein "systemctl" gibt

Nochmal für Alle: Für den knxd gilt: "ip:" ist Multicast-Client. Danach willst du allerhöchstens eine Multicastadresse angeben.
"ipt:" ist für die Verbindung zu einem remote-Gateway da. Der Hilfstext ist da ein bisschen blöd, das ändere ich gleich.
(Im "knxtool" bedeutet "ip:" leider etwas ganz Anderes.)

Wenn du im gleichen Netz bist wie der Gateway, und wenn dein Gateway Multicast kann, dann nimm "ip:". Das ist viel stabiler als "ipt:".

woodySI

@ smurfix - Du bist aber fix - Danke

Also, ich war auch nicht untätig und habe herausgefunden, dass:
Folgendes muss ich nach (neu-)start des RPI2 machen, damit ich über FHEM schalten kann und FHEM auf BUS-Telegramme reagiert:
1) sudo service knxd stop (FHEM wird mit beendet//ohne sudo geht es nicht!)
2) sudo service knxd restart
3) service fhem start
.. erst jetzt geht es??

Nun die von die gewünschten Antworten:

pi@raspberrypi ~ $ ps ax|grep knx
2615 ?        Ss     0:00 /usr/bin/knxd -d -p /var/run/knxd.pid -u /tmp/eib -u /var/run/knx -i -b ipt:192.168.180.3
2646 pts/0    S+     0:00 grep --color=auto knx

pi@raspberrypi ~ $ ps ax|grep eib
2615 ?        Ss     0:00 /usr/bin/knxd -d -p /var/run/knxd.pid -u /tmp/eib -u /var/run/knx -i -b ipt:192.168.180.3
2648 pts/0    S+     0:00 grep --color=auto eib

pi@raspberrypi ~ $ systemctl status knxd.service
-bash: systemctl: command not found

pi@raspberrypi ~ $ systemctl status knxd.socket
-bash: systemctl: command not found

pi@raspberrypi ~ $ cat /etc/knxd.conf
cat: /etc/knxd.conf: No such file or directory

pi@raspberrypi ~ $ cat /etc/default/knxd
# Defaults for knxd initscript
# sourced by /etc/init.d/knxd
# installed at /etc/default/knxd by the maintainer scripts

########################################################################
# This file is ignored when using systemd: edit /etc/knxd.conf instead #
########################################################################

# start knxd when /etc/init.d/knxd start is run
# by default knxd does NOT start. set to YES to enable
START_KNXD=YES

# Additional options that are passed to the Daemon.
#
# sane default: route between local KNX clients and multicast
DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ipt:192.168.180.3"
# -e 1.1.241 / 192.168.180.3//34

# Run `knxd --help` to get a complete list of available options and drivers.

# If you have KNX hardware on a serial port or USB, add the appropriate
# "-b TYPE:..." option. In this case, you probably want to set up a multicast
# server, not a client (i.e. use "-D -T -R -S", not "-b ip:").
# DO NOT use both.
#
# If your KNX hardware is a KNX/IP gateway that doesn't do multicast,
# use "-b ipt:192.168.1.2" (or its DNS name) to talk to it.
#
# KNX MUST NOT have more than one path between any two devices. Thus,
# you need to make sure that the KNX/IP gateway does not route multicast
# before you use both "-S" and "-b ipt:".

# The default bus address of knxd is 0.0.1. If that's in use in your KNX
# network (or if you run more than one knxd on your network), set a
# different address (-e 15.0.99).

Mit "ip:" geht es nicht - nur mit "ipt:"!

smurfix

ZitatMit "ip:" geht es nicht - nur mit "ipt:"!
Mit "ip:Adresse.des.gate.ways" kann es auch nicht gehen. Mit einem nackten "ip:" schon, wenn dein Gateway Multicasts versteht.

Wieso das nach dem Start nicht gleich geht, wäre zu erforschen.

woodySI

@ smurfix: Danke.

So, nun weiß ich auch weshalb KNXD erst nach manuellem Restart von FHEM und dem KNXD-Service funktioniert (wie oben beschrieben). Die Startreihenfolge der Dienste wird willkürlich vom System erstellt. Ich musste die Services manuell anpassen (erst KNXD dann FHEM starten lassen). Jetzt geht es nach einem Reboot/Neustart ohne manuellen Eingriff.

smurfix

Zitat(erst KNXD dann FHEM starten lassen)

Das ist nicht willkürlich, sondern alphabetisch.  :P

Unter Anderem aus diesem Grund mag ich die Socket-Aktivierung via systemd -- da spielt die Startreihenfolge keine Rolle mehr.

haeberle

@woodySI

Könnest du hier noch posten wie du das gemacht hast? Bei mir started der knxd nicht automatisch,m manuel tuts wie gewünscht.

Danke