Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Ich hab jetzt mal rumprobiert...
Auch mit geänderter knx_master.xml kommt die gleiche Fehlermeldung.
Meine Vermutung: Die Datei ist Signiert und wird einfach verworfen, wenn die Signatur nicht passt
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.
I think I'll have to go through the analysis of the "thesing" code in order to see at what level during the total download in ETS5, and its request for action on the programming button of the ESP8266 is read for understand why the action on my ESP8266 is not working.
Can you tell me at what level of code is this done ???
Can someone who has functionally used "knx-demo" with an ESP8266 and ETS5 give me any advice?
Otherwise I think I'll have to leave with a code from knx-demo, totally new from Github.
Regarding the Problems with ESP and ETS5: i´ve successfull loaded applications into esp with the knx-demo example.
Sometimes i had the same problems like you - the device is not recognized by ETS. Most of the time it was caused by bad Powersupply or unknown connection-/routing-problems (solved by restarting ETS / hole PC).
Es gab hier schon einige Beiträge zuvor Diskussionen darüber, welche Möglichkeiten es gibt, das laden einer falschen Applikation auf ein Gerät zu verhindern.
In der AN 157 Seite 10 - "Pre-download verification step" für 57B0 habe ich nun Infos dazu gefunden, welche Verifikationsschritte die ETS von sich aus durchführt, bevor eine Applikation geladen wird.
Zum einen wir der Device Descriptor Type 0 ausgelesen (ich gehe davon aus, dass hier dinge wie die Maskenversion geprüft werden)
Zum anderen wird der Manufacturer Identifier geprüft.
Soweit so gut, das konnte ich über das setzen eines anderere Herstellers verifizieren.
Interessant wird es ab hier:
A list of additional Resources of which the value of the installed device and the value stored in the project for the device that it indends to configure shall be identical. For System B these shall be the Properties PID_ORDER_INFO (identical), PID_VERSION (identical or higher), and PID_HARDWARE_TYPE (identical) of the Device Object. The comparison is against the product data (parameter value in Application Program); if no such parameter exists the comparison shall be skipped.
Ich konnte die Parameter PID_VERSION, HARDWARE_TYPE und ORDER_INFO in der knxprod allerdings noch nicht erfolgreich zuordnen. Hat hier jemand Ideen, wie diese mit der knxprod korrespondieren?
Ich konnte die Parameter PID_VERSION, HARDWARE_TYPE und ORDER_INFO in der knxprod allerdings noch nicht erfolgreich zuordnen.
Hallo Michael,
Die Themen hatten wir schon bei Post 1002
Das sind Propertys und die werden nicht in der Knxprod festgelegt.
Du musst sie über den KNX Stack festlegen.
In der Ladeprozedur kannst du diese Propertys dann abfragen.
Die Themen hatten wir schon bei Post 1002
Das sind Propertys und die werden nicht in der Knxprod festgelegt.
Du musst sie über den KNX Stack festlegen.
In der Ladeprozedur kannst du diese Propertys dann abfragen.
Gruß Mike
Hi Mike,
Danke für deine Antwort und deine Recherche dazu.
Prinzipiell funktioniert das so wie von dir angegeben, mich hat nur die Application Note stuzig gemacht, da das die ETS meines erachtens bereits im Bauch haben sollte:
ETS shall verify if it is allowed to load the data into the device right at the start and outside of the Configuration Procedure implementation. This includes:
- Reading the Device Descriptor Type 0 from the installed device and verifying whether it is identical to or compatible with the Device Descriptor of the device that it holds in its project information and that it intends to configure.
- Reading the Manufacturer Identifier from the installed device and verifying whether it is identical to or compatible with the Manufacturer Identifier of the device that it holds in its project information and that it intends to configure.
- A list of additional Resources of which the value of the installed device and the value stored in the project for the device that it indends to configure shall be identical. For System B these shall be the Properties PID_ORDER_INFO (identical), PID_VERSION (identical or higher), and PID_HARDWARE_TYPE (identical) of the Device Object. The comparison is against the product data (parameter value in Application Program); if no such parameter exists the comparison shall be skipped.
Dazu müssten die Sollwerte aber dann irgendwo im Projekt/der knxprod definiert werden.
Aber da ich hier noch auf keinen grünen Zweig gekommen bin, werde ich es vorerst so machen, wie von dir vorgeschlagen.
Die ETS fragt hier die Propertys 4/13 ab, was glaub der PID_Apllication entspricht.
Wenn der Wert, der vom Geräte zurück kommt, nicht den Daten von InlineData entspricht, wird die Übertragung abgebrochen.
Das Antworten auf einen PropertyReadReq übernimmt hier der Stack von thesing.
Das gleiche gilt für den DeviceDescriptorRead (welcher nur die Maskenversion zurück gibt, die in der knxprod ebenfalls angegeben ist) und den PID_Manufacturer (der ja auch in der knxprod angegeben ist)
PID_Orderinfo ist in der Hardware.xml
PID_HardwareType musst du im Stack selbst festlegen.
My .ino file on ESP8266 and the corresponding .knxprod file have finally uploaded to ETS5 and everything is working.
However nothing worked since yesterday, and whereas I had succeeded 4 months ago.
I just restarted my PC and ETS5. And I updated the firmware of my Wifi point.
I don't really like it when it works without understanding why.
At least that proves that the program can run on an ESP8266, without touching my network.
It's already reassuring ....
ich habe aktuell einen ESP8266 mit esp-easy, welcher per MQTT ein Kommando annimmt und dann einen Analog-Output auf den empfangenen Wert setzt.
Leider ist das WLan dort schlecht und der re-connect von esp-easy funktioniert nicht zuverlässig.
Kurzum: Ich möchte etwas mit (KNX) Kabel machen.
Ich sehe aber nicht, wo der code erfährt, ob er selbst eine IP-Verbindung herstellen muss, oder über TP arbeitet (und dann: über welche Serielle Schnittstelle).
Wenn du den esp mit TP betreiben willst must du MASK_VERSION auf 0x57B0 via #define. Keine Ahnung ob die arduino ide das inzwischen gelernt hat. Sonst kannst du auch platform.io nutzen.
mumpf Er hat den CreateKnxProd von thesing verwendet. Das Tool ist ja archiviert.
Vll sollten wir dort (in der Readme vom Stack) ein Link auf den entsprechenden Wiki Eintrag machen mit den aktuellen Tools.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar