Ankündigung

Einklappen

Hinweis

Die Forenregeln wurden überarbeitet (Stand 7.11.22). Sie sind ab sofort verbindlich. Wir bitten um Beachtung.
Mehr anzeigen
Weniger anzeigen

eibd(war bcusdk) Fork -> knxd

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

    Hallo,

    ich bin KNX Anfänger aber erfahrener Debian User. Ich möchte knxd auf einem Hummingboard unter Debian Jessie laufen lassen um mit knxd Erfahrung zu sammeln.

    Würde mich über kurze Rückmeldung freuen, ob das jetzt schon Sinn macht mit dem libev Zweig oder ob da bisher nur knxd Experten mit arbeiten sollten.

    Läuft 0.11 unter Debian? Muss ich dazu zuerste die pthsem von der TU compilieren, sollte das unter Jessie noch tun?

    Bin für alle Hinweise und Tipps dankbar.

    Gruß
    Rainer

    Kommentar


      Zitat von rdorsch Beitrag anzeigen
      Läuft 0.11 unter Debian? Muss ich dazu zuerste die pthsem von der TU compilieren, sollte das unter Jessie noch tun?
      Ich empfehle dir den Master 0.11, unter Debian kein Problem. Ja, pthsem musst du zuerst bereitmachen. Mit knxd-libev solltest du erst starten, wenn dein knxd korrekt eingerichtet ist, dann kannst du mithelfen knxd-libev auszutesten. Aus meiner Sicht läuft noch nicht alles stabil.
      EIB/KNX, VISU mit knxd + linknx + knxweb, Steuerbefehle via SMS und Email mit postfix + procmail

      Kommentar


        Zitat von Tru Beitrag anzeigen
        Ich empfehle dir den Master 0.11, unter Debian kein Problem. Ja, pthsem musst du zuerst bereitmachen. Mit knxd-libev solltest du erst starten, wenn dein knxd korrekt eingerichtet ist, dann kannst du mithelfen knxd-libev auszutesten. Aus meiner Sicht läuft noch nicht alles stabil.
        Danke, Tru.

        Habe gesehen, dass im Readme File alles sehr ordentlich dokumentiert ist.

        Gruß
        Rainer
        Zuletzt geändert von rdorsch; 08.01.2017, 23:42.

        Kommentar


          Heho zusammen!

          Da ich immer wieder Probleme mit der Konfiguration von knxd hab, wollte ich mal kurz fragen, was denn die richtigen Parameter wären, wenn ich mich mit einem IP 146 Router von Siemens verbinden möchte - und zwar von mehreren Rechnern aus, also über mehrere knxd Instanzen.

          Prinzipiell bekomm ich's immer wieder mal zum Laufen, aber manchmal wird sehr verzögert getriggert, ab und an gibt es Fehlermeldungen, dann wiederum werden Items 100 Mal getriggert, weil es da wohl ne Cache-Schleife oder irgendwas gibt; nach einem Neustart ist wieder alles anders, etc. Mir ging es primär um das grundlegene Tunneling-Konzept, wenn ich eben mehrere knxd laufen hab. Sollte es hier einen "Master" geben, auf den die anderen zugreifen? Und was passiert, wenn der Master grad nicht läuft?

          Recht irritierend finde ich auch die Meldung: I only have one interface. Nothing to do. Giving up.
          Ich dachte, zumindest ab 0.11 braucht es kein -i und -u mehr. Hier die config:
          KNXD_OPTS="-e 1.1.60 -E 1.1.60:10 -B single -b ipt:10.0.0.101 -c"
          Mit -i erhalte ich keinerlei Fehler, auch nicht beim groupswrite, allerdings passiert nichts auf dem KNX Bus - solange ein 2. knxd auf nem anderen Rechner läuft. Kann aber auch leicht passieren, dass dann doch ein Fehler beim groupswrite kommt. Das erste Senden geht noch, aber danach kommt ein: peer refused connection oder ab und zu auch ein anderer Fehler.

          Danke für die Info!
          Zuletzt geändert von Onkelandy; 20.01.2017, 14:46.

          Kommentar


            Der libev-Zweig ist jetzt weg, bzw. in den Master integriert.

            Nachdem der IP-146 laut Doku auch als Koppler eingesetzt werden kann, gehe ich mal davon aus, dass er nicht nur tunnelt, sondern auch routet, d.h. er verwendet IP-Multicast. Sinnvollerweise sagst du dann deinem knxd einfach "-b ip:", statt mit dem Tunnelgefrickle rumzuspielen.

            Das -i und -u wird genau dann nicht mehr gebraucht, wenn du den knxd mit systemd-Unterstützung gebaut hast und auch über den systemd startest.

            Ich befürchte, du hast da irgendwo eine Schleife drin. Beobachte mal mit wireshark die KNX-Pakete auf deinem Netzwerk.
            DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

            Kommentar


              Hmmm, also ich hab's einfach nicht hinbekommen. Bin jetzt wieder auf 0.10 zurück und da läuft auf dem IP-146 mit folgender Config alles prima:
              KNXD_OPTS="-e 1.1.XX --no-tunnel-client-queuing -b ipt:10.0.0.101 -c"

              Zumindest mit 2 Geräten gleichzeitig. Ein Umstellen von ipt auf ip klappt leider nicht

              Kommentar


                Ich frage mich, wem es was bringen soll, dass du das letzte Byte der KNX-Adresse durch XX ersetzst. Aber egal.

                KNXD_OPTS="-e 1.1.240 -E 1.1.241:10 -B single --send-delay=70 -b ipt:10.0.0.101 -c"

                hat mit 0.12 eigentlich zu funktionieren. (Ersetze die Adressen durch deine eigenen.)

                Was meinst du konkret mit "mit 2 Geräten gleichzeitig"? Zwei knxd-Prozesse die gleichzeitig mit dem IP 146 reden? Ich würde grundsätzlich nur einen knxd mit dem Kasten reden lassen und den zweiten via Multicast anbinden – falls du das Ding tatsächlich nicht dazu bingen kannst, Multicast nativ zu machen. Ich wage nämlich zu bezweifeln, dass die Pakete, die du auf dem einen Tunnel da hinschickst, zum anderen weitergeschickt werden – die meisten dieser Geräte sind dazu nicht in der Lage.

                Ein Umstellen von ipt auf ip klappt leider nicht
                Äh, was hast du getan um das umzustellen? Hast du das Teil entsprechend konfiguriert? Welche Optionen hast du verwendet?

                Siehst du die knx-Pakete, wenn du den knxd mit "-DRS" oder "-b ip:" startest, "knxtool vbusmonitor1" laufen lässt, und dann einen knx-Schalter betätigst? Läuft, während du das tust, ein knxd-Prozess auf dem Rechner und siehst du die Pakete die du mit "knxtool groupswrite" sendest?
                DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                Kommentar


                  hi Smurf
                  Danke für die ausführliche Antwort. Die XX waren nicht wegen Zensur, sondern, weil ich eben 2 knxd laufen hab und die Adressen dann jeweils unterschiedlich sind Und ja, ich meine 2 Geräte (1 NAS, 1 Raspi) kommunizieren mit IP Router über knxd zeitgleich.

                  Macht es Sinn, die Sache mit der v0.10 durchzuexerzieren? Denn auf dem NAS bekomm ich die 0.12 nicht zum Builden
                  Der IP Router ist so konfiguriert, dass er alle Telegramme weiterleitet, also nichts filtert. IP: 10.0.0.101, Multicast: 224.0.23.12
                  Phsyikal. Adresse ist 1.1.0 bzw. 1.1.225 und im Multicast 0.0.1

                  Ich hab also mal in v0.10 folgendes Setting auf dem NAS:
                  Code:
                   -e 1.1.62 -d -i -b ip:224.0.23.12 -c
                  Wenn ich den Busmonitor auf dem NAS starte (direkt über busmonitor1), sehe ich sämtliche Änderungen auf dem Bus, ein groupswrite funktioniert aber nicht. Zeigt zwar "send request", aber sendet nichts.
                  Es läuft nur 1 Prozess:
                  Code:
                  root@SynologyDS1515:~# ps aux | grep knxd
                  onkelan+ 18997  0.0  0.0   4820   868 ?        Ss   13:22   0:00 /usr/local/bin/knxd -e 1.1.62 -d -i -b ip:224.0.23.12 -c
                  root     20104  0.0  0.0   2260   524 pts/12   S+   13:22   0:00 /usr/local/lib/knxd/busmonitor1 ip:127.0.0.1
                  root     20746  0.0  0.0  23120   972 pts/14   S+   13:22   0:00 grep --color=auto knxd
                  Starte ich mit dieser Option:
                  Code:
                   -e 1.1.62 -d -i -b ipt:10.0.0.101 -c
                  oder
                  Code:
                   -e 1.1.62 -d -i -b ip:224.0.23.12 -c -DRS
                  läuft die Sache prinzipiell problemlos.

                  Selbes Spiel auf Debian Jessie. Wenn ich knxd dann auf beiden Geräte mit den gleichen ipt:10.0.0.101 Parametern laufen lasse, läuft mit 0.10.0 alles problemlos. Es funktioniert auch, wenn ich auf einer Instanz ip: -DRS und auf der anderen ipt:10.0.0.101 eingebe.

                  Was wäre denn nun die vernünftigere Lösung? Beide über ipt (was imho in 0.12 nicht gegangen ist) oder 1 als ip -DRS und der andere mit ipt?
                  Schön wäre noch, wenn ich die neueste Version auf'm Synology DS1515+ zum Laufen brächte Dort wird leider gezickt, dass der Compiler kein C++11 auf die Reihe bringt. Und wenn ich das deb File von nem Jessie nehme, gibt es Fehler wegen systemd. Hatte das auf Debian eigtl. mit --disable-systemd gebuildet (oder ähnlich), aber das brachte nix. Bin auch nicht die ersten Schritte von dem Post hier durchgegangen: https://knx-user-forum.de/forum/öffe...234#post846234
                  Zuletzt geändert von Onkelandy; 24.01.2017, 17:37.

                  Kommentar


                    Kannst Mal meinen Docker Container testen, wenn die Synology das kann.
                    net=Host nicht vergessen...
                    Läuft mit der 12.4 hier aber auch noch nicht

                    Kommentar


                      Danke.. wenn ich das jetzt noch auf der Syno blicken würde... Die 2 Container laufen mal, aber dann steh ich an, hehe. Danke dennoch schon mal!

                      Kommentar


                        Wenn ich den Busmonitor auf dem NAS starte (direkt über busmonitor1),
                        Busmonitor schaltet das Interface auf Bus-Monitor. Ansonsten ist es tot.

                        Du willst vbusmonitor1.

                        Weil darüber so gut wie jeder stolpert., wird es in Zukunft eine Option geben, welches Interface der Hardware-Busmonitor ist (wenn man denn einen braucht), und ohne die wird busmonitor-ohne-V nicht mehr funktionieren.
                        DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                        Kommentar


                          Was wäre denn nun die vernünftigere Lösung? Beide über ipt (was imho in 0.12 nicht gegangen ist) oder 1 als ip -DRS und der andere mit ipt?
                          Letzteres sollte funktionieren. Sinnvollerweise verwendet ein knxd "-DRS -b ipt:…" und der andere "-b ip:".

                          Und wenn ich das deb File von nem Jessie nehme, gibt es Fehler wegen systemd.
                          Welcher bitte genau?
                          DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                          Kommentar


                            Ich führe auf einer Debian 64bit Virtual Machine nach dem Klonen der neuesten Version von knxd folgende Befehle aus:
                            ./bootstrap.sh
                            ./configure --disable-systemd
                            dpkg-buildpackage -b -uc

                            Das deb installiere ich dann auf dem Synology DS1515+ und erhalte folgende Dependency Probleme:
                            Code:
                            dpkg: verification on package knxd-tools_0.12.4-2_amd64.deb failed; but installing anyway as you requested
                            Preparing to replace knxd-tools 0.12.4-2 (using knxd-tools_0.12.4-2_amd64.deb) ...
                            Unpacking replacement knxd-tools ...
                            dpkg: dependency problems prevent configuration of knxd:
                             knxd depends on libc6 (>= 2.4); however:
                              Package libc6 is not installed.
                             knxd depends on libev4 (>= 1:4.04); however:
                              Package libev4 is not installed.
                             knxd depends on libgcc1 (>= 1:4.1.1); however:
                              Package libgcc1 is not installed.
                             knxd depends on libstdc++6 (>= 4.8); however:
                              Package libstdc++6 is not installed.
                             knxd depends on libsystemd0; however:
                              Package libsystemd0 is not installed.
                             knxd depends on libusb-1.0-0 (>= 2:1.0.8); however:
                              Package libusb-1.0-0 is not installed.
                             knxd depends on init-system-helpers (>= 1.18~); however:
                              Package init-system-helpers is not installed.
                             knxd depends on lsb-base; however:
                              Package lsb-base is not installed.
                            Libusb hätt ich eigtl. im lib Verzeichnis, und es ist auch im Pfad drin: export LD_LIBRARY_PATH=/usr/local/lib
                            Bekäme ich sicher irgendwie gelöst, aber da steht jedenfalls noch libsystemd0, obwohl ich das beim Config disabled hatte..?

                            Kommentar


                              Mal eine blöde Frage -- gar kein libc6? was machst du dann überhaupt mit Debian-Paketen auf der Kiste?

                              dpkg-buildpackage interessiert sich einen Feuchten für das, was du dem ./configure gesagt hast – die Konfiguration findest du (wie bei allen debian-Sourcen) in der Datei debian/rules.
                              Du (und nur du!) solltest statt dpkg-buildpackage einfach ./configure und dann "make && make install" aufrufen, und den Kram dann manuell aus /usr/local extrahieren und zusammen mit den benötigten Libraries rüberkopieren.
                              DistKV, Home Assistant, 1wire, KNX, Python, Asterisk, SMD-Lötkolben

                              Kommentar


                                Kann ich mit knxd Operationen auf dem Host auslösen (z.B. per Callback, Polling oder was auch immer), wenn auf dem KNX Bus eine Schreiboperation auf eine Gruppenadresse passiert?

                                Wenn, ja, gibt es irgendwelche Doku, die beschreibt wie das aufgesetzt wird?

                                Dank des guten HInweises von Michixx funktioniert die umgekehrte Richtung (Auslösen einer Schreiboperation auf eine Gruppenadresse vom Host) :-)

                                Danke und Gruß
                                Rainer

                                Kommentar

                                Lädt...
                                X