Forum: Mikrocontroller und Digitale Elektronik Stm32 IAP Risiken und Nebenwirkungen?


von Matthias (matze23)


Lesenswert?

Hallo zusammen,
Ich hab beruflich öfter was mit STM32 zutun.
Da die Module aber immer sehr geschlossen und gut getestet (und Primitiv 
:-)) waren, sind Updates quasi nie Notwendig, haben im Fall der Fälle 
einfach das Modul gewechselt.
Jetzt sind die Entwickler und Produktmanager auf die Idee gekommen das 
OTA und IAP ja super toll sind. Prinzipiell geh ich da mit, schont 
ressourcen und ist einfach state of the Art,wobei ich mir nicht sicher 
bin ob bei dem angedachten Weg die beiden Begriffe überhaupt zutreffen..

Als Mittel zum Zweck ist die Entscheidung auf Ein wechselbares I2C 
EEProm gefallen, dank DIP8 einfach zu handeln, auch für Kunden.

Nun zur Frage, würde das "Update" am Beginn des "normalen" Programms 
(0x8000) machen weil wir stand jetzt nicht an die Boot Pins Kommen und 
auch keine Jumper vorhanden sind :-(. Die Applikation hat bis jetzt 
schlanke 4kb,ergo sollte das laden des Inhalts zeitlich kaum merkbar 
sein.

1.Tagt der Ansatz überhaupt was oder ists Murks?

2.wie anfällig ist diese Methode dafür den STM32 in den sprichwörtlichen 
Ziegelstein zu verwandeln?

3.hat jemand generell Erfahrung mit IAP bei STM32 das der Kunde Selbst 
durchführt?

Vielen Dank für eure Beiträge.

von Harry L. (mysth)


Lesenswert?

Mit einem robusten Bootloader sind die Risiken vernachlässigbar.
Trivial ist das dennoch nicht.

von Jörgen D. (jrgen_d)


Lesenswert?

Sowas hab ich schon vor 20 Jahren gemacht und läuft bis heute ohne 
Probleme.

von Andreas B. (abm)


Lesenswert?

Harry L. schrieb:
> Mit einem robusten Bootloader sind die Risiken vernachlässigbar.
> Trivial ist das dennoch nicht.

Insbesondere sollte man das sehr sorgfältig testen. Was so schief gehen 
kann ist z. B.
- Ausfall der Versorgung während des Updates
- EEPROM für Modul A in Modul B eingesteckt
- EEPROM-Inhalt kaputt
- EEPROM-Inhalt manipuliert
- Downgrade erlaubt?

Wie wird angezeigt, dass das Update erfolgreich war bzw. welche 
Firmwareversion jetzt tatsächlich läuft?

Und auch wenn es banal klingt: So ein DIP-8 oder gar SOIC-8 ist recht 
klein, wie klebt man da ein Etikett drauf? Sobald mehrere davon 
"rumfliegen" wird es sonst lästig. Und der Wechsel von einem DIP-8 im 
Sockel ist für Grobmotoriker auch schon eine Herausforderung. An ein 
"verkehrt" herum möchte ich gar nicht erst denken ... Da ist eine kleine 
Platine mit verpolungssicherem Stecker eine bessere Wahl, die kann ja 
hinterher wieder abgezogen werden.

Außerdem: Auch wenn die Module "primitiv" sind, ist die Firmware doch 
vmtl. gegen Auslesen geschützt? Dann muss der EEPROM-Inhalt auch 
verschlüsselt werden. Und das zieht einen ganzen Rattenschwanz nach sich 
(Schlüsselmanagement, nur einen Generalschlüssel, pro Modultyp einer, 
...).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.