Image flashen
Ein System-Image als Wiederherstellungsmaßnahme auf das Zielsystem aufspielen.
Das Flashen eines Images ist für die Wiederherstellung vorgesehen, wenn das System nicht mehr startet oder ein Update über RAUC nicht möglich ist. Für reguläre Updates sollte RAUC verwendet werden.
Voraussetzungen
flashlayout.tsvaus dem qdCoreX-Systemrepository- alle in
flashlayout.tsvreferenzierten Images - eine stabile Stromversorgung mit 24 V / 500 mA
- ein USB-C Kabel zum Programmieren, eingesteckt an der Buchse „USB Client“
- STM32CubeProgrammer
Gehäuse öffnen
Für den Recovery-Vorgang muss das Gehäuse geöffnet werden, damit der DIP-Schalter S1 erreicht und umgestellt werden kann.
Host vorbereiten
Installiere STM32CubeProgrammer nach der Installationsanleitung von ST.
Unter Linux benötigt STM32CubeProgrammer Zugriff auf das USB-Gerät. Installiere anschließend die von
ST mitgelieferten udev-Regeln aus dem Verzeichnis Driver/rules der Installation:
sudo cp [STM32PROGRAMMER-PFAD]/Driver/rules/*.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm triggerDie Regeln werden auf dem Host installiert; das Flash-Programm selbst wird danach ohne sudo
ausgeführt. Ziehe das USB-C-Kabel anschließend ab und verbinde es erneut.
Flash-Dateien bereitstellen
Lege flashlayout.tsv und alle darin referenzierten Images in einem Arbeitsverzeichnis ab. Die
Images stammen aus dem Buildroot-Build oder aus [IMAGE-ABLAGE-ODER-DOWNLOAD].
[RECOVERY-VERZEICHNIS]/
├── flashlayout.tsv
├── [IMAGE-1]
├── [IMAGE-2]
└── ...Die Dateinamen und Pfade in flashlayout.tsv müssen zu den vorhandenen Dateien passen. Verwende nur
die zum selben qdCoreX-/Buildroot-Stand gehörenden Dateien.
Recovery durchführen
-
Schalte das System aus.
-
Setze alle drei Schalter des DIP-Schalters S1 auf ON. Dadurch wird der UART/USB-Boot aktiviert (siehe Abbildung).
-
Verbinde das USB-C-Programmierkabel mit der Buchse „USB Client“.
-
Schalte die Versorgung ein. Das System startet im Monitor-Modus und wartet auf Eingaben über USB. Ein Druck auf die Reset-Taste genügt häufig ebenfalls; falls das Gerät nicht erkannt wird, schalte die Versorgung aus und wieder ein.
-
Prüfe, ob der Host das Gerät im USB-/DFU-Modus erkennt:
[STM32PROGRAMMER-PFAD]/bin/STM32_Programmer_CLI --list usbDer Befehl muss das angeschlossene Gerät auflisten. Wenn kein Gerät erscheint, siehe Fehlerbehebung.
-
Schreibe und verifiziere das vollständige Image:
[STM32PROGRAMMER-PFAD]/bin/STM32_Programmer_CLI -c port=usb1 -d flashlayout.tsv

Ersetze [STM32PROGRAMMER-PFAD] durch den Installationspfad von STM32CubeProgrammer. Führe den
Befehl in dem Verzeichnis aus, in dem flashlayout.tsv liegt, oder gib für die TSV-Datei einen
absoluten Pfad an. Die Datei beschreibt das vollständige Flash-Layout einschließlich TF-A, OP-TEE,
U-Boot, Partitionstabelle und den Images für die Partitionen.
Flash-Ergebnis prüfen
Nach einem erfolgreichen Flash-Vorgang sollte STM32CubeProgrammer den Abschluss ohne Fehler melden. Die genaue Erfolgsmeldung und eine zusätzliche Prüfung werden noch ergänzt.
Normalbetrieb wiederherstellen
Nach dem erfolgreichen Flashen:
- Schalte die Versorgung aus.
- Setze den mittleren Schalter von S1 auf OFF. Die beiden äußeren Schalter bleiben auf ON.
- Schalte die Versorgung wieder ein. Mit dem mittleren Schalter auf OFF startet das System im Normalbetrieb von der eMMC.
Reset-Taste verwenden
Das Aus- und Einschalten ist nicht immer erforderlich. In vielen Fällen genügt es, die Reset-Taste zu drücken. Wenn das System danach nicht wie erwartet startet, führe stattdessen einen vollständigen Power-Cycle durch.

Fahre anschließend mit dem Getting Started fort.
Fehlerbehebung
Das Gerät wird mit --list usb nicht erkannt
- Prüfe, ob das USB-C-Kabel an der Buchse „USB Client“ angeschlossen ist.
- Prüfe, ob alle drei Schalter von S1 auf ON stehen.
- Prüfe die Stromversorgung und drücke gegebenenfalls die Reset-Taste.
- Wenn das Gerät weiterhin nicht erscheint, installiere die udev-Regeln erneut und verbinde das USB-C-Kabel danach erneut.
Das Flashen schlägt wegen fehlender Dateien fehl
Prüfe, ob flashlayout.tsv und alle darin referenzierten Images im angegebenen Arbeitsverzeichnis
vorhanden sind. Verwende Dateien aus demselben qdCoreX-/Buildroot-Stand.
Der Flash-Vorgang schlägt aus einem anderen Grund fehl
Beende den Vorgang nicht durch das Zurückstellen von S1, solange die Programmierung noch läuft.
Sichere die vollständige Ausgabe von STM32_Programmer_CLI; die konkreten Fehlerfälle und ihre
Maßnahmen werden noch ergänzt.
[PLATZHALTER: Erwartete Erfolgsmeldung und Prüfung des USB-Zugriffs ohne sudo]