Hallo Leute, hätte eine Frage bezüglich der AVR Mikrocontroller. Wie im Betreff schon steht, wollen wir die Mikrocontroller nachdem sie programmiert und gelockt wurden (durch die gesetzten Lock-Bits), eventuell wieder eine neue Software aufspielen. Der Grund dafür ist folgender: Wir verkaufen momentan mehrere eigene Komponenten, auf welcher ein Mikrocontroller bestückt ist mit einer entsprechende Software. Oftmals kommt es vor, dass wir nach einigen Monaten wieder eine neue Software mit kleinen Anpassungen haben. Zwingend notwendig ist die neue Software für den Kunden nicht, aber bei Retouren oder Reparaturfällen, würden wir dem Kunden anbieten, gleich die neue Software aufzuspielen. Der Mikrocontroller sollte jedoch gelockt sein, sodass der Endkunde keine eigene Software aufspielen kann oder unser Software ausliest. Die Frage: Ist es nun möglich, wenn die Komponente zu uns zurück kommt (aus Gründen von Reparatur etc.), die neue Software aufzuspielen trotz gesetzter Lock-Bits? Wir benutzen den Programmer/Debugger Atmel ICE. Danke im Voraus!
Nico S. schrieb: > st es nun möglich, wenn die Komponente zu uns zurück kommt > (aus Gründen von Reparatur etc.), die neue Software aufzuspielen trotz > gesetzter Lock-Bits? Ja, problemlos.
Nico S. schrieb: > Wir benutzen den Programmer/Debugger Atmel ICE. Obwohl der Kontroller geheim ist, sage ich: JA! Üblicher Weise löscht ein ChipErase auch die Lock Fuses. Spätestens eine HV Programmierung kann dann jeden Knoten lösen.
Flashen kann man immer, allerdings bei gelocktem Controller nur nach vorherigem Erase.
Bei den Atmegas kann man immer ein "Erase Chip" druchführen. Das setzt die Lockbits wieder auf 1 und man kann neu programmieren. Dann ist der Chip vorher halt leer und niemand kann das Programm einfach so auslesen. Was die Lock Bits nicht können, ist das löschen des IC sperren. Wer will kann also immer euren IC für was anderes verwenden. Wenn das ebenfalls nicht gewünscht ist, müsst ihr euch für einen anderen IC entscheiden.
Nico S. schrieb: > Der Mikrocontroller sollte jedoch gelockt sein, sodass der Endkunde > keine eigene Software aufspielen kann oder unser Software ausliest. Bei einem AVR gibt es keine Kombination der Lockbits, die ein Chip Erase verhindern würde. Du kannst zwar das Auslesen der Firmware verhindern, nicht aber daß jemand den Chip löscht und etwas anderes aufspielt.
Axel S. schrieb: > Nico S. schrieb: >> Der Mikrocontroller sollte jedoch gelockt sein, sodass der Endkunde >> keine eigene Software aufspielen kann oder unser Software ausliest. > > Bei einem AVR gibt es keine Kombination der Lockbits, die ein Chip Erase > verhindern würde. Du kannst zwar das Auslesen der Firmware verhindern, > nicht aber daß jemand den Chip löscht und etwas anderes aufspielt. Und wer den Chip mit Säure aufätzt (der Chip bleibt dabei funktionsfähig) und mit einem gut fokussierten blauen Laserpointer an eine bestimmte Stelle leuchtet, der kann die Security Fuse löschen und Eure supergeheime, kostbare Software auslesen. AVRs sind halt 20 Jahre alte Technik, und so sonderlich gut gegen Manipulationen sind sie eben nicht geschützt. fchk
Lock-Bits in den AVRs sind ein Ausleseschutz und kein Neuprogrammierschutz. Nico S. schrieb: > sodass der Endkunde keine eigene Software aufspielen Mit einem Chiperase kann er das. Schwieriger wird's für ihn, wenn Ihr einen Krypto-Bootlader zum Flashen verwendet und die RSTDISBL-Fuse setzt, dann ist die ISP-Schnittstelle erstmal lahmgelegt. Dann kommt der Kunde nicht mehr einfach dran. Ihr kommt aber auch selber nicht mehr an die Fuses ran, falls da was ändern braucht. Mit HV-Programmierung kann man auch diesen Schutz wieder aufheben, was ggf. ein Auslöten des µCs oder Auftrennen der ISP-Pins erfordert, falls die Resthardware die höhere Programmierspannung nicht mag. Macht's also nicht unmöglich, nur schwieriger. Dem wiederum kann man begegnen, indem man den µC eingießt, der interessierte Kunde könnte dann versuchen den Verguss zu entfernen, usw., usf. Es geht immer um Aufwand vs. Nutzen.
Nico S. schrieb: > Der Mikrocontroller sollte jedoch gelockt sein, sodass der Endkunde > keine eigene Software aufspielen kann Das wirst du nicht verhindern können
Wolfgang schrieb: > Nico S. schrieb: >> Der Mikrocontroller sollte jedoch gelockt sein, sodass der Endkunde >> keine eigene Software aufspielen kann > > Das wirst du nicht verhindern können Verhindern nicht. Aber wenn man es erschweren will, dann hilft nur die ganze HW eingießen und Bootloader mit signierter Firmware. hat zumindest den Vorteil, man erkennt eine Manipulation am Gerät. Wichtig für Support/Gewährleistungsanfragen.
Nico S. schrieb: > hätte eine Frage bezüglich der AVR Mikrocontroller. Es ist blöd, diese Frage allgemein zu stellen und nicht den konkreten AVR zu nennen. Wie ja schon gesagt wurde, kann man je nach Typ das nachträgliche Programmieren über bestimmte Schnittstellen disablen und somit auch ein Erase. Dann kann man den AVR nur nach Auslöten neu programmieren.
Ich verstehe nicht, wie man ein verkaufsfertiges Produkt mit einem AVR entwickeln kann und dann für solche Fragen nicht einfach dessen Datenblatt konsultieren kann.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.