Der Prusa i3 Hephestos wird mit einem Arduino und einem RAMPS Board ausgeliefert. Die Firmware ist bereits auf den Arduino geflasht und auch bereits an den Drucker angepasst. Möchte man also eigene Änderungen vornehmen, so empfiehlt es sich die Firmware vorher vom Arduino herunterzuladen. Man erhält dann zwar nicht den Source Code, aber immerhin das kompillierte Programm, dass man im Notfall wieder einspielen kann.
Unter Linux muss dafür AVR Dude installiert sein und der Arduino angesteckt sein. Er meldet sich normalerweise als /dev/ttyUSB0 an. Sollten mehrere Arduinos bzw. FTDI Chips am Rechner angeschlossen sein, empfiehlt es sich entweder das entsprechende Gerät per lsusb zu ermitteln oder alle anderen Geräte temporär abzustecken. Ob mehrere FTDI Chips angeschlossen sind, lässt sich mit ls /dev/ttyUSB* ermitteln.
Hat man nun den Port ermittelt kann der folgende Befehl im Terminal ausgeführt werden:
avrdude -C arduino-1.6.1/hardware/tools/avr/etc/avrdude.conf -v -p m2560 -c stk500 -U flash:r:firmware.bin:r -P /dev/ttyUSB0
Der Port muss dabei gegebenfalls angepast werden. Die heruntergeladene Firmware steht dann in der Datei firmware.bin. Sollte sich das Arduino IDE nicht im Home Verzeichnis befinden oder eine andere Version verwendet werden, muss der Pfad entsprechend angepasst werden.
Unter Windows sollte der gleiche Befehl funktionieren, allerdings müssen hier die Pfade definitiv angepasst werden und der COM Port des Arduino angegeben werden. Eventuell ist für Windows Nutzer dieser Thread interessant. Es muss allerdings der Prozerssortyp (Parameter -p auf m2650 gesetzt werden).
Um das Board mit der Heruntergeladenen Firmware wieder zu flashen, wird folgender Befehl ausgeführt:
avrdude -C arduino-1.6.1/hardware/tools/avr/etc/avrdude.conf -v -p m2560 -c stk500 -U flash:w:firmware.bin-0:r -P /dev/ttyUSB0