ich suche nach einer Möglichkeit, den Arduino Mega so einfach und unkompliziert wie möglich zu flashen.
Ein Benutzer der im Ausland sitzt hat keinerlei Vorkenntnisse bezüglich Arduino und Microcontrollern.
Ich müsste aber eine neue Firmware auf seinen Arduino flashen, damit er das Teil nicht um die halbe Welt
zu mir schicken muss und ich dann wieder zurück.
Der Arduino ist bereits betankt mit einem Bootloader.
Ideal wäre also, er stöpselt den Arduino nur an den USB an und lädt sich dann die neue Firmwäre drauf,
ohne erst vorher irgend eine umfangreiche IDE installieren zu müssen oder sich ein Programmiergerät
kaufen zu müssen.
Möglicherweise lässt sich das auch mit AVRDUDE einfach realisieren.
Damit habe ich jedoch keine Erfahrung, da ich immer die Aruino-IDE zum programmieren verwende.
Es wäre schön wenn mir hier jemand weiterhelfen könnte.
Wenn der Mega einen Bootloader draufhat, kannst du ihn mit avrdude und hex file flashen.
Dazu müsste er nur einen Usb stick anstöpseln und ein File doppelclicken.
Allerdings sollte er vorher rausfinden können, welchen Comport der Mega hat.
Falls auf dessen PC noch nie die IDE installiert war, kommt er um eine Installation der IDE nicht herum, wg. der Treiber.
Teamviewer wäre auch noch eine Möglichkeit.
Kennt sich der Benutzer wenigstens etwas mit Windows aus?
Der Mega hat einen Bootloader drauf.
USB-Stick einstöpseln und File anklicken wäre natürlich optimal.
Das hex-file würde er von mir per eMail bekommen.
Welche IDE meinst Du, die er installieren muss damit die erforderlichen Treiber drauf sind ?
Er arbeitet doch bereits mit dem fertig programmierten Mega an seinem PC. Nur angestöpselt am USB.
Ein Userinterface für Windows das ich ihm geschrieben habe, steuert seinen Mega.
Er benutzt also nur meine GUI. Dazu brauch er keine Arduino-IDE.
Weshalb muss dann eine Arduino-IDE installiert werden, nur um mit AVRDUDE ein neues HEX-file zu flashen ?
TeamViewer erscheint mir zu langwierig. Durch die Zeitverschiebung ist das auch immer terminlich ein Problem.
Wenn du das User-Interface selbst geschrieben hast, könntest du dies vielleicht auch weiterentwickeln, dass du innerhalb des GUI die Option einer Aktualisierung vorgibst. Dazu reicht ja dann ein hinterlegter Kommandozeilenaufruf, ähnlich wie es bei AVR8 Burn-O-Mat gemacht wird.
Link: http://avr8-burn-o-mat.aaabbb.de/
wenn der Mega schon am PC hängt, sind ja die Treiber schon installiert und der ComPort bekannt. Dann braucht es natürlich keine IDE mehr.
Also alles (Avrdude komplett, hex-file, install.bat) aus einem zip-File, das du ihm schickst, in ein Verzeichnis entpacken und das ganze über eine von dir vorbereitete install.bat per Doppelclick aufrufen.
Wenn du sogar User-Interfaces selbst schreibst, sollte das doch kein Problem darstellen.
Magnitudo:
Der Mega hat einen Bootloader drauf.
USB-Stick einstöpseln und File anklicken wäre natürlich optimal.
Das hex-file würde er von mir per eMail bekommen.
Wenn der User ein Windows-Betriebssystem hat, braucht er dann nur XLoader zum Flashen des Hex-Files.
Mensch, danke für eure super Tipps
So etwas wie XLoader ist ja genial.
Da muss ich nämlich selbst nichts mehr programmieren.
Jetzt stellt sich mir nur die Frage, wie bekomme ich meine Firmware
die ja als Sourcecode (Arduino-Script) existiert in ein HEX-File compiliert,
das ich dann mit dem XLoader flashen kann.
Kann man mit der Arduino-IDE ein HEX-File generieren ?
Die Hex-Datei ist in einem etwas versteckten temporären Verzeichnis. Stelle die Meldungen beim Compilieren auf Ausführlich/Verbose dann siehst du was die IDE genau macht
Magnitudo:
Kann man mit der Arduino-IDE ein HEX-File generieren ?
Die Arduino-IDE macht überhaupt nix anderes: Hex-File kompilieren und hochladen.
Allerdings landet die HEX-Datei in einem temporären Ordner, und den genauen Ordner- und Dateinamen kannst Du zu sehen bekommen, wenn Du in den Einstellungen mal ein Häkchen setzt bei
"Ausführliche Ausgabe während [ x ] Kompilierung"
Vielen Dank euch allen.
Hab die compilierte HEX schnell gefunden.
Und der XLoader ist für solch einen Fall genau das richtige Werkzeug.
Mein Software-User wird damit jetzt sicherlich klar kommen.