KNXD mit TUL auf Raspi 4 --> FHEM/PERL CPU 100%

Begonnen von maschnei, 14 Mai 2020, 23:34:45

Vorheriges Thema - Nächstes Thema

maschnei

Liebe Experten,

ich bitte um eure Hilfe.

Ich nutze einen Raspi 4 B 4GB mit aktuellstem Raspbian. Benutze darüber hinaus ein TUL , welcher wunderbar mit knxd zusammenarbeitet. Die knxtools funktionieren reibungslos. ETS kann wunderbar darauf zugreifen.

Eine Installation von FHEM läuft erst mal ohne die Einbindung des TUL problemlos und mit minimaler CPU-Auslastung.
initialUsbCheck ist ausgeschaltet.
Nach dem Einbinden von


define tul TUL tul:/dev/ttyACM0 1.0.1
setuuid tul 5ebd9721-f33f-affe-3fb1-f357d728a8e0eecf


und anschließendem Neustart des Service belegt FHEM/Perl 100% der CPU --> der Raspi ist dann kaum mehr zu gebrauchen.

Hier die FHEM Log-Datei


2020.05.14 23:01:37 1: Including fhem.cfg
2020.05.14 23:01:38 3: WEB: port 8083 opened
2020.05.14 23:01:38 2: eventTypes: loaded 3 events from ./log/eventTypes.txt
2020.05.14 23:01:38 3: TUL opening tul device tul:/dev/ttyACM0
2020.05.14 23:01:38 3: TUL setting tul baudrate to 19200
2020.05.14 23:01:38 3: TUL device opened
2020.05.14 23:01:38 1: Including ./log/fhem.save
2020.05.14 23:01:38 0: Featurelevel: 6
2020.05.14 23:01:38 0: Server started with 6 defined entities (fhem.pl:21926/2020-05-13 perl:5.028001 os:linux user:fhem pid:587)
2020.05.14 23:02:33 3: decode_tpuart: Control Byte 0x07 does not match expected mask 2x1001nnnn
2020.05.14 23:02:33 3: TUL tul refused message: 07030300030003
2020.05.14 23:02:41 3: decode_tpuart: Control Byte 0x07 does not match expected mask 2x1001nnnn
2020.05.14 23:02:41 3: TUL tul refused message: 07070707bcd10080
2020.05.14 23:02:43 2: autocreate: define KNX_0000006 KNX 0/0/6:MODEL_NOT_DEFINED
2020.05.14 23:02:43 2: autocreate: define FileLog_KNX_0000006 FileLog ./log/KNX_0000006-%Y.log KNX_0000006
2020.05.14 23:02:46 3: decode_tpuart: Control Byte 0x10 does not match expected mask 2x1001nnnn
2020.05.14 23:02:46 3: TUL tul refused message: 10c981cc8b10c9
2020.05.14 23:03:01 3: decode_tpuart: Control Byte 0x00 does not match expected mask 2x1001nnnn
2020.05.14 23:03:01 3: TUL tul refused message: 0081cc8bbcc900060081cc8b00030300
2020.05.14 23:03:38 3: decode_tpuart: Control Byte 0x03 does not match expected mask 2x1001nnnn
2020.05.14 23:03:38 3: TUL tul refused message: 03030003000303030003
2020.05.14 23:04:52 3: decode_tpuart: Control Byte 0x07 does not match expected mask 2x1001nnnn
2020.05.14 23:04:52 3: TUL tul refused message: 070707bc10c80006d10080cc8b0007


Diese Fehler entstehen sowohl mit der Standard-Version von knxd aus den Packetquellen von debian als auch mit der selbst kompilierten Version von knxd aus Github.

Da knxd als auch ETS wunderbar funktionieren, vermute ich den Fehler / das Problem bei FHEM.

Kann mir jemand weiterhelfen?

Vielen Dank und viele Grüße
Marco

baerm

Hi,
Hast Du eine USB KNX Schnittstelle?

Dies kann ich mit meiner Installation nicht direkt vergleichen. Ich verwende eine IP Schnittstelle.

Bei mir im Log sieht es so aus:
2020.05.15 09:16:34 3: TUL opening KNX device eibd:localhost
2020.05.15 09:16:34 3: TUL device opened

Eventuell ist Dein Interface nicht korrekt konfiguriert. Wie sind die knxd parameter gesetzt?
lg,
Matthias

maschnei

#2
Hallo Matthias,

ich benutze einen TUL (USB-KNX-Schnittstelle). Dieser wird wie üblich unter /dev/ttyACM0  bereitgestellt.

Wie gesagt, der TUL, das knxd, die knxdtools und auch der Zugriff darauf per ETS funktionieren einwandfrei. Nur FHEM bringt die Probleme.

Hier die KNXD-Parameter:


KNXD_OPTS="-e 1.0.1 -E 1.0.200:10 -u /tmp/eib -D -T -R -S -b tpuarts:/dev/knx"


wobei /dev/knx ein Symlink auf /dev/ttyACM0 ist, ganz getreu der Anleitung auf https://www.meintechblog.de/2018/07/tul-stick-als-knx-ip-gateway-auf-dem-raspberry-pi-einrichten-mit-knxd/

Viele Grüße
Marco

baerm

Hi Marco,
sorry, bin ich überfragt. Wie gesagt ich verwende die IP Schnittstelle.
Ich sehe nur, dass auf der verlinkten Seite jemand folgende Parameter verwendet:
define KNX TUL tul:/dev/ttyACM0@57600 1.1.255
Wie sollte die Boudrate bei dem Gerät gesetzt werden? 19200 kommt mir wenig vor. Evtl mit 57600 probieren.
lg
Matthias

maschnei

Hallo Matthias,

ich habe das Problem gelöst. Die FHEM-Doku ist an dieser Stelle sehr verwirrend. Überall im Netz findet man die define-Zeile:

define tul TUL tul:/dev/ttyACM0 1.0.1


Dies ist aber nur bei direktem Ansprechen des TUL-USB-Sticks, d.h. ohne EIBD . Service bzw. ohne KNXD - Service sinnvoll.

Mit laufendem KNXD, muss man den TUL so ansprechen:

define tul TUL knxd:127.0.0.1 1.0.1


Dann läuft alles wunderbar und fehlerfrei.

Problem gelöst !

Viele Grüße
Marco