Hi Leute!
Während ich auf die Geräte von Dom warte habe ich mir einen ESP32 Gateway aus teilen die ich schon habe gefrankensteint und soweit läuft das ding jetzt. Hab den OAM-IP-Router gecloned undd die v0_2_lwip branch ausgecheckt. Am schwierigsten war das LAN8720 Modul zur Kooperation zu überreden, aber auch das hab ich mit einer manuellen Konfiguration in der HardwareConfig->REG1.h hinbekommen, und diese mit einer neuen Umgebung in der platformio.custom.ini implementiert. Konnte das auch mehrmals neu compilieren bis es eben lief. Das Gerät bekommt nun eine IP und die ETS findet den IP Router, soweit so gut.
Nun habe ich das SEN-UP1-8xTH mit der v1 branch gecloned, einen pipico ebenso konfiguriert, dass er die notwendigsten geräte dran hat, compiled geflashed, soweit so gut.
Wenn ich jetzt aber den gleichen code von meinem IP Router repo kompillieren will kommt ein Fehler, und ich kann mir eigentlich nicht wirklich erklären warum. Versuche ihn natürlich (spoiler: erfolglos) zu beheben, aber schritt für Schritt, der Fehler:
Und hier beginnt der Spaß, ich find mir jetzt die einzelteile nicht mehr so leicht zusammen. Zuallererst frage ich mich, warum ist das INCREASE YOUR so wahnsinnig fett hervorgehoben. Die Frage ist natürlich sinnfrei, stellt sich mir aber dennoch in den Weg 😅
Also weiter zur ETS ApplicationVersion und den Link lesen:
ähh ok, wofür stand OAM nochmal? Es hagelt bei diesem Projekt nur so mit Abkürzungen, langsam wirds, aber es dauert, egal weiter -> wir brauchen die "OAM-Haupt-XML", da sind 6 stück, ich schätze die HauptXML wird die ohne Zusatz sein, also IP-Router.xml, Tatsächlich, die hat eine ApplicationVersion="5.0", machen wir 5.1, easy.
Das muss dann in meinem Fall wohl hier sein:
Aber warum aus 1.3 jetzt 18 machen? Ich hab da bestimmt was übersehen, nur was? Egal, wir folgen erstmal blind der Anweisung!
Und jetzt wirds Spannend:
Ok jetzt bin ich raus, ich hab jetzt nochmal versucht die Dokumentation, in der ich mich offengesagt eh schon eher schlecht zurecht finde, etwas darüber zu finden, wie ich mit dem OpenKNXproducer eine neue ETS-Applikation bauen soll, die doch schon längst gebaut sein müsste? Ich kann mit diesem Teil gerade leider gar nichts anfangen, und bin wieder zurück bei der Ausgangsfrage: Ich habe keinen Code geändert, ich habe nur noch einmal den Build-Button gedrückt, warum muss ich plötzlich so viel Tun, damit einfach eine neue Binary aus dem gleichen Code gebaut wird? Da muss doch irgendwo etwas anderes passiert sein, das ich nicht mitgeschnitten hab?
Bitte um Hilfe! Ich bin sicher, wenn ich das überstanden hab verstehe ich die Architektur einen großen Batzen besser 😅
Während ich auf die Geräte von Dom warte habe ich mir einen ESP32 Gateway aus teilen die ich schon habe gefrankensteint und soweit läuft das ding jetzt. Hab den OAM-IP-Router gecloned undd die v0_2_lwip branch ausgecheckt. Am schwierigsten war das LAN8720 Modul zur Kooperation zu überreden, aber auch das hab ich mit einer manuellen Konfiguration in der HardwareConfig->REG1.h hinbekommen, und diese mit einer neuen Umgebung in der platformio.custom.ini implementiert. Konnte das auch mehrmals neu compilieren bis es eben lief. Das Gerät bekommt nun eine IP und die ETS findet den IP Router, soweit so gut.
Nun habe ich das SEN-UP1-8xTH mit der v1 branch gecloned, einen pipico ebenso konfiguriert, dass er die notwendigsten geräte dran hat, compiled geflashed, soweit so gut.
Wenn ich jetzt aber den gleichen code von meinem IP Router repo kompillieren will kommt ein Fehler, und ich kann mir eigentlich nicht wirklich erklären warum. Versuche ihn natürlich (spoiler: erfolglos) zu beheben, aber schritt für Schritt, der Fehler:
Code:
You need to >>> INCREASE YOUR <<< ETS ApplicationVersion and manually synchronize op:verify of Common to 18 (see https://github.com/OpenKNX/OpenKNX/wiki/Versionierung-von-Modulen-(OFM)#fehler-vom-compiler )
Und hier beginnt der Spaß, ich find mir jetzt die einzelteile nicht mehr so leicht zusammen. Zuallererst frage ich mich, warum ist das INCREASE YOUR so wahnsinnig fett hervorgehoben. Die Frage ist natürlich sinnfrei, stellt sich mir aber dennoch in den Weg 😅
Also weiter zur ETS ApplicationVersion und den Link lesen:
1. im OAM-Haupt-XML die Applikationsversion des OAM zwingend erhöhen, damit in der ETS eine neue Version geladen werden muss.
2. im OAM-Haupt-XML die ModuleVersion im op:verify-Tag auf die Version setzen, die in der Meldung angegeben wurde (im Beispiel 25)
Code:
<op:define prefix="BASE" ModuleType="10" > <op:verify File="../lib/OGM-Common/library.json" ModuleVersion="1.3" /> </op:define>
Und jetzt wirds Spannend:
3. Mit dem OpenKNXproducer eine neue ETS-Applikation bauen und anschließend das Projekt neu compilieren.
Bitte um Hilfe! Ich bin sicher, wenn ich das überstanden hab verstehe ich die Architektur einen großen Batzen besser 😅
Kommentar