Riprogrammare firmware Arduino UNO

Ciao!
Ho provato a riprogrammare il firmware di Arduino Uno in modo da poterlo utilizzare come Hid Keyboard attraverso un bootlander che mi avrebbe permesso maggiori funzioni. La modifica del firmware è fallita, solo che ora il pc non vede più Arduino. Desidero ritornare al firmware originale e ripristinare Arduino alle impostazioni di fabbrica. Come si può fare?

Queste cose si dovrebbero fare SOLO se si sa bene COSA si sta facendo e COME va fatto, altrimenti si rischia di ritrovarsi con un bel soprammobile.

Intanto, per poter far vedere Arduino UNO come una HID occorre riprogrammare il firmware del ATmega16U2 usando una speciale procedura ... la stessa procedure deve essere riutilizzata per ripristinare il firmware originale che si trova nella cartella:

arduino\hardware\arduino\avr\firmwares\atmegaxxu2

dove si trova anche un "readme" che da un po' di informazioni.

Guglielmo

scusa se non ho capito: a quale cartella ti riferisci?

Quella dove hai installato Arduino IDE.

ancora non capisco. qualcuno potrebbe scrivere la procedura per il ripristino del firmware?

Scusa, ma hai letto il README.txt nella cartella che ti è stata indicata?

README.txt

Arduino Uno and Mega 2560 Firmwares for the ATmega8U2

This directory contains the firmwares used on the ATmega8U2 on the Arduino
Uno and Arduino Mega 2560. The arduino-usbdfu directory contains the DFU
bootloader on the 8U2; the arduino-usbserial directory contains the actual
usb to serial firmware. Both should be compiled against LUFA 100807. The
two .hex files in this directory combine the dfu and serial firmwares into
a single file to burn onto the 8U2.

To burn (Uno):
avrdude -p at90usb82 -F -P usb -c avrispmkii -U flash:w:UNO-dfu_and_usbserial_combined.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m

To burn (Mega 2560):
avrdude -p at90usb82 -F -P usb -c avrispmkii -U flash:w:MEGA-dfu_and_usbserial_combined.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m

Note on USB Vendor IDs (VID) and Product IDs (PID): The arduino-usbdfu
project uses Atmel's VID and MCU-specific PIDs to maintain compatibility
with their FLIP software. The source code to the arduino-usbserial
project includes Atmel's VID and a PID donated by them to LUFA. This
PID is used in LUFA's USBtoSerial project, which forms the basis for
arduino-usbserial. According to the LUFA documentation, this VID/PID
combination is:

"For use in testing of LUFA powered devices during development only,
by non-commercial entities. All devices must accept collisions on this
VID/PID range (from other in-development LUFA devices) to be resolved
by using a unique release number in the Device Descriptor. No devices
using this VID/PID combination may be released to the general public."

The production version of the arduino-usbserial firmware uses the
Arduino VID. This is only for use with official Arduino hardware and
should not be used on other products.

Guglielmo

Inoltre, basta cercare e ...

  1. Set a board to DFU mode

  2. Flash USB-to-serial firmware in DFU mode

Guglielmo

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.