Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem bei systemctl nach Update auf V0.14

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

    Problem bei systemctl nach Update auf V0.14

    Hallo zusammen,

    ich hatte bisher erfolgreich und recht gut Version 0.10 bei mir laufen und hatte jetzt gesehen, dass hier ja fleißig weiter gearbeitet wurde (Schon mal vielen Dank dafür). Jetzt habe ich die aktuelle stable-Version heruntergeladen, kompiliert und installiert. Anschließend habe ich mit knxd_args meine Argument in das INI-Format überführt und dies in /etc/knxd.conf eingetragen.

    Diese sieht wie folgt aus:
    Code:
    [B.tpuarts]
    device = /dev/ttyKNX1
    driver = tpuart
    [debug-server]
    name = mcast:knxd
    [main]
    addr = 1.1.250
    cache = A.cache
    client-addrs = 1.1.251:8
    connections = server,B.tpuarts
    systemd = systemd
    [server]
    debug = debug-server
    discover = true
    router = router
    server = ets_router
    tunnel = tunnel
    Mit folgendem Aufruf konnte ich die Schnittstelle dann erfolgreich starten. Die ETS hat diese korrekt angezeigt und Kommunikation klappt:
    Code:
    knxd /etc/knxd.conf
    Jetzt wollte ich auch, dass knxd eben beim Systemstart starte und somit als Service läuft.

    Mit folgendem Aufruf habe ich dies dann versucht:
    Code:
     systemctl start knxd.service
    Es kommt aber leider zu einem Fehler:
    Code:
    Job for knxd.service failed. See 'systemctl status knxd.service' and 'journalctl -xn' for details.
    Dort kommt dann folgende Ausgabe:
    Code:
    -- Unit knxd.service has begun starting up.
    Aug 25 18:22:36 jessie-rpi systemd[1]: Ignoring invalid environment 'client-addrs=1.1.251:8': /etc/knxd.conf
    Aug 25 18:22:36 jessie-rpi knxd[626]: Usage: knxd configfile [main_section]
    Aug 25 18:22:36 jessie-rpi knxd[626]: Please consult /usr/share/doc/knxd/inifile.rst
    Aug 25 18:22:36 jessie-rpi systemd[1]: knxd.service: main process exited, code=exited, status=2/INVALIDARGUMENT
    Aug 25 18:22:36 jessie-rpi systemd[1]: Failed to start KNX Daemon.
    -- Subject: Unit knxd.service has failed
    Auch ohne diese Einstellung kommt der Fehler.

    Könnt ihr mir hier weiterhelfen? Ich habe das Gefühl, dass ich hier nur irgendwo in den Dokumentationen eine Kleinigkeit überlesen oder vergessen habe.

    Danke schon mal.

    Grüße,
    Christian

    #2
    meine Argument in das INI-Format überführt und dies in /etc/knxd.conf eingetragen
    Wie kommst du auf die Idee, dass das funktionieren könnte?

    Du willst in die knxd.conf genau eine Zeile, nämlich
    Code:
    KNXD_OPTS=/etc/knxd.ini
    schreiben.
    DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

    Kommentar


      #3
      Hallo,

      danke für deine Antwort. Das mit der Ini habe ich mir dann irgendwie aus den Dokumentationen so hergeleitet. War wohl falsch.
      Jetzt funktioniert alles. Mit der neuen Version bekomme ich im Bus-Monitor auch keine "Fehlerhaften Frames" mehr angezeigt. Jetzt sieht alles sauber aus.

      Danke und Grüße,
      Christian

      Kommentar


        #4
        Hi,

        habe ein ähnliches Problem. Habe mal den Umstieg auf 0.14 gewagt.....
        KNXD Kommunikation funktioniert, nur vom Ets kann ich nicht programmieren, Gruppen- und Busmonitor funktionieren auch.
        Finde absolut nicht den Fehler:

        [B.ipt]
        driver = ipt
        ip-address = 192.168.178.4
        [debug-server]
        name = mcast:knxd
        [main]
        addr = 1.1.254
        client-addrs = 1.1.253:8
        cache = A.cache
        connections = B.ipt,server
        systemd = systemd
        [server]
        debug = debug-server
        discover = true
        router = router
        server = ets_router
        tunnel = tunnel

        Weis wer Rat?

        Wäre echt dankbar, bevor ich verzweifle....


        Gruß

        Axl

        Kommentar


          #5
          Bin leider immer noch nicht weitergegekommen.
          werde daher wohl wieder auf den eibd wechseln müssen oder diesen als IP-Router dazwischenhängen, bis das geht.

          Beim alten KNXD mit der conf datei ging es immer damit:
          KNXD_OPTS="-e 1.1.254 -u/tmp/eib -b ipt:192.168.178.4 -DTRS -c"

          Habe das zwar auch wie o.a. umgesetzt, aber Programmieren über ets geht nicht, sonst klappts ja....


          Gruß

          Axl
          Zuletzt geändert von blutwurst; 10.10.2017, 18:15.

          Kommentar


            #6
            Zitat von blutwurst Beitrag anzeigen
            Beim alten KNXD mit der conf datei ging es immer damit:
            KNXD_OPTS="-e 1.1.254 -u/tmp/eib -b ipt:192.168.178.4 -DTRS -c"
            Beim neuen reicht das nicht mehr, es braucht auch noch -E. Dafür kannst du -u /tmp/eib weglassen, denn das wird von knxd.socket übernommen als /var/run/knx. Oben hast du 1.1.253:8 ja noch drin (geht das überhaupt?). Allerdings solltest du wohl die eigene Adresse nicht mit den Client-Adressen überlappen. Vielleicht scheiterte es ja daran.
            EIB/KNX, VISU mit knxd + linknx + knxweb, Steuerbefehle via SMS und Email mit postfix + procmail

            Kommentar


              #7
              Hallo,

              danke für die Hilfe,

              das mit der Clientadresse hatte ich schon geändert, ist genau umgedreht.
              sieht eigentlich so aus:

              [B.ipt]
              driver = ipt
              ip-address = 192.168.178.4
              [debug-server]
              name = mcast:knxd
              [main]
              addr = 1.1.249
              client-addrs = 1.1.250:4
              cache = A.cache
              connections = B.ipt,server
              systemd = systemd
              [server]
              debug = debug-server
              discover = true
              router = router
              server = ets_router
              tunnel = tunnel



              Leider geht das alles nicht.
              D.h. es klappt alles, nur die ETS Programmierung nicht.
              Zuletzt geändert von blutwurst; 10.10.2017, 19:41.

              Kommentar


                #8
                Überlappende Adressen sind harmlos, das wird gefiltert.

                Die meisten ipt:-Schnittstellen verstehen keine ganzen KNX-Netze auf IP-Seite und ersetzen die verwendete physische Adresse stupide durch ihre eigene. Das geht bei normalen Daten, weil die keine physischen Zieladressen haben, knallt aber beim Programmieren gewaltig auf die Nase. Du willst den "single"-Filter verwenden, die ETS direkt mit dem Gateway reden lassen, einen Gateway verwenden der Multicast kann, oder dem knxd ein direkt angeschlossenes Interface verpassen.
                DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                Kommentar


                  #9
                  Hallo,

                  danke für die ausführliche Antwort.

                  Was mich wundert, es hat mit den alten knxd Versionen immer tadelos funktioniert, daher sehe ich eigentlich keine Notwendigkeit hier eine Neuanschaffung zu tätigen.
                  Oder sind die Änderungen in der V0.14 so gravierend?

                  Zur Not ginge doch bestimmt auch ein Downgrade auf V0.12 oder V0.10.
                  Gibt es da was zu beachten?
                  knxd.conf anpassen ist klar, evtl noch was?

                  Danke

                  Gruß

                  Axl


                  Nachtrag:
                  Downgrade auf V0.10 und alles läuft wieder pefekt!
                  Zuletzt geändert von blutwurst; 30.10.2017, 07:22.

                  Kommentar


                    #10
                    Zitat von Smurf Beitrag anzeigen

                    Wie kommst du auf die Idee, dass das funktionieren könnte?

                    Du willst in die knxd.conf genau eine Zeile, nämlich
                    Code:
                    KNXD_OPTS=/etc/knxd.ini
                    schreiben.
                    Hallo Matthias,

                    auf genau den Fehler bin ich bei mir auch gestoßen. Sowohl Lektüre des wiki als auch der in knxd --help angegeben Formatbeschreibung der Ini-Datei (gut beschrieben, übrigens!) habe ich nie einen Verweis gefunden, dass die neue Ini-Datei und die "alte" knxd.conf beide benötigt werden. Ich habe auch die neue INI-Konfiguration in die knxd.conf geschrieben.

                    Ich werde mal versuchen, das im Wiki entsprechend zu ergänzen; für die knxd.conf habe ich noch einen Pullrequest mit einem entsprechenden Vermerk gemacht.

                    Gruß
                    Sebastian

                    Nachtrag:
                    Im Wiki hatte ich gelesen:
                    Starting with v0.14, knxd supports using a configuration file instead of its long list of arguments.
                    Das hat für mich eigentlich nicht auf die Notwendigkeit von zwei Konfigurationsdateien (knxd.conf, knxd.ini) hingewiesen. Schick wäre ja, wenn knxd ein entsprechendes Format in der knxd.conf direkt erkennen würde. Ansonsten wäre es ggf. hilfreich, zwischen der "Konfigurationsdatei" knxd.conf und der INI-Datei knxd.ini auch sprachlich zu unterscheiden.

                    Ich habe systemd jedenfalls nicht dazu bewegen können, knxd zu starten, ohne zwei Dateien anzulegen (wenn man das neue Format nutzen möchte).
                    Zuletzt geändert von Morg; 28.12.2017, 14:06.

                    Kommentar

                    Lädt...
                    X