Ankündigung

Einklappen
Keine Ankündigung bisher.

ESP8266 KNX mit ETS

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

  • thewhobox
    antwortet
    Zitat von SirSydom Beitrag anzeigen
    Damit werden IDs > FF wahrscheinlich ebenso nicht funktionieren.
    Das war klar. Die Idee war auch eine modifizierte knx-master.xml in die Datei zu machen (natürlich auch eine große Version angeben, damit aktualisiert wird), in der der Hersteller 0xFF enthalten ist.
    Dann muss man aber wieder die Zip neu signieren.

    Einen Kommentar schreiben:


  • Ing-Dom
    antwortet
    Also ich hab nun mit Anpassungen im multiply-channels eine knxprod vom Hersteller FF und eine vom Hersteller 59 (Bosch Thermotechnik) erzeugt.
    Die von FF frisst die ETS nicht, da kommt "der Schüssel ist nicht enthalten blabla"..
    Die 59 nimmt die ETS und taucht im Katalog unter Bosch auf.

    => Fazit: die ETS aktzeptiert nur bekannte Hersteller. Damit werden IDs > FF wahrscheinlich ebenso nicht funktionieren.

    Einen Kommentar schreiben:


  • thewhobox
    antwortet
    Zitat von SirSydom Beitrag anzeigen
    Korrigiert mich, wenn das eine Fehlannahme war.
    Das mach ich sehr gerne :P
    Es wird nicht die Applikation selbstm, sondern der Ordner (und dessen Inhalt) Signiert mit einem Zertifikat, was in die ETS eingebaut ist.
    Was wichtig ist, dass in der Hardware.xml:
    Code:
    <Hardware Id="M-0083_H-391-0" Name="Taster 2-fach" SerialNumber="391" VersionNumber="0" BusCurrent="10" HasIndividualAddress="1" HasApplicationProgram="1" IsChocke="0" IsPowerLineRepeater="0" IsPowerLineSignalFilter="0" IsCable="0">
        <Products>
            <Product Id="M-0083_H-391-0_P-BE.2DTA5502.2E01" Text="BE-TA5502.01 Push button 2-fold" OrderNumber="BE-TA5502.01" IsRailMounted="0" DefaultLanguage="de-DE">
                <RegistrationInfo RegistrationStatus="Registered" />
            </Product>
        </Products>
        <Hardware2Programs>
            <Hardware2Program Id="M-0083_H-391-0_HP-0023-15-0000" MediumTypes="MT-0">
                <ApplicationProgramRef RefId="M-0083_A-0023-15-0000" />
                <RegistrationInfo RegistrationStatus="Registered" RegistrationNumber="0001/021" />
            </Hardware2Program>
        </Hardware2Programs>
    </Hardware>
    RegistrationStatus muss Registered sein (und nicht Certified wie bei echten Produktdatenbanken) und RegistrationNumber muss aus glaub HardwareId und ApplikationNumber bestehen.
    Nur wenn der RegistrationStatus Certified ist, gibt es auch das Atribut RegistrationSignature, welches dann mit dem Zertifikat des Herstellers abgeglichen.

    Zitat von SirSydom Beitrag anzeigen
    edit: wird wohl hieran liegen:
    Ich hab in meinem Fork das Problem schon gelöst, dann funktioniert das Tool mit jedem Hersteller.
    Sobald ich die Checks komplett habe mach ich ein Pull-Request auf.

    Einen Kommentar schreiben:


  • Ing-Dom
    antwortet
    Zitat von mumpf Beitrag anzeigen
    Ich hab keine Ahnung, ob das irgendwie verifiziert wird. Und noch weniger Ahnung, ob man sich wirklich als "fremde" Hersteller ausgeben sollte.
    ich DACHTE bisher, man muss sich als KNX A ausgeben weil der Zertifikat in der ETS mit dem die knxprod erzeugt/signiert wird vn der KNX A kommt.
    Korrigiert mich, wenn das eine Fehlannahme war.

    Ich hab mal eben bei meinem SNS-8xTH "M-00FA" druch "M-00FF" ausgetauscht. Kommt ja in jeder ID vor.
    Das Ergebnis war erstmal, das multiply-channels dann mit Fehler aussteigt:

    Code:
    MultiplyChannels 3.2.1.0
    Processing xml file SNS-8xTH.xml
    Processing include SNS-8xTH.xml
    Processing include Sensorchannel.share.xml
    Processing include Sensorchannel.templ.xml
    - Final parameter size is 426
    - ApplicationNumber: 1, ApplicationVersion: 1, old ID is: M-00FF_A-0000-00-0000, new (calculated) ID is: -0001-01-0000
    - RegistrationVersion is: 0001/11
    
    Sanity checks...
    - Id-Uniqueness... OK
    - Id-R_Suffix-Uniqueness... OK
    - RefId-Integrity... OK
    - ParamRefId-Integrity... OK
    - TextParameterRefId-Integrity... OK
    - SourceParamRefRef-Integrity... OK
    - TargetParamRefRef-Integrity... OK
    - ParameterType-Integrity... OK
    - Union-Integrity... OK
    - Parameter-Name-Uniqueness... OK
    - Parameter-Value-Integrity... OK
    - ParameterRef-Value-Integrity... OK
    - ComObject-Name-Uniqueness... OK
    - ComObject-Number-Uniqueness... OK
    - Id-Namespace...
    --> -0000-00-0000 of node CatalogItem SNS-8xTH is in a different namespace than application namespace -0001-01-0000
    --> -0000-00-0000 of node CatalogItem SNS-8xTH is in a different namespace than application namespace -0001-01-0000
    --> -0000-00-0000 of node Hardware2Program is in a different namespace than application namespace -0001-01-0000
    - Id-Format... OK
    - Serial number... OK
    - Application data... OK
    Writing debug file to SNS-8xTH.debug.xml
    Writing header file to SNS-8xTH.h
    --> Skipping creation of SNS-8xTH.knxprod due to check errors! <--

    irgendwas geht da schief bei der Anpassung der IDs


    edit: wird wohl hieran liegen: https://github.com/mumpf/multiply-ch...nclude.cs#L340
    Zuletzt geändert von Ing-Dom; 02.12.2021, 11:00.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    The flash button should be the programming button for nodemcu. There should be a debug message on the serial console and a led should blink of turn on if the programming mode of the device is active.

    Einen Kommentar schreiben:


  • richardpub
    antwortet
    Zitat von thesing Beitrag anzeigen

    Just press the non-reset button off the NodeMCU. It works as the programming button in knx-demo.
    what do you mean by the non-reset button ??
    on the left of the usb socket I have a button noted RST and on the right the Flash button.
    is the non-reset button the programming button for ETS5?
    If so, is there a specific way to use it ????

    I don't understand why it doesn't work anymore.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Zitat von richardpub Beitrag anzeigen
    Sorry for the translation problems from French to German, so I will double this post by its English version for a better understanding:

    now I have managed to generate working .knxprod files with Createknxprod.

    I went back to Thelsing's example file "knx-demo.ino" to download it to an ESP8266 NodeMCU that I used as a test before I got stuck with the .knxprod files.

    Unfortunately, I am no longer able to complete the download from ETS5.
    What should I do once my ESP8266 NodeMCU is flashed and connected to my WIFI network.
    What should I do when ETS5 asks me to press its programming button

    Regards
    Just press the non-reset button off the NodeMCU. It works as the programming button in knx-demo.

    Einen Kommentar schreiben:


  • thesing
    antwortet
    Zitat von mumpf Beitrag anzeigen
    Aber im deviceObject.h steht
    Code:
    uint16_t _manufacturerId = 0xfa; //Default to KNXA
    Ich hab keine Ahnung, ob das irgendwie verifiziert wird. Und noch weniger Ahnung, ob man sich wirklich als "fremde" Hersteller ausgeben sollte.

    Gruß, Waldemar
    AFAIK muss das nur zu dem Hersteller in der Produktdatenbank passen. Sonst nichts. Sich als anderer bestehender Hersteller auszugeben mach IMO Sinn wenn man eine bestehende Produktdatenbank benutzen will. Dann baut man quasi ein Gerät nach. So funktionieren die Geräte von Selfbus größtenteils.

    Einen Kommentar schreiben:


  • thewhobox
    antwortet
    Zitat von mumpf Beitrag anzeigen
    "fremde" Hersteller
    Man gibt sich dann ja nicht als fremder aus, sondern als neuer Hersteller mit einer ID über 0xFFFF
    War ja auch nur ne Idee^^

    Einen Kommentar schreiben:


  • mumpf
    antwortet
    Aber im deviceObject.h steht
    Code:
        uint16_t _manufacturerId = 0xfa; //Default to KNXA
    Ich hab keine Ahnung, ob das irgendwie verifiziert wird. Und noch weniger Ahnung, ob man sich wirklich als "fremde" Hersteller ausgeben sollte.

    Gruß, Waldemar

    Einen Kommentar schreiben:


  • thewhobox
    antwortet
    Nein es geht jede meine ich.
    hab mir mal ein Programm geschrieben, dass den Hersteller in Produktdatenbanken austauscht.
    Da mein Jung Taster immer als andere Hersteller erkannt wurde. Da hab ich die dazugehörige Applikation umgeändert und es wurde wunderbar importiert.

    Hab grad keine ETS da, sonst würde ich das kurz mit ner eigenen Produktdatenbank testen.

    Einen Kommentar schreiben:


  • Ing-Dom
    antwortet
    ich dachte es geht nur die Hersteller ID <Manufacturer RefId="M-00FA"> ??
    Da war doch was? Hab nie was anderes getestet...

    Einen Kommentar schreiben:


  • richardpub
    antwortet
    Sorry for the translation problems from French to German, so I will double this post by its English version for a better understanding:

    now I have managed to generate working .knxprod files with Createknxprod.

    I went back to Thelsing's example file "knx-demo.ino" to download it to an ESP8266 NodeMCU that I used as a test before I got stuck with the .knxprod files.

    Unfortunately, I am no longer able to complete the download from ETS5.
    What should I do once my ESP8266 NodeMCU is flashed and connected to my WIFI network.
    What should I do when ETS5 asks me to press its programming button

    Regards

    Einen Kommentar schreiben:


  • richardpub
    antwortet
    jetzt habe ich es geschafft, funktionierende .knxprod-Dateien mit Createknxprod zu generieren.

    Ich ging zurück zu Thelsings Beispieldatei "knx-demo.ino", um sie auf eine ESP8266 NodeMCU herunterzuladen, die ich als Test verwendet habe, bevor ich mit den .knxprod-Dateien hängen blieb.

    Leider kann ich den Download aus der ETS5 nicht mehr abschließen.
    Was soll ich tun, wenn mein ESP8266 NodeMCU geflasht und mit meinem WIFI-Netzwerk verbunden ist.
    Was soll ich tun, wenn die ETS5 mich auffordert, ihre Programmiertaste zu drücken?

    Grüße
    Zuletzt geändert von richardpub; 30.11.2021, 11:53.

    Einen Kommentar schreiben:


  • thewhobox
    antwortet
    So, es ist Mittag und ich hab mal wieder eine meiner Verrückten Ideen xD

    Ich hab letztens mal ausversehen eine hersteller ID von 0xFFFFFFFF angegeben. Lustiger weiße ging das durch den Converter der ETS.
    Ich hab es noch nicht in die ETS importiert. Aber vll mag das mal einer Testen?
    Dann könnte man auch eine eigene knx_master.xml anlegen und neue Hersteller IDs die größer als 0xFFFF sind vergeben.
    Das würde viele Probleme lösen.

    Gruß Mike

    Einen Kommentar schreiben:

Lädt...
X