Hauptmenü

Kommunikation mit knxd

Begonnen von stst, 18 Juli 2023, 20:55:39

Vorheriges Thema - Nächstes Thema

stst

Hallo,

ich bin gerade dabei meine Hausautomation auf FHEM umzustellen. Jetzt hab ich mich durch die Installation und die ersten Schritte durchgekämpft, die ersten devices angelegt, aber irgendwie scheint FHEM noch nicht mit knxd zu sprechen.

Hier mein System.
knxd läuft auf einem raspi4 mit folgenden Parametern:
KNXD_OPTS="-e 0.0.1 -E 0.0.2:8 -u /tmp/eib -D -T -R -S -b ipt:192.168.187.18"

Das funktioniert auch so weit, von der cmdline lassen sich geräte mittels knxtool ansteuern.

FHEM hab ich am selben raspi4 allerdings im Docker Container laufen.

In FHEM hab ich ein KNXIO device mit "M 224.0.23.12:3671 0.0.2" angelegt, das wird auch als "connected" angezeigt.

Dazu gibt es dann ein device "define lamp1 KNX 0/1/1:dpt1". Allerdings rührt sich da nichts am Bus, wenn ich das bediene.

Hat jemand einen hint für mich, wo das Problem liegen könnte?

Danke, Stefan



erwin

ich kann leider nichts zum Thema Container sagen... wie/ob Multicast im container funktioniert!
Evtl. kann da ein Docker-Experte helfen!
Die definitionen schauen ok aus!
Um zu testen, ob es am Multicast liegt, mit Mode T versuchen?:
defmod <KNXIO_dev> KNXIO T 192.168.x.y:6720 0.0.2l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

stst

Hallo Erwin,

mit Mode T funktionierts nicht, da geht das Device auf disconnected.
Gibts eine Möglichkeit, das zu debuggen?

danke,
Stefan

erwin

#3
ZitatGibts eine Möglichkeit, das zu debuggen?
Naja schon, allerdings gibts bei diesem Fehlerbild viele mögliche Ursachen:
Log file, verbose auf 5 setzen, -> device disable/enable ...
Weiters: testen ob knxd grundsätzlich aus dem docker FHEM erreichbar ist:
"ping -c5 192.168.x.y" auf der FHEM-cmdline eintippen, INKLUSIVE der Hochkomma! -> resultate im Log.
... auch ein list <KNXIO-dev> könnte helfen.

ps -efw | grep knxd
sudo netstat -anp | grep knxd
auf der host-konsole eintippen - Ergebnisse posten...
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

stst

hallo Erwin,

danke. Das hat mir schon weiter geeholfen. Die Firewall war Schuld. ein ufw allow 6720 hat geholfen.
jetzt sagt der netstat:
tcp6       0      0 192.168.187.101:6720    172.23.0.2:47862        ESTABLISHED 2129734/knxd
eigenartigerweise tcp6, aber v4 Adressen ?!? Ist das ok?

Es funktioniert jedenfalls und die devices lassen sich auch bedienen.

debug hab ich schon lange auf 5 gestellt, aber erst jetzt das log-file gefunden. Das in der Weboberfläche ist immer leer, da muss ich auf der Console nachsehen. Muss ich da noch was einstellen, damit das auch im WebFHEM richtig angezeigt wird?

lg, Stefan


erwin

Alles gut, Hauptsache es funktioniert! Das mit dem netstat ist komisch, beide Addr. IP4 aber tcp6?
Zitat von: stst am 19 Juli 2023, 17:36:43.... aber erst jetzt das log-file gefunden. Das in der Weboberfläche ist immer leer, da muss ich auf der Console nachsehen. ....
Auch das könnte mit den Besonderheiten von Docker zusammenhängen, zum Vergleich ein list meines Logfile-device:
Internals:
  .FhemMetaInternals 1
  DEF        ./log/fhem-%Y-W%W.log Logfile
  FD        14
  FUUID      5c439eb4-f33f-0e08-d975-cec60822ace8b50c
  FVERSION  92_FileLog.pm:0.269590/2023-01-04
  NAME      Logfile
  NOTIFYDEV  Logfile
  NR        40
  NTFY_ORDER 50-Logfile
  REGEXP    Logfile
  STATE      active
  TYPE      FileLog
  currentlogfile ./log/fhem-2023-W29.log
  logfile    ./log/fhem-%Y-W%W.log
  READINGS:
    2023-07-17 00:00:01  linesInTheFile  0
Attributes:
  room      Global
...mit wöchentlichem swap des Logfiles.
Unter currentlogfile siehst du, wohin der Log im Filesystem geschrieben wird.
Und das device muss m.W. Logfile heissen. Sonst geht der Link aus dem FHEMWEB nicht!
...und im device global gibts die Attribute logdir, logfile - das sollte zur Filelog def matchen!
Aber in dem Bereich bin ich nicht der Experte.  ;D
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...