Hallo!
Ich bin momentan auf der suche nach einer Möglichkeit einen AVR per
Bootloader zu flashen.
Das ganze soll Idiotensicher werden.. ;-)
D.h. am PC Updateprogramm starten und dann auf UPDATE drücken.
Damit das ganze auch einigermassen kompatibel ist, soll die Verbindung
über USB erfolgen.
Als Bootloader würde ich gerne den von Peter D. verwenden. Mein Problem
ist jedoch die PC-Seite. Ich kann weder Delphi noch besitze ich diese
Software.. :-(
Zu Verfügung hätte ich LabView, was hier aber wohl nicht das Gelbe vom
Ei ist sowie die kostenlose Express-Version von M$ VisualBasic.
Was ich mir auch schon überlegt habe: einen kl. zusätzlichen AVR auf die
Hardware zusätzlich verbauen und dann Update per Avrdude..?!?
Weitere Möglichkeiten? :)
Gast wrote:
> Was ich mir auch schon überlegt habe: einen kl. zusätzlichen AVR auf die> Hardware zusätzlich verbauen und dann Update per Avrdude..?!?
Das geht auch mit einem Bootloader. De-facto-Standard für das Protokoll
wäre AVR109 (ursprünglich vom AVR Butterfly, eine Variante des alten
AVR910-Protokolls), aber selbst abgespeckte STK500-V1-Protokolle finden
sich in Bootloadern, bspw. im USBISP von Matthias Weißer.
Gast wrote:
> Ich bin momentan auf der suche nach einer Möglichkeit einen AVR per> Bootloader zu flashen.>> Das ganze soll Idiotensicher werden.. ;-)> D.h. am PC Updateprogramm starten und dann auf UPDATE drücken.
Ja und wo ist das Problem?
Schreib die Kommandozeile in ne Batch und leg den Link darauf aufm
Desktop ab.
Bzw. die meisten IDEs erlauben es, Fremdtools aufzurufen, also einfach
in Deine IDE mit reinkonfigurieren.
> Damit das ganze auch einigermassen kompatibel ist, soll die Verbindung> über USB erfolgen.
Dazu müßtest Du wissen, als welche COM sich der USB-RS-232 Adapter
anmeldet.
> Als Bootloader würde ich gerne den von Peter D. verwenden. Mein Problem> ist jedoch die PC-Seite.
Das PC-Programm (fboot.exe) ist doch dabei, einfach mal das ZIP
auspacken.
Peter
Und eine zu aktuellen Windows-Versionen verträglichere EXE gibt es
ebenfalls irgendwo. Allerdings muss man immer noch 2 Knöpfe drücken.
Einen im Windows und einen beim Controller (Reset, oder Strom).
@A. K.
Echt? Für den Bootloader von Peter? Wo man nur noch 'einen Button'
drücken muß und sich mit WinXP bzw. Vista verträgt? Hab ich da was
übersehen?
:-o
Also wir machen das so:
Bootfähige CD erstellen mit FreeDOS als Betriebssystem.
Dort hab ich ganz einfach mit dem guten (ur-)alten QBasic ein kl. Menü
zusammengebaut (EXE), wo man im Prinzip nur noch die COM-Schnittstelle
auswählen muß und los gehts.. ;o)
Da eine CD nichts kostet und der Kundenkreis überschaubar ist, ist dies
die einfachste Möglichkeit. Man brauch nichts zu installieren und läuft
(dank DOS) auf jedem PC mit serieller Schnittstelle.
Die Kunden bekommen so eine CD zugeschickt, wenn wieder ein Update
verfügbar ist. Ausserdem ist das Image auf unserem FTP-Server und kann
sich somit jeder Kunde auch selbst holen.
Bisher waren noch alle damit voll zufrieden, weil absolut NICHTS am
System gemacht werden musste und für uns dies auch die einfachste
(billigste) Möglichkeit.. :)
Ich hab mal einen AVR Bootloader geschrieben, der http:// versteht.
Fuer den PC gibt es einen Proxy in Java. Dann kann man ein Update mit
dem Browser durchfuehren.
@Hasi:
Die Idee mit der CD gefällt mir irgendwie.. :)
Problem ist hald nur, dass die RS232 langsam aber sich ausstirbt.
(schade eigendlich..)
Mit USB wäre das ganze natürlich am 'zukunftsichersten', aber dank neuer
(unbekannter) Technik + VID/PID verhältnismäßig teuer.. :(
Gast wrote:
> dann nimm den hier Beitrag "AVR-Bootloader mit Verschlüsselung"> Der kann das Gleiche wie der vom Peter und hat eine einfach zu> bedienende PC Software inklusive.
Soweit ich weiß, kann er aber nicht von der Applikation auf das Flash
schreiben.
Peter
@Peter, du meinst das der im AVR geladene Code nicht seinen eigenen
FLASH schreiben kann ? Als erstes halte ich das ja für ein fragwürdiges
Feature, also aus Sicht der Stabilität der eigenen Anwendung, zweitens
frage ich mich wie oft man dies braucht und drittens ist es wohl
wirklich kein Problem sowas nach zu implementieren. Die Schnittstellen
zum Bootloader für die eigene Anwendung sind vorhanden und müssen nur
erweitert werden.
Mal spitz gefragt ;) was ist mit all den anderen Funktionen des
Bootloaders die Deiner nicht hat ?
Gruß Hagen
Hagen Re wrote:
> Mal spitz gefragt ;) was ist mit all den anderen Funktionen des> Bootloaders die Deiner nicht hat ?
Er hat genau alle die Funktionen, die ich benötige.
Und eine davon ist, Daten zur Laufzeit speichern zu müssen, die die
Größe des EEPROM übersteigen (konkret sind es 4kB Kalibrationsdaten auf
nem ATmega168).
Dabei wird eine Zerstörung des Bootloaders abgewiesen.
Die Zerstörung der Applikation muß diese natürlich selber abweisen, da
der Bootloader ja nicht wissen kann, welchen Bereich sie quasi als
EEPROM benutzt.
Vorteilhaft ist auch, daß das Speichern im Flash wesentlich schneller
geht als im EEPROM.
Peter
P.S.:
Ich vermute mal, daß es Deinen Bootloader ohne meinen garnicht geben
würde.
>P.S.:>Ich vermute mal, daß es Deinen Bootloader ohne meinen garnicht geben>würde.
Nein falsch vermutet, ich brauchte einen Bootloader der verschlüsselte
und damit kryptographisch sicherere Updates kann.
Aber darum gehts in diesem Thread garnicht, der OP suchte einen
Bootloader mit möglichst einfach zu bedienender Windows Software.
Gruß Hagen
Hagen Re wrote:
> der OP suchte einen> Bootloader mit möglichst einfach zu bedienender Windows Software.
Nö, er hatte nur nicht geschnallt, daß das PC-Programm schon mit dabei
ist.
Manche erwarten wohl erstmal ein riesiges Install-Gedöns, anstatt nur ne
kleine EXE.
Noch einfachere Bedienung ist kaum möglich, die einzige mögliche
Bedienung ist Abbruch.
Peter