Ankündigung

Einklappen
Keine Ankündigung bisher.

Vorstellung: Baccata - Programm zum editieren und programmieren von KNX Projekten

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

    Vorstellung: Baccata - Programm zum editieren und programmieren von KNX Projekten

    Hallo zusammen,

    ich wollte euch mal mein aktuelles Projekt vorstellen: Baccata
    Es ist ein Programm zur Inbetriebname und Parametrisierung von KNX-Projekten. Aktuell ist es noch in einer sehr frühen Entwicklungsphase, allerdings habe ich bei mir zu Hause bereits alles umgezogen und benutze ETS kaum noch.
    Warum nicht mit ETS einfach weitermachen? Ich benutze nur Mac oder Linux Zuhause und meine Windows VM die ich nur für ein einziges Programm habe, was dann auch noch träge und unhandlich ist, loswerden zu wollen, hat mich motiviert. Ausserdem ist offene Software immer besser. 😅
    Hier erstmal eine Übersicht von aktuellen Stand:
    mn.png
    Das UI ist recht einfach aufgebaut, aber trotzdem für mich funktional. Die Geräte je Projekt sind einfach in einer Liste, es gibt keine vordefinierte Topologie oder Gebäudebereiche. Stattdessen können einfach beliebige Tags erstellt und den Geräten zugewiesen werden. So ist man frei in seiner Projektorganisation. Die Einstellungen und Parameter sollten bekannt aussehen, sie sind aus den .knxprod dateien erzeugt. Die gesamte Ansicht lässt sich auch ausschliesslich mit der Tastatur bedienen.

    Was funktioniert bereits?
    • Einlesen von .knxprod dateien
    • Inbetriebnahme des Interfaces sowohl mit secure commissioning als auch secure tunneling, Änderungen von Passwörtern etc.​​​
    • Applikationen und Adressen auf Geräte programmieren, bei direkt verbundenem Interface oder gescanntem Zertifikat auch ohne Programmierbutton.
    • Inbetriebnahme von Geräten mit KNX secure, auch verschlüsselte Gruppenadressen (Data Secure) und deren Anzeige im Bus Monitor
    • Das Programmieren ist bidirektional, ich kann ein Gerät lesen und das Projekt übernimmt die Parametrisierung des Geräts. Eventuell fehlende GA werden ergänzt.
    • Scannen von Gerätezertifikaten mit Webcam. Am Mac ist ganz angenehm dass man auch das Iphone wählen kann und dann damit QR Codes an Geräten im Schaltschrank scannen kann.
    ip.png
    Was funktioniert (noch) nicht?
    • USB-Interfaces. Ich habe einfach keins zum Testen
    • das Parametriesieren von Geräten die kein knxprod zur Verfügung stellen, wie zum Beispiel (manche?) Produkte von Esylux. VD4 bleibt wahrscheinlich unsupported.
    • Eventuell alle Geräte die ich nicht testen konnte

    Was sind die aktuellen Grenzen?
    Mir fehlen einfach mehr Geräte zum Testen und das Programm daran Anzupassen. Meine getesteten Geräte an denen die funktionierenden Features definiert sind:
    • Weinzierl IP Interface 732
    • Theben Cheops S
    • Gira Schaltaktor 24-Fach
    • MDT Binäreingang UP 2-fach/6-fach
    Wie benutze ich das Programm?

    Das Programm ist in Python/PySide6 geschrieben und sollte Cross Platform auf Mac/Linux/Windows funktionieren. UV ist der Projektmanager und Vorraussetzung das Programm direkt zu öffnen. Dann Repo clonen und "uv run baccata".
    Alternativ habe ich für Mac und Windows zwei Pakete erzeugt. Windows ist allerdings ungetestet und die Mac Version nicht signiert d.h. man muss opt + RMP + öffnen und dann ein paar mal in den Einstellung unter Privatsphäre und Sicherheit erlauben.

    KI-Disclaimer: Teile des Projekts inkl. dem Logo wurden durch KI erzeugt.

    Und noch ein Disclaimer: Benutzen auf eigene Gefahr. Wenn z.B das schreiben der Schlüssel für secure schiefgeht, kann eventuell das Gerät nicht mehr zurückgeholt werden. Mir ist sowas noch nicht passiert, aber es kann in Theorie passieren.

    Wenn jemand sich für das Projekt interessiert, mitmachen oder beim testen helfen möchte würde mich das sehr freuen.

    Ich bin auf eure Reaktionen, Meinungen oder Anregungen gespannt.

    Viele Grüße,

    Louis

    #2
    Hallo Louis,

    ich bin beeindruckt!
    Hast du konkrete "Testaufgaben"?

    Gruß,
    Hendrik

    Kommentar


      #3
      … und ich bin erstmal skeptisch.

      Neuer User (mit drei Beiträgen von denen 2 nicht auffindbar sind), neues Github Konto und mal eben eine open source ETS Alternative entwickelt?

      Ich würde das nicht in echten Umgebungen/ Installationen testen.

      Aber jeder fängt mal klein an, weiterhin viel Erfolg!

      Kommentar


        #4
        jcd Die Bilder zählen als Beitrag.

        Bekommst du eine .knxproj Datei geschrieben und hast du getestet, ob sie mit einer neuen ETS 6.4.x geht? Ansonsten kann es passieren, dass du ohne dein Programm das Projekt rekonstruieren musst.
        Gruß Florian

        Kommentar


          #5
          Und ganz wesentlich, wie kommt das Programm an den KNXA Katalog für knxprod Datenbanken?

          Da die nächsten ETS Versionen ja ihre Datenbanken nur noch aus dem Online Katalog beziehen werden und ein externer Import nicht mehr funktionieren wird, ist das Prinzip eine Datenbankdatei als Basis zu benutzen nicht nachhaltig.

          Die Vergabe von freien Tage ist Fluch und Segen zu gleich, sowie bei der Erfassung keine Assistenz mit läuft, da man sonst schnell dazu neigt gleichartiges mit leicht verschiedenen Worten zu schreiben und damit leidet dann der Mehrwert dieser Tags.

          Insofern haben Baumstrukturen auch ihre Vorteile, weil die Zuordnung wiederholgetreu wird.

          Eine Kompatibilität des Outputs mit einer aktuellen ETS ist wirklich zwingend erforderlich. Anderenfalls ist die Anlage quasi nicht dokumentiert und funktional. Wie Florian es notierte. Einem gewerblichen Anbieter bleibt dann nur eine Rekonstruktion.
          ----------------------------------------------------------------------------------
          "Der Hauptgrund für Stress ist der tägliche Kontakt mit Idioten."
          Albert Einstein

          Kommentar


            #6
            Zitat von gbglace Beitrag anzeigen
            Da die nächsten ETS Versionen ja ihre Datenbanken nur noch aus dem Online Katalog beziehen werden und ein externer Import nicht mehr funktionieren wird
            Dann wäre aber auch eine Rekonstruktion - zumindest älterer - Projekte nicht mehr möglich.
            Es geht doch nur um die Hersteller, die bislang immer die Zertifizierung einer Applikation „vergessen“ haben.

            Kommentar


              #7
              Soweit ich es mitbekommen habe, wurden bisher mehrere Aussagen von Mitarbeitern der KNXA geäußert, dass der Import Button in der ETS7 verschwinden soll...

              Ist nur die Frage, ob sie das lange durchhalten. Nicht so wie bei der ETS Inside...

              b0bs0n das mit dem secure: du kannst die Geräte auch auf Werkseinstellungen zurück setzen, dann funktioniert wieder der FDSK.
              Die ETS erkennt, ob ein Gerät zurück gesetzt wurde.
              ​​​​​​
              Es gibt bereits ein Projekt, die ETS unter Linux und macos Mithilfe von wine zum Laufen zu bringen.
              Das erscheint mir aktuell die bessere Methode zu sein, in Hinblick auf Lebenszeit und Kompatibilität.
              OpenKNX www.openknx.de | Kaenx-Creator | Dali-GW

              Kommentar


                #8
                Hallo,
                vielen Dank für eure Rückmeldungen/
                Zitat von jcd Beitrag anzeigen
                Ich würde das nicht in echten Umgebungen/ Installationen testen.
                Ich auch nicht, das war erstmal nur für mich und dann dachte ich evtl. haben auch andere Interesse daran.

                Und das mit den Datenbanken ist wirklich ein Problem. Der Online Katalog ist ja nicht wirklich öffentlich zugänglich. Das heißt aktuell muss man sich die Datenbanken einzeln raussuchen und importieren. Privat habe ich zum verifizieren des Parsers die großen Hersteller gescraped und habe jetzt lokal ca. 4500 Applikationen.
                Die sind aber ohne Lizenz veröffentlicht, und soweit ich das verstehe bedeutet dass, das eine Weitergabe nicht erlaubt ist.

                Das der Import deaktiviert werden soll war mir nicht bewusst. Ich glaube aber kaum dass die Hersteller ihre Datenbanken sofort offline nehmen?
                Das würde ja das System noch geschlossener machen als es jetzt schon ist.

                Zitat von thewhobox Beitrag anzeigen
                b0bs0n das mit dem secure: du kannst die Geräte auch auf Werkseinstellungen zurück setzen, dann funktioniert wieder der FDSK.
                Die ETS erkennt, ob ein Gerät zurück gesetzt wurde.​
                Das habe ich in den packet captures gesehen, wenn die ETS secure bei einem Gerät deaktiviert, wird ein Werksreset durchgeführt und danach Adresse und Programm neu geschrieben. Baccata macht das aktuell anders und überschreibt nur die Schlüssel und für Secure verantwortlichen Speicherbereiche. Hat die Variante von ETS dort einen Vorteil? Und der reset funktioniert bei einem gesicherten Gerät doch nur, wenn der aktuelle Schlüssel bekannt ist, oder kann ich auch gesicherte Geräte einfach zurücksetzen?

                Zitat von Beleuchtfix Beitrag anzeigen
                Bekommst du eine .knxproj Datei geschrieben und hast du getestet, ob sie mit einer neuen ETS 6.4.x geht? Ansonsten kann es passieren, dass du ohne dein Programm das Projekt rekonstruieren musst.
                Ein .knxproj export funktioniert noch nicht, aber ein import sollte jetzt gehen. Allerdings nur getestet mit ETS 6.3.x

                Dadurch wurde auch das testen/mithelfen vereinfacht.
                Erstmal gibt es jetzt eine Übersicht, die zeigt was unterstützt, getestet oder noch nicht unterstützt ist. Wenn da irgendwelche wichtigen Produkte fehlen sagt einfach bescheid. Und "supported" bedeutet nicht unbedingt, dass tatsächlich alles funktioniert, sondern dass baccata glaubt, es zu unterstützen.

                Zusätzlich hat die "verify" Funktion jetzt am Ende die Möglichkeit einen Bericht zu erzeugen und daraus ein Github Issue.
                Screenshot 2026-09-05 at 10.07.20.png
                Das sollte dann wenn erfolgreich in die Produktliste übernommen werden.
                Bei verify wird nichts auf das Gerät selbst geschrieben, nur gelesen und mit dem selbst erzeugten Programm verglichen.

                Auf der Seite lässt sich auch nach noch nicht unterstützten Geräten und Programmiermasken filtern. Falls mir da jemand einen Wireshark Mitschnitt von einem vollständigen Download, eventuell auch secure aktivierung und deaktivierung bereitstellen könnte wäre ich sehr dankbar.

                VG

                Kommentar

                Lädt...
                X