Ankündigung

Einklappen
Keine Ankündigung bisher.

KNXd empfängt nichts vom KNX Bus, sendet aber sporadisch

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    KNXd empfängt nichts vom KNX Bus, sendet aber sporadisch

    Hi,

    ich hab mich jetzt mal duch einige Threads durchgesucht, hat mir auch einige meiner Probleme gelöst, doch jetzt hängts.

    Ich habe einen Raspberry Pi 2, an dem ein PeaKNX USB Connector läuft
    einen Server mit Edomi
    und einen PC mit Windows 10 und ETS5

    meine Configs, etc.

    Code:
    cat /etc/knxd.conf
    
    # configuration for knxd.service
    #KNXD_OPTS="-f9 -t1023 -D -T -R -S -e 0.0.1 -E 0.0.2:8 -u /tmp/eib -b usb:"
    KNXD_OPTS="/etc/knxd.ini"

    Code:
    pi@raspberrypi:~ $ cat /etc/knxd.ini
    [A.tcp]
    server = knxd_tcp
    systemd-ignore = true
    
    [B.usb]
    driver=usb
    
    
    [server-debug]
    name = server:knxd
    error-level = 6
    trace-mask = 1023
    
    [server]
    server = ets_router
    discover = true
    debug = server-debug
    router = router
    tunnel = tunnel
    
    [main]
    addr = 1.1.240
    client-addrs=1.1.241:8
    cache = D.cache
    connections =   A.tcp,B.usb,server
    systemd = systemd
    Code:
    pi@raspberrypi:~ $ cat /etc/udev/rules.d/70-your-knxd.rules
    # PEAKNX
    ATTR{idVendor}=="2d72", ATTR{idProduct}=="0002",OWNER="knxd",MODE="0664"

    Code:
    pi@raspberrypi:~ $ sudo systemctl status knxd.service
    * knxd.service - KNX Daemon
       Loaded: loaded (/etc/systemd/system/knxd.service; enabled; vendor preset: enabled)
       Active: active (running) since Tue 2018-08-21 15:36:32 CEST; 14s ago
     Main PID: 5146 (knxd)
       CGroup: /system.slice/knxd.service
               `-5146 /usr/bin/knxd /etc/knxd.ini
    
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 5 [24:router/ConnC       0.023] >up => up
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 4 [24:router/ConnC       0.023] up
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 5 [24:router/ConnC       0.023] Started
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 4 [24:router/ConnC       0.023] up
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 8 [19:server/Server      0.023] Opened
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 5 [19:server/Server      0.023] >up => up
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 4 [19:server/Server      0.023] up
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 5 [19:server/Server      0.023] Started
    Aug 21 15:36:32 raspberrypi knxd[5146]: Layer 4 [19:server/Server      0.023] up
    Aug 21 15:36:32 raspberrypi systemd[1]: Started KNX Daemon.
    knxd ist auf dem Pi installiert. Mittlerweile startet der Dienst auch und ich kann das knxtool benutzen:
    Code:
    pi@raspberrypi:~ $ knxtool groupsocketlisten ip:localhost
    Write from 1.1.242 to 1/1/0: 01

    man sieht er empfängt von der Edomi das Write Telegramm, aber es kommt kein Read.
    Licht ging auch an. Edomi bekommt natürlich keine Statusrückmeldung und ich kann damit kein "Aus" Telegramm schicken (durch den Button)


    Irgendwann kommt dann folgendes

    Code:
    Read failed: Connection reset by peer
    Könnte durch ein zyklisch gesendetes Temperatur/Feuchte Telegramm sein.

    ETS Busmonitor meldet im gleichen Moment "Verbindung verloren" und ist eine Minute später wieder verbunden.
    Auch Edomi meldet Verbindung verloren und kurze Zeit später gehts wieder.

    Ich bin ratlos. Meine Vermutung ist ja, dass ich das Routing nicht gescheit konfiguriert habe.

    Der USB Connector funktioniert. Mit der SW von PeaKNX (funktioniert aber nicht als Daemon, daher für mich wertlos) klappt es ohne Probleme.

    Danke schon mal


    /edit
    Wenn ich einen Taster benutze, kommt kein Telegramm im groupsocketlisten / ETS Busmonitor an

    #2
    Etwas offensichtlich falsches kann ich nicht erkennen. Allerdings bin ich nicht so vertraut mit der Konfiguration über das ini-File und benutze auch nie groupsocketlisten. Ich würde mal damit ansetzen mittels knxtool ein paar Mal auf den Bus zu schreiben und damit die Schnittstelle über längere Zeit zu verifizieren. Parallel dazu den Bus mit vbusmonitor1 beobachten, da müsste ja die ganze Busaktivität sichtbar werden. Wenn hier schon nichts passiert, dann stimmt wohl etwas mit der USB Schnittstelle nicht.
    Du könntest knxtool auch auf einem zweiten Linux-System installieren und damit über das LAN mit knxd kommunizieren und damit die Funktionalität von knxd zwischen LAN und Bus verifizieren.
    Erst wenn so die Funktionalität bestätigt ist, würde ich Edomi und ETS anschauen. Selber bin ich weder mit Edomi noch mit ETS vertraut. Wenn beide über Tunnel Modus angeschlossen sind, würde ich Routing erst mal weglassen und dafür auf den Tunnel Modus fokussieren. Oder umgekehrt.
    Ich gehe davon aus, dass du die Adressen 1.1.240 und 1.1.241:8 nirgends sonst auf dem Bus vergeben hast.
    EIB/KNX, VISU mit knxd + linknx + knxweb, Steuerbefehle via SMS und Email mit postfix + procmail

    Kommentar


      #3
      Es kommt ja was auf dem Bus an, wenn ichs über Edomi oder knxtool sende.
      Habe es noch mal mit dem vbusmonitor1 gemacht. Es kommen keine Rückmeldungen vom Bus an. Auch wenn ich einen Taster am Bus betätige, sehe ich den nicht am vbusmonitor. Aber die 3 Pakete über grouspwrite kamen an und haben das licht an und wieder ausgeschaltet. nur der letzte (fett) hat zum connection reset geführt und nichts geschaltet

      //edit
      zwischen lan und bus (one-way) geht ja, nur vom bus kommt nix zurück. ist auch der gleiche fehler, ob ich von der edomi schalte, vom knxtool über localhost, oder vom knxtool über die ip des knx routers.

      habe die config auch nur kopiert. denke da wird irgendwo der haken sein.

      gesendet:
      Code:
      pi@raspberrypi:~ $ knxtool groupswrite ip:localhost 1/1/0 1
      Send request
      pi@raspberrypi:~ $ knxtool groupswrite ip:localhost 1/1/0 0
      Send request
      [B]pi@raspberrypi:~ $ knxtool groupswrite ip:localhost 1/1/0 1
      Send request[/B]
      pi@raspberrypi:~ $
      vbusmonitor1 (das erste Paket ist von der EDOMI, die anderen 3 siehe oben)
      Code:
      pi@raspberrypi:~ $ knxtool vbusmonitor1 ip:localhost
      LPDU: BC 11 F1 09 00 E1 00 81 CA :L_Data low from 1.1.241 to 1/1/0 hops: 06 T_DATA_XXX_REQ A_GroupValue_Write (small) 01
      LPDU: BC 11 F3 09 00 E1 00 81 C8 :L_Data low from 1.1.243 to 1/1/0 hops: 06 T_DATA_XXX_REQ A_GroupValue_Write (small) 01
      LPDU: BC 11 F4 09 00 E1 00 80 CE :L_Data low from 1.1.244 to 1/1/0 hops: 06 T_DATA_XXX_REQ A_GroupValue_Write (small) 00
      [B]LPDU: BC 11 F5 09 00 E1 00 81 CE :L_Data low from 1.1.245 to 1/1/0 hops: 06 T_DATA_XXX_REQ A_GroupValue_Write (small) 01
      Read failed: Connection reset by peer[/B]
      pi@raspberrypi:~ $
      Zuletzt geändert von Freeman; 22.08.2018, 08:47.

      Kommentar


        #4
        Code:
        Read failed: Connection reset by peer
        Da ist dir anscheinend der knxd um die Ohren geflogen. Mach Debugging an …
        DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

        Kommentar


          #5
          war grad dabei, da kam was dazwischen

          so jetzt ein Logeintrag dazu:
          Hatte den Daemon neugestartet, danach einmal den Befehl oben abgeschickt, Licht ging weder an noch aus und folgendes stand im Log:


          Code:
          Aug 22 14:36:36 raspberrypi knxd[23668]: E00000000: [25:B.usb] EMI_common: send while waiting
          Aug 22 14:36:36 raspberrypi knxd[23668]: Layer 6 [19:server/Server         11.644] is OK
          Aug 22 14:36:46 raspberrypi knxd[23668]: E00000055: [15:B.usb] Driver timed out trying to send (B.usb)
          Aug 22 14:36:46 raspberrypi knxd[23668]: F00000000: [15:B.usb] Link down, terminating
          Aug 22 14:36:46 raspberrypi knxd[23668]: Layer 4 [19:server/Server         21.654] Stopping
          Aug 22 14:36:46 raspberrypi knxd[23668]: Layer 5 [19:server/Server         21.654] up => >down
          Aug 22 14:36:46 raspberrypi systemd[1]: knxd.service: Main process exited, code=exited, status=1/FAILURE
          Aug 22 14:36:46 raspberrypi systemd[1]: knxd.service: Unit entered failed state.
          Aug 22 14:36:46 raspberrypi systemd[1]: knxd.service: Failed with result 'exit-code'.

          und das Ganze noch mal mit ein paar Paketen mehr, diesmal ging Licht an und aus:


          Code:
          Aug 22 14:38:49 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          113.496] sending, send_more clear
          Aug 22 14:38:49 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          113.496] sendNext called, send_more set
          Aug 22 14:38:49 raspberrypi knxd[23694]: Layer 6 [19:server/Server         113.496] is OK
          Aug 22 14:38:49 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          113.496] is OK
          Aug 22 14:38:49 raspberrypi knxd[23694]: Layer 1 [19:server/Server         113.497] Send(015): 04 01 00 00 29 00 BC D0 11 F2 09 00 01 00 81
          Aug 22 14:38:49 raspberrypi knxd[23694]: Layer 0 [19:server/Server         113.497] Send(021): 06 10 04 20 00 15 04 01 00 00 29 00 BC D0 11 F2 09                                                              00 01 00 81
          Aug 22 14:38:49 raspberrypi knxd[23694]: Layer 0 [19:server/Server         113.504] Recv(010): 06 10 04 21 00 0A 04 01 00 00
          Aug 22 14:38:49 raspberrypi knxd[23694]: Layer 8 [27:tunnel/1.1.241        113.504] TUNNEL_ACK
          Aug 22 14:38:51 raspberrypi knxd[23694]: Layer 6 [19:server/Server         114.697] is OK
          Aug 22 14:38:51 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          114.697] is OK
          Aug 22 14:38:55 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          118.857] sending, send_more clear
          Aug 22 14:38:55 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          118.858] sendNext called, send_more set
          Aug 22 14:38:55 raspberrypi knxd[23694]: Layer 6 [19:server/Server         118.858] is OK
          Aug 22 14:38:55 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          118.858] is OK
          Aug 22 14:38:55 raspberrypi knxd[23694]: Layer 1 [19:server/Server         118.859] Send(015): 04 01 01 00 29 00 BC D0 11 F3 09 00 01 00 80
          Aug 22 14:38:55 raspberrypi knxd[23694]: Layer 0 [19:server/Server         118.859] Send(021): 06 10 04 20 00 15 04 01 01 00 29 00 BC D0 11 F3 09                                                              00 01 00 80
          Aug 22 14:38:55 raspberrypi knxd[23694]: Layer 0 [19:server/Server         118.868] Recv(010): 06 10 04 21 00 0A 04 01 01 00
          Aug 22 14:38:55 raspberrypi knxd[23694]: Layer 8 [27:tunnel/1.1.241        118.868] TUNNEL_ACK
          Aug 22 14:38:56 raspberrypi knxd[23694]: Layer 6 [19:server/Server         120.059] is OK
          Aug 22 14:38:56 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          120.059] is OK
          Aug 22 14:39:01 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          124.691] sending, send_more clear
          Aug 22 14:39:01 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          124.691] sendNext called, send_more set
          Aug 22 14:39:01 raspberrypi knxd[23694]: Layer 6 [19:server/Server         124.692] is OK
          Aug 22 14:39:01 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          124.692] is OK
          Aug 22 14:39:01 raspberrypi knxd[23694]: Layer 1 [19:server/Server         124.693] Send(015): 04 01 02 00 29 00 BC D0 11 F4 09 00 01 00 81
          Aug 22 14:39:01 raspberrypi knxd[23694]: Layer 0 [19:server/Server         124.693] Send(021): 06 10 04 20 00 15 04 01 02 00 29 00 BC D0 11 F4 09                                                              00 01 00 81
          Aug 22 14:39:01 raspberrypi knxd[23694]: Layer 0 [19:server/Server         124.712] Recv(010): 06 10 04 21 00 0A 04 01 02 00
          Aug 22 14:39:01 raspberrypi knxd[23694]: Layer 8 [27:tunnel/1.1.241        124.712] TUNNEL_ACK
          Aug 22 14:39:02 raspberrypi knxd[23694]: Layer 0 [19:server/Server         125.618] Recv(016): 06 10 02 07 00 10 01 00 08 01 C0 A8 D3 10 C3 50
          Aug 22 14:39:02 raspberrypi knxd[23694]: Layer 8 [27:tunnel/1.1.241        125.618] CONNECTIONSTATE_REQUEST on 1
          Aug 22 14:39:02 raspberrypi knxd[23694]: Layer 1 [19:server/Server         125.618] Send(002): 01 00
          Aug 22 14:39:02 raspberrypi knxd[23694]: Layer 0 [19:server/Server         125.618] Send(008): 06 10 02 08 00 08 01 00
          Aug 22 14:39:02 raspberrypi knxd[23694]: Layer 6 [19:server/Server         125.893] is OK
          Aug 22 14:39:02 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          125.893] is OK
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          127.059] sending, send_more clear
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          127.059] sendNext called, send_more set
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 6 [19:server/Server         127.059] is OK
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 6 [26:tunnel/ConnC          127.059] is OK
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 1 [19:server/Server         127.059] Send(015): 04 01 03 00 29 00 BC D0 11 F5 09 00 01 00 80
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 0 [19:server/Server         127.060] Send(021): 06 10 04 20 00 15 04 01 03 00 29 00 BC D0 11 F5 09                                                              00 01 00 80
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 0 [19:server/Server         127.066] Recv(010): 06 10 04 21 00 0A 04 01 03 00
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 8 [27:tunnel/1.1.241        127.066] TUNNEL_ACK
          Aug 22 14:39:03 raspberrypi knxd[23694]: F00000000: [15:B.usb] Link down, terminating
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 4 [19:server/Server         127.359] Stopping
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 5 [19:server/Server         127.359] up => >down
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 8 [27:tunnel/1.1.241        127.359] Stop Conn 1
          Aug 22 14:39:03 raspberrypi knxd[23694]: Layer 5 [26:tunnel/ConnC          127.359] up => down
          Aug 22 14:39:03 raspberrypi systemd[1]: knxd.service: Main process exited, code=exited, status=1/FAILURE
          Aug 22 14:39:03 raspberrypi systemd[1]: knxd.service: Unit entered failed state.
          Aug 22 14:39:03 raspberrypi systemd[1]: knxd.service: Failed with result 'exit-code'.
          nach wie vor kann ich nichts auf dem Bus lesen. Wäre ja naheliegend, dass der USB Connector falsch konfiguriert ist, oder? Er scheint ja den Link abzubrechen.

          Kommentar


            #6
            Habs mal im Terminal laufen lassen - Daemon war gestoppt - da kam folgende Fehlermeldung:

            Code:
            F00000000: [ 7:B.usb] Link down, terminating
            Layer 4 [11:server/Server      42.330] Stopping
            Layer 5 [11:server/Server      42.330] up => >down
            Layer 8 [15:/driver            42.330] CloseD
            Layer 0 [11:server/Server      42.330] Close
            Layer 5 [11:server/Server      42.330] >down => down
            Layer 4 [11:server/Server      42.330] down
            Layer 4 [11:server/Server      42.330] down
            Layer 4 [11:server/Server      42.330] is down
            Layer 8 [11:server/Server      42.330] Close
            [B]E00000035: [10:B.usb] SendError 1e39458 status 3[/B]
            //edit: selbes Szenario wie oben, Licht aus, an, aus, an und irgendwann dann der Fehler

            Kommentar


              #7
              spendier deiner USB Schnittstelle doch mal ein bisschen mehr Strom, z.B. mit nem aktiven USB HUB
              Nils

              aktuelle Bausteine:
              BusAufsicht - ServiceCheck - Pushover - HS-Insight

              Kommentar


                #8
                Zitat von NilsS Beitrag anzeigen
                spendier deiner USB Schnittstelle doch mal ein bisschen mehr Strom, z.B. mit nem aktiven USB HUB
                mit mehr Strom hab ich auch nicht plötzlich die Pakete vom Bus
                Habe keinen aktiven USB Hub, wollte es auf dem Edomi Rechner probieren, aber CentOS hat irgendein Problem mit git... ist mir grad zu viel Bastelei und hab anderes wichtigeres zu tun, daher werde ich das Projekt knxd auf Eis legen.

                Danke für die Hilfe bisher.

                Kommentar


                  #9
                  Freeman Da nimm, das gut alte abgehangene: http://www.knx-home.net/wiki/index.p...d_installieren

                  Kommentar


                    #10
                    danke, probier ich mal aus vllt. klappts ja auf anhieb

                    Kommentar

                    Lädt...
                    X