Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Beta-Tester für ebus-daemon / libebus gesucht.

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    [wiregate] - √ - Beta-Tester für ebus-daemon / libebus gesucht.

    Hallo,

    2012 / 13 hat der "ebusd" in diesem Forum seine Anfänge genommen. Klein, schlank und in C.

    Bei einigen Erweiterungen haben sich jedoch konzeptionelle Schwächen aufgetan.
    Aus diesem Grund habe ich den Daemon von Grund auf neu entworfen und das ganze in C++ implementiert.

    Das ganze Packet besteht nun aus 2 Teilen.
    • libebus (Bus-Anbindung, ebus-Konfiguration, Dekodierung)
    • ebus-daemon (Socket-Verbindung, Befehls-Ausführung/Auswertung, Logging)

    Änderungen gegenüber ebusd:
    • Die ebus-Konfiguration ist vom Aufbau her gleich geblieben.
      Jedoch haben sich bei den Datentypen (UIN, SIN, ULG, SLG, FLT) die Bytereihenfolge geändert.
      Aktuell fehlt noch: BDA, BTI, BDY (kommen bei Bedarf)
    • Socket-Schnittstelle ist zum ebusd gleich geblieben.
      Implementiert sind: GET, CYC, LOG (statt LOGLEVEL), QUIT.
      Aktuell fehlt noch: SET, SHUTDOWN wird entfallen.
    • Logging System funktioniert nun mit Bereichen (bas, net, bus, cyc, all) und Loglevels (error, event, trace, debug).
    • Daemon Konfiguration (switches) haben sich geringfügig geändert bzw. fehlt aktuell noch eine Konfigurationsdatei.

    Download und kompilieren:

    Der Download erfolgt am einfachste mit git wie folgt.

    # git clone https://github.com/yuhu-/libebus
    # cd libebus
    # ./autogen.sh
    # make
    # make install (als root bzw. sudo)

    Die Dateien werden in folgende Verzeichnisse installiert:
    /usr/local/lib/
    /usr/local/include/
    # cd ..
    # git clone https://github.com/yuhu-/ebus-daemon
    # cd ebus-daemon
    # ./autogen.sh
    # make
    Mit ./ebus-daemon -f wird der Daemon in der Console ausgeführt.

    Kritik und Feedback ist willkommen.

    @Forum-Admins: Falls dieser Post nicht richtig platziert ist bitte Verschieben/Löschen und Info.

    #2
    Läuft es auf dem WireGate bzw. ist das WireGate Multifunktionsgateway die Referenzimplementierung?

    lg

    Stefan

    Kommentar


      #3
      Zitat von StefanW Beitrag anzeigen
      Läuft es auf dem WireGate bzw. ist das WireGate Multifunktionsgateway die Referenzimplementierung?
      Ja, es läuft auf einem WireGate. Ich verwende einen Raspberry mit knxd Knxd - Open Automation.
      Für die smarthome Visu gibt es ein Plugin https://github.com/mknx/smarthome/tr...r/plugins/ebus

      Kommentar


        #4
        Zitat von yuhu Beitrag anzeigen
        Ja, es läuft auf einem WireGate.
        Ist das nur eine Behauptung oder auch getestet? Weil wenn es bei Dir auf einem Raspi läuft, würde ich eher vermuten, dass Du es für den Raspi geschrieben und damit getestet hast und dann ist es im WireGate Bereich weniger gut aufgehoben als bei DIY?

        Bitte nicht falsch verstehen, ich will Dich nicht verdrängen, aber auch keine Anwender verwirren.

        lg

        Stefan

        Kommentar


          #5
          Zitat von StefanW Beitrag anzeigen
          Ist das nur eine Behauptung oder auch getestet? Weil wenn es bei Dir auf einem Raspi läuft, würde ich eher vermuten, dass Du es für den Raspi geschrieben und damit getestet hast und dann ist es im WireGate Bereich weniger gut aufgehoben als bei DIY?
          Du hast recht. Es ist wirklich eine Behauptung, da ich selbst kein Wiregate besitze. Jedoch habe ich auch zu einem Beta-Test eingeladen.
          Der 'ebusd' wird von einigen Forumsmitglieder erfolgreich auf einem Wiregate eingesetzt. Dies soll auch für den ebus-daemon gelten.
          Die neue Implementierung benötigt Standard C++ Header, einige Linux System Header sowie pthread's. Hoffen nicht das dies ein KO Kriterium für das Wiregate ist.

          Zitat von StefanW Beitrag anzeigen
          Bitte nicht falsch verstehen, ich will Dich nicht verdrängen, aber auch keine Anwender verwirren.
          Damit habe ich kein Problem. Wenn der Post falsch platziert ist kann dieser auch wieder gelöscht werden. (siehe Eröffnungspost)

          Kommentar


            #6
            Vielen Dank für das Update! Ich verwende ebusd auf meinem Wiregate seit mehr als einem Jahr und bin sehr dankbar für all die Arbeit, die in dieses Projekt geflossen ist!

            Zitat von yuhu Beitrag anzeigen
            Die ebus-Konfiguration ist vom Aufbau her gleich geblieben.
            Jedoch haben sich bei den Datentypen (UIN, SIN, ULG, SLG, FLT) die Bytereihenfolge geändert.
            Gibt es eine "einfache" Möglichkeit vom alten ebusd auf das NEUE umzusteigen? Da das Ganze auch noch mit knxd zusammehängt, würde ich ungern wieder bei Null anfangen (bin froh, dass ich mittlerweile die wichtigsten Parameter von meiner Vaillant Anlage bekomme ).

            Welche Versionierung verwendet ebusd eigentlich? Wird das neue nun ebusd 2.0 oder wie soll man künftig das alte vom neuen unterscheiden?

            Kommentar


              #7
              Zitat von XueSheng Beitrag anzeigen
              Vielen Dank für das Update! Ich verwende ebusd auf meinem Wiregate seit mehr als einem Jahr und bin sehr dankbar für all die Arbeit, die in dieses Projekt geflossen ist!
              Danke

              Zitat von XueSheng Beitrag anzeigen
              Gibt es eine "einfache" Möglichkeit vom alten ebusd auf das NEUE umzusteigen? Da das Ganze auch noch mit knxd zusammehängt, würde ich ungern wieder bei Null anfangen (bin froh, dass ich mittlerweile die wichtigsten Parameter von meiner Vaillant Anlage bekomme ).
              Die Socket Schnittstelle zum ebus-daemon ist gleich zum ebusd.

              Um es jedoch nicht ganz einfach zu gestallten hat sich bei manchen Datentypen die Bytereihenfolge geändert. (siehe Eingangspost)
              Bei Bedarf könnte dies aber relativ billig geändert werden.

              Bei meiner Installation läuft ebenfalls ein knxd welcher die Daten vom daemon abholt und in RRD's speichert. Zur Anzeige verwende ich die CometVisu.

              Notwendig für Umstieg bzw. Test:
              • libebus
              • ebus-daemon
              • Anpassung der Bytereihenfolge für UIN, SIN, ULG, SLG, FLT bei Bedarf


              Zitat von XueSheng Beitrag anzeigen
              Welche Versionierung verwendet ebusd eigentlich? Wird das neue nun ebusd 2.0 oder wie soll man künftig das alte vom neuen unterscheiden?
              Der ebusd hat auf github den Tag 'ebusd v0.1.0'.

              Die Entwicklung der aktuellen Version war ursprünglich als eigener Branch unter ebusd zu finden.
              Vor etwa 1 Monat habe ich eine eigenes Repository für den Daemon angelegt, da sich die verwendete Technologie (C++ statt C, Objektorientierter Ansatz, Threads,...) geändert hat.

              Bei der Namensgebung bin ich noch offen. Wenn der Wunsch vorhanden ist, kann aus dem ebus-daemon auch wieder ein ebusd v0.2.0 werden.

              Auch gibt es nun eine explizite Library 'libebus', welche sich um den Buszugriff, De/Enkodierung der Daten sowie ebus Konfiguration kümmert. Diese kann auch für externe Tools verwendet werden.

              Kommentar


                #8
                Update:
                • Mittlerweile sind sämtliche Datentypen für SET implementiert.
                • Mit DUMP on/off kann das Dumpen zur Laufzeit ein/ausgeschaltet werden.

                Kommentar


                  #9
                  hi, I'm using Ubuntu 12.04.4 LTS (GNU/Linux 3.2.0-37-generic i686), all updated.

                  I would advise you that I had to comment the first line of configure.ac to use autogen.sh
                  # AC_PREREQ([2.69])
                  because last version of automake is: automake (GNU automake) 1.11.3; then I have no problem with make.

                  same problem for libebus

                  Kommentar


                    #10
                    hi, I'm using Ubuntu 12.04.4 LTS (GNU/Linux 3.2.0-37-generic i686), all updated.

                    I would advise you that I had to comment the first line of configure.ac to use autogen.sh
                    # AC_PREREQ([2.69])
                    because last version of automake is: automake (GNU automake) 1.11.3; then I have no problem with make.

                    I had same problem for libebus.

                    finally I had to copy libebus library from /usr/local/lib to /usr/lib to be used by ebusd-daemon

                    Kommentar


                      #11
                      another question:
                      I created /etc/ebus-daemon directory with a ebus-daemon.conf file, but it is not used; every time I had to pass the tty port to command line

                      Is corrected what I do?

                      Kommentar


                        #12
                        Zitat von modenet Beitrag anzeigen
                        another question:
                        I created /etc/ebus-daemon directory with a ebus-daemon.conf file, but it is not used; every time I had to pass the tty port to command line

                        Is corrected what I do?
                        Yes this is correct, the ebus-daemon has no configuration file for daemon settings at the moment.

                        Zitat von modenet Beitrag anzeigen
                        hi, I'm using Ubuntu 12.04.4 LTS (GNU/Linux 3.2.0-37-generic i686), all updated.

                        I would advise you that I had to comment the first line of configure.ac to use autogen.sh
                        # AC_PREREQ([2.69])
                        because last version of automake is: automake (GNU automake) 1.11.3; then I have no problem with make.
                        Which version of autoconf is installed?
                        Zitat von modenet Beitrag anzeigen
                        I had same problem for libebus.

                        finally I had to copy libebus library from /usr/local/lib to /usr/lib to be used by ebusd-daemon
                        /usr/local/lib to /usr/lib is my fault:

                        Just use ./autogen.sh like ./configure. With no argument configure use "/usr/local" as standard prefix. for example:

                        $ ./autogen.sh --prefix=/usr

                        Kommentar


                          #13
                          my autoconf is (automake GNU) 1.11.3

                          Kommentar


                            #14
                            I just removed the line with AC_PREREQ from configure.ac (libebus and ebus-daemon)

                            ---

                            automake != autoconf

                            on my laptop i use this versions.

                            media libebus # automake --version
                            automake (GNU automake) 1.13.4
                            ...
                            media libebus # autoconf --version
                            autoconf (GNU Autoconf) 2.69
                            ...

                            Kommentar


                              #15
                              excuse my error:
                              autoconf (GNU Autoconf) 2.68

                              Kommentar

                              Lädt...
                              X