OutdoorRob Geschrieben November 24, 2023 at 10:51 Geschrieben November 24, 2023 at 10:51 Hallo Community Für ein Projekt möchte ich mehrere Bricklets auf einer gemeinsamen (selbst gerouteten) Platine vereinen, um einen für mein Gehäuse optimalen Aufbau zu erreichen. Es soll sich dabei um einen 1:1 Nachbau der Bricklets (Hardware + Firmware) handeln - nur eben kombiniert auf einer PCB. Ich habe mich durch die Doku gelesen und hier im Forum gesucht, jedoch leider noch nicht alle Antworten auf meine Fragen gefunden. Hier eine Zusammenfassung meines bisherigen Kenntnisstandes (sofern ich alles richtig verstanden habe, ansonsten bitte berichtigen :-) auf den neuen Bricklets befindet sich ein XMC1100 µC auf diesem µC läuft ein Bootloader und eine Firmware das Update der Firmware erfolgt normalerweise über den BrickViewer Für meinen Fall habe ich folgende Fragen: Mein Nachbau besitzt einen 'leeren' XMC1100. Wie wird der initiale Bootloader auf den µC programmiert? Gibt es die originalen Bootloader / Firmware-Dateien auch als .bin irgendwo zum Download? (Da ich die Firmware 1:1 verwenden möchte, bräuchte ich so nicht er die Build-Umgebung aufsetzen.) Danke schon mal vorab für alle Antworten auf meine (Anfänger-)Fragen Viele Grüße und einen tollen Start ins Wochenende, Robert Zitieren
photron Geschrieben November 24, 2023 at 12:49 Geschrieben November 24, 2023 at 12:49 Deine Erkenntnisse sind soweit korrekt. Es werden abhängig vom Bricklet verscheidene Mikrocontroller aus der XMC 1100/1300/1400er Serie verwendet. Diese Details sind aber nicht relevant in deinem Fall. On 11/24/2023 at 11:51 AM, OutdoorRob said: Mein Nachbau besitzt einen 'leeren' XMC1100. Wie wird der initiale Bootloader auf den µC programmiert? Ein Master Brick ab Hardware Version 3.0 kann unseren Bootloader auf einen leeren XMC flashen. Das kann allerdings dann nicht Brick Viewer, sondern du braucht das write_bootloader_and_firmware_to_comcu_bricklet.sh Script von hier https://github.com/Tinkerforge/flash-test Du brauchst dazu einen PC mit Linux und brickd (z.B. Ubuntu). Du schließt dein Bricklet an Port D einens Master Bricks 3.x an, schließt diesen Master Brick an den PC an und führst das write_bootloader_and_firmware_to_comcu_bricklet.sh Script aus. Dem gibts du als einziges Parameter den Pfad zur *.zbin Datei der Firmware für dein Bricklet mit. Diese kannst du unter https://www.tinkerforge.com/de/doc/Downloads.html herunterladen. ./write_bootloader_and_firmware_to_comcu_bricklet.sh bricklet_io16_v2_firmware_2_0_2.zbin Ich habe das jetzt recht knapp beschrieben. Falls das zu knapp war kann ich das auch in mehr Details beschreiben. Aber wenn du dich mit Linux auskennst, sollte das eigentlich reichen. Ansonsten frag bitte einfach. 1 Zitieren
OutdoorRob Geschrieben November 25, 2023 at 13:13 Autor Geschrieben November 25, 2023 at 13:13 Hallo Photron, vielen herzlichen Dank für die aufklärende und schnelle Antwort inkl. der Links! Ein echt klasse Support hier ☺️ Master Brick 3.2 & WSL vorhanden. Solide Anleitung - das klingt gut machbar. Und praktisch, dass man in einem Schritt Bootloader + Firmware flashen kann :) Wenn ihr hier nichts mehr von mir lest, dann hat alles geklappt (Kann aber noch eine Weile dauern - Projekt läuft gerade erst an.) Falls ich als Außenstehender bei dem Prozess auf Probleme stoße werde ich diese dann hier dokumentieren 👍 Zitieren
poohnet Geschrieben December 23, 2023 at 14:24 Geschrieben December 23, 2023 at 14:24 Moin @OutdoorRob, das ist eine coole Idee, die Funktionen mehrerer Bricklets zusammenzufassen. Ich könnte in der Tat auch eine Kombination aus "Industrial Digital In 4" und "Industrial Quad Relay" mit je zwei Ein- und Ausgängen gebrauchen. 🙂 Hast du schon eine BOM mit den Teilenummern der Komponenten, insbesondere dem Bricklet-Stecker (vielleicht kann @photron hier aber auch weiterhelfen)? Lässt du die Platine fertigen und bestücken oder machst du das auch selbst? Viele Grüße und schöne Weihnachtstage Thomas Zitieren
Luberk Geschrieben April 24, 2024 at 14:10 Geschrieben April 24, 2024 at 14:10 Guten Tag zusammen, ich habe das von @OutdoorRob vorgestellte Projekt mittlerweile übernommen und arbeite im Moment daran, wie oben beschrieben, den XMC zu flashen. Der Anleitung konnte ich soweit gut folgen, jedoch komme ich schließlich zu folgender Fehlermeldung: $ ./write_bootloader_and_firmware_to_comcu_bricklet.sh bricklet_io16_v2_firmware_2_0_2.zbin Connect Bricklet to port D on Master Brick Traceback (most recent call last): File "/home/lukas_b/flash-test-master/src/flash-test/plugin_system/xmc_flash_bootloader.py", line 164, in <module> xmc_flash_bootloader(sys.argv[1]) File "/home/lukas_b/flash-test-master/src/flash-test/plugin_system/xmc_flash_bootloader.py", line 107, in xmc_flash_bootloader raise Exception('Bricklet', 'Could not find program master') Exception: ('Bricklet', 'Could not find program master') Starting bootloader mode Could not find any Bricklet Am 24.11.2023 um 13:49 schrieb photron: ./write_bootloader_and_firmware_to_comcu_bricklet.sh bricklet_io16_v2_firmware_2_0_2.zbin Ich habe diesen Befehl an unserem selbstgebauten Bricklet und auch an einem IO-16 V2.0 Bricklet ausprobiert und komme jeweils auf oben genannte Meldung. Über den Brick viewer funktioniert das flashen des IO-16 einwandfrei. Ich wäre über jede Hilfe dankbar. Viele Grüße Lukas Zitieren
photron Geschrieben April 25, 2024 at 06:54 Geschrieben April 25, 2024 at 06:54 Das Skript sucht nach einem Master Brick Hardware Version 3, der alleine, oder der unterste in einem Stapel ist, kann aber keinen finden. An diesem Master Brick muss das zu flashende Bricklet an Port D angeschlossen sein. Brick Viewer kann alle Bricklets ann jeglichen Bricks flashen, kann aber nur die Firmware und nicht den Bootloader flashen. Wie ist dein Hardware-Aufbau? An was für einem Brick hast du das Bricklet angeschlossen? Zitieren
Luberk Geschrieben April 25, 2024 at 07:59 Geschrieben April 25, 2024 at 07:59 Vielen Dank für die Rückmeldung. Ich habe das Bricklet am Port D eines einzelnen MasterBrick 3.2 angeschlossen. Zitieren
Luberk Geschrieben April 26, 2024 at 07:29 Geschrieben April 26, 2024 at 07:29 90% der Probleme sitzen bekanntlich vor dem PC. Die Fehlermeldung ist behoben, ich hatte den USB Anschluss nicht in Linux eingebunden. Allerdings erhalte ich nun folgende Fehlermeldung: $ ./write_bootloader_and_firmware_to_comcu_bricklet.sh bricklet_io16_v2_firmware_2_0_2.zbin Connect Bricklet to port D on Master Brick Using Master 6aMFFF Schreibe Bootstrapper Schreibe Bootloader Errors: {'4'} Errors: {'4'} Errors: {'4'} Errors: {'4'} Errors: {'4'} Errors: {'4'} Errors: {'4'} Errors: {'4'} Errors: {'4'} Errors: {'4'} Timeout beim Bootloader schreiben Starting bootloader mode Could not find any Bricklet Zitieren
photron Geschrieben April 26, 2024 at 07:52 Geschrieben April 26, 2024 at 07:52 Fehler 4 bekommst du wenn du unsere IO-16 flasht, oder beim Flashen deiner selbstgebauten IO-16? Wenn es bei beiden auiftritt, dann hast du noch ein Problem im Flashprozess selbst. Wenn es nur bei deiner IO-16 auftriit, dann hast du vermutlich ein Hardwareproblem bei deiner IO-16. Zitieren
Luberk Geschrieben April 26, 2024 at 08:07 Geschrieben April 26, 2024 at 08:07 Das Problem tritt an der selbstgebauten IO-16 auf. Ich werde die Hardware noch mal kontrollieren. Zitieren
MatzeTF Geschrieben April 26, 2024 at 09:23 Geschrieben April 26, 2024 at 09:23 Hat dein selbstgebautes IO-16 eine eigene Stromversorgung? Zum Flashen muss der Master Brick das Bricklet mittels Power Cycle neustarten können, was mit zusätzlicher Stromversorgung nicht funktioniert. Zitieren
Luberk Geschrieben April 29, 2024 at 10:37 Geschrieben April 29, 2024 at 10:37 Am 26.4.2024 um 09:52 schrieb photron: Fehler 4 bekommst du wenn du unsere IO-16 flasht, oder beim Flashen deiner selbstgebauten IO-16? Wenn es bei beiden auiftritt, dann hast du noch ein Problem im Flashprozess selbst. Wenn es nur bei deiner IO-16 auftriit, dann hast du vermutlich ein Hardwareproblem bei deiner IO-16. Hi, es gab tatsächlich noch einen Hardwarefehler. Der wurde gelöst und nun hat es geklappt. Vielen Dank für die mühe und Hilfe. Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.