Tronxy X5SA 2021 Marlin installieren

Author:

Wie bekommt man eigentlich eine neue Firmware auf den Tronxy X5SA?

Diese Anleitung bezieht sich auf das Tronxy Mainboard V6 (CXY-V6-191017) mit einem STM32F103 Chip und der Tronxy Firmware X5SA-V1.19 Colorful 0.8.

Bevor ihr anfangt eine neue Firmware zu flashen prüft ihr als erstes welche Boardversion ihr habt und welche Firmware vorinstalliert ist.

Hier hat mir das Video von Darkwulf1986 sehr weitergeholfen.

Was wir brauchen:

  • alten Bootloader (zB bei Darkwulf auf Github zu finden)
  • STM32Cube Programmer (hier muss man leider eine Mailadresse angeben, dafür läuft das Tool nicht nur auf Windows und Mac sondern auch auf Linux)
  • die neue Firmware als .bin-Datei

Sichern der alten Firmware

Ich hatte erst überlegt es nicht zu machen, war dann aber nach dem ersten Fehlversuch sehr froh, dass ich mir ein Backup gezogen hatte.

Als erstes wird STM32CubeProgrammer gestartet.
Netzstecker vom Drucker trennen. Wir wollen keine 230V in der Nähe unserer Hände.
Nun müsst ihr auf dem Mainboard den Jumper bei „Boot“ abziehen und den Jumper bei „5V“ auf „USB“ umstecken.
Jetzt habt ihr das Board im Flashmodus und könnt es per USB-Kabel an den PC anschließen.

Im STM32CubeProgrammer wählt ihr nun rechts „UART“. Bei Port muss derjenige ausgewählt werden an dem ihr euer Board angeschlossen habt. (Dazu zB die Liste an möglichen Ports vorm Anschließen und nach dem Anschließen vergleichen. Der neu hinzugekommene Port muss der sein an dem das Mainboard hängt.)
Unter Device Info sollten nun Informationen zum Chip erscheinen.

Oben Links wird die Adresse „0x80000000“ eingestellt und die Size auf 512kB („0x80000“) eingestellt.
Das ist der Bereich auf dem Chip in dem sich die Firmware befindet.

Mit „Read“ lest ihr nun den Inhalt des Bereichs aus.
Der Pfeil rechts neben diesem Button lässt euch die Firmware nun auf eurem PC speichern.
War dies erfolgreich ist die Datei entsprechend 512kB groß.

Flashen des Bootloaders

Im Tab „Device memory“ des STM32CubeProgrammers sieht man die Daten des Bootloaders aber Adresse „0x80000000“ gefolgt von der Firmware.
Getrennt sind die beiden durch einen längeren Bereich in dem die Spalten 0, 4, 8 und C nur mit F gefüllt sind.
Bei den älteren Boards hört dieser Bereich bei 0x08008800 auf. Bei mir erst später.

Daher ist es notwendig den oben verlinkten Bootloader zu flashen.
Dazu geht man links auf „Erasing & Programming“.

Bei „File Path“ wählt man die Bootloader-Datei aus.
„Start address“ wird auf 0x80000000 gesetzt.
„Verify programming“ sollte aktiviert sein.
Ebenso „Full chip erase“ und „Download file“.

Habt ihr alles richtig eingestellt könnt ihr auf „start automatic mode“ den Flashvorgang starten.

Hat dies funktioniert kann nun die eigentliche Firmware aufgespielt werden.

Flashen der neuen Firmware

Im Grunde funktioniert dies genau so wie beim Bootloader.
„Start address“ muss jetzt aber auf 0x08008800 eingestellt werden sonst überschreiben wir den Bootloader.
„File Path“ ist eure firmware.bin.

„Verify programming“ sollte aktiviert sein.

Der Flashvorgang dauert ein paar Minuten.
Es erscheint dann ein PopUp mit der Erfolgsmeldung.

Backup wiederherstellen

Sollte etwas schiefgelaufen sein könnt ihr das Backup wieder herstellen.
Dazu links auf „Erasing & Programming“ gehen.
Bei „File Path“ wählt ihr euer Backup aus.
Die „Start address“ wird auf 0x80000000 gesetzt.
„Verify programming“ sollte aktiviert sein.

Der Flashvorgang dauert ein paar Minuten.
Es erscheint dann ein PopUp mit der Erfolgsmeldung.

Ergebnis prüfen

Nachdem ihr mit Flashen fertig seid, geht ihr oben rechts im STM32CubeProgrammer auf disconnect.
Nun könnt ihr das Mainboard vom PC trennen.
Die Jumper werden wieder auf „Boot“ und von „USB“ zurück auf „5V“ gesetzt.

Schließt den Drucker wieder am Strom an und schaltet ihn ein.

Er sollte nun wie gewohnt booten und die neue Firmware zeigen.

Sollte etwas nicht wie erwartet funktionieren spielt das Backup wieder ein oder flasht eine andere Firmware.
Hilfreich ist es mit zB Octoprint Test-Befehle an den Drucker zu senden.
Mit M119 könnt ihr zB den Status der Endstops anzeigen lassen.

Um die Funktionalität der Endstops zu prüfen, haltet einen davon gedrückt und sendet den M119 Befehl ab.
Die Ausgabe sollte sich ensprechend verändern.
So könnt ihr schon vorm Homing sicherstellen, dass die Endstops funktionieren und der Drucker nicht versucht durch die Endstops hindurchzufahren.

Aktuelle 3D Drucker Deals