Probleme mit KNXD und IP Router

Begonnen von HenrikAachen, 01 November 2016, 16:22:10

Vorheriges Thema - Nächstes Thema

Black7king

#15
Hi,
Habe keinen EibPort aber einen Berker IP Control.  ;)

Hast du die EibPort den auf KNXnet/IP Tunneling konfiguriert?
http://wiki.bab-tec.de/wiki/Deutsch:eibPort_zum_Programmieren_nutzen

wenn das nicht hilft kann ich heute Abend auch gerne mal meine Konfiguration nach schauen.

mfg

PS: denke aber des liegt wirklich eher an den Einstellung deines KNXD

HenrikAachen

Bitte ja.
Es lief ja einmal seltsamerweise. Ich habe am Eibport auch nichts verändert.
Nur den PC zugeklappt und danach ging es nicht mehr.

Kann also wirklich mein KNXD noch sein. Aber dort sehe ich ja die BUS Meldungen.
Sogar mein TUL in Fhem ist connected und würde denke ich gehen (wenn KNXD gehen würde).
Danke.

Andi291

Abend!

Wenn ich mir Deine PS-Ergebnisse so anschaue, tippe ich auf nicht passende Init-Konfigurationen.

Ich zitier mal aus knxd Github:

ZitatDaemon Configuration

Daemon configuration differs depending on whether you use systemd. If "systemctl status" emits something reasonable, you are.

If you use systemd, the configuration file is  /etc/knxd.conf . Socket activation is used for the default IP and Unix sockets (port 6720 and /run/knx, respectively).

Without systemd, on Debian, edit  /etc/default/knxd .

The default Unix socket is  /run/knx . Old eibd clients may still use  /tmp/eib  to talk to knxd. You need to either change their configuration, or add "-u /tmp/eib" to knxd's options. (This was the default for "-u" before version 0.11.)

Anders ausgedrückt - wenn Du systemd nicht nutzt (oder Dir unsicher darüber bist), schreib mal Deine Defaultparameter in  /etc/default/knxd und schau, was passiert.

Grüße, Andi

HenrikAachen

Hi Andi,

leider habe ich heute morgen auch mit entsetzten festgestellt, dass ich die falsche Konfig editiert habe.
Daher ging mein KNXD Befehl direkt ja anscheinend auch einmal.

Ich habe nun folgendes seit heute morgen in Benutzung in /etc/default/knxd

DAEMON_ARGS="-d -p /var/run/knxd.pid -e 1.1.202 -c -DTS -i --no-tunnel-client-queuing -b ipt:192.168.178.27"
#KNXD_OPTS="-e 1.1.250 -b ipt:192.168.178.27"


Damit läuft mein TUL voll im fhem (war vorher auch so). Leider leider kann ich immernoch nichts schicken.

root@volumio:~# knxtool groupreadresponse ip:127.0.0.1 1/1/5
Send request
Ending groupreadresponse.

root@volumio:~# ps -ef |grep knxd
root     30664     1  0 19:17 ?        00:00:00 /usr/bin/knxd -d -p /var/run/knxd.pid -d -p /var/run/knxd.pid -e 1.1.202 -c -DTS -i --no-tunnel-client-queuing -b ipt:192.168.178.27

Noch eine Idee? Muss ich immer Daemon oder das knxd_opts nehmen?


EIB-Fan

Hallo HenrikAachen,

bin schon gespannt auf die Lösung des Rätsels ...  ???

Wird bei ps -ef |grep knxd wirklich 2x -d -p /var/run/knxd.pid -d -p /var/run/knxd.pid ausgegeben oder ist das ein Kopierfehler.

Probier doch mal -c -DTS -i --no-tunnel-client-queuing weg zu lassen.

Ob du systemd laufen hast, kannst du mit systemctl status überprüfen.

Gruß Jens

HenrikAachen

Hi,

das ist kein Kopierfehler, aber der Output meines eigenen PS -ef nach KNXD ;-)
Systemd habe ich nicht laufen, das weiß ich sicher.

Befehl geändert auf:
DAEMON_ARGS="-d -p /var/run/knxd.pid -e 1.1.202 -b ipt:192.168.178.27"

root@volumio:~# service knxd start
I only have one interface. Nothing to do. Giving up.
root@volumio:~#

Geht nicht :(

EIB-Fan

#21
Hallo,

hast du Jessie installiert?

Dann ist systemd besser.  8)

Habe noch als Info in der knxd.conf gefunden

# *** DO NOT use "-u" / "-u /run/knx" or "-i" / "-i 6720" here.
# Systemd already does that on behalf of knxd, via 'knx.socket'.



## DO NOT use the following options:
## -i           -- /lib/systemd/system/knxd.socket does this for us
## -u /run/knx  -- likewise
## -d           -- /lib/systemd/system/knxd.service expects knxd to run in the foreground


Lass mal aus deiner vorherigen Konfiguration das -i bzw. das -d weg.

Gruß Jens

EIB-Fan

Hallo nochmal,

habe hier einen Beitrag im Forum gefunden. Bei einem manuellen Start von knxd werden die config-Daten ignoriert.

https://forum.fhem.de/index.php/topic,54031.msg456677.html#msg456677

Gruß Jens

HenrikAachen

Hi,

Ja habe ich aber so gelesen:
Er nimmt die Parameter die ich ihm übergebe.
Konnte im PS ja auch die Parameter sehen, stimmten alle.

Der Vorschlag mit dem Weglassen mache ich morgen früh.
Denke aber nicht das es hilft. Habe gefühlt 100 Parameter durch.

Andi291

Abend!

Ich glaube nicht an eine Parametersache.
Das ist was mit der Startreihenfolge.

Deaktivier mal alles. Dann händisch mit einem minimalen (!) Parameterset starten und mit groupswrite testen. Wenn das läuft, sauber in die cfg-Datei eintragen und den raspi neu booten. Dann erneut testen.

ERST wenn das läuft, mit FHEM weiter machen.

Grüße, Andi

HenrikAachen

Hi,

Ich kriege ihn ja nur mit diesen Parametern zum laufen.
Dann kann ich alles machen nur nicht schreiben.
Mit den anderen Konfigs (minimaler) kann ich auch nur lesen, nichts schreiben.

Die Info mit Fhem; damit wollte ich zeigen, dass alles geht außer senden.

Andi291

Dann gehen mir langsam die Ideen aus. hast Du unter /run/knx für den erforderlichen User schreibrechte? Hast per Kommandozeile mal mit sudo gestartet?

HenrikAachen

Ja das habe ich auch probiert.

Also ich hänge an dem Glauben, dass es am Eibport liegt. Der hat als BCU die 1.1.0
Die Tunneladressen sind 1.1.200 bis 204

Meine ETS hat z.B. die 200 gerade in Benutzung.

Auf dem KNXD habe ich die 1.1.202 genommen.
Ich kann ja alles mitlesen. KNXD gebe ich derzeit nicht mal mehr die Schuld.

Was meinst du, habe ich hier etwas falsch eingestellt?

Andi291

Dein Problem hat mir keine Ruhe gelassen - also hab ich auf einem System ohne systemd mal rumgespielt...

Mit folgendem "Hello World" Beispiel komme ich weiter:

sudo knxd -t 1023 -u -i -b ipt:192.168.27.10

Erklärungsversuch:
Beim Start über systemd übernimmt der knxd den Start von TCP- und UDP-Sockets automatisch. Dies schein in der nicht-systemd-Variante nicht zu passieren. Deshalb müssen sowohl udp als auch tcp-socket manuell gestartet werden.


HenrikAachen

#29
Ok habe ich auch mal getestet ;-)

Ich kann jetzt sehen, dass das KNXD meine Anfrage verschickt. Aber das Licht schaltet nicht.
D.h. mein Problem ist (wie befürchtet) beim IP Router (Eibport)?
Er sendet jetzt auch mit der 0.0.0  (auch wenn ich mit -e ihm eine Tunnel Adresse gebe)?

In meiner ETS sehe ich die Kommunikation nicht. Also muss es irgendwie nicht beim Eibport ankommen oder?


Layer 7(013F293C,58259254) Send(002): 00 81
Layer 4(013F2DC8,58259254) Send Group T_DATA_XXX_REQ A_GroupValue_Write (small)                                                                              01
Layer 3(0138EC60,58259254) Enqueue L_Data low from 0.0.0 to 0/2/0 hops: 07 T_DAT                                                                             A_XXX_REQ A_GroupValue_Write (small) 01
Layer 3(0138EC60,58259254) RecvData L_Data low from 0.0.0 to 0/2/0 hops: 06 T_DA                                                                             TA_XXX_REQ A_GroupValue_Write (small) 01
Layer 2(013BFC08,58259254) Send L_Data low from 0.0.1 to 0/2/0 hops: 06 T_DATA_X                                                                             XX_REQ A_GroupValue_Write (small) 01
Layer 1(013BFC08,58259254) SendTunnel(015): 04 01 00 00 11 00 BC E0 00 01 02 00                                                                              01 00 81
Layer 1(013C00D8,58259254) Send(015): 04 01 00 00 11 00 BC E0 00 01 02 00 01 00                                                                              81
Layer 0(013C00D8,58259254) Send(021): 06 10 04 20 00 15 04 01 00 00 11 00 BC E0                                                                              00 01 02 00 01 00 81
Layer 7(013F293C,58259254) CloseGroup
Layer 4(013F2DC8,58259254) CloseGroup
Layer 3(0138EC60,58259254) deregisterLayer2 013F2DC8 = 1
Layer 8(013E1BB0,58259254) ClientConnection closed
Layer 1(013BFC08,58259255) SendTunnel(015): 04 01 00 00 11 00 BC E0 00 01 02 00                                                                              01 00 81