Go Down

Topic: [solved] DFU Mode Arduino UNO without soldering (Read 24 times) previous topic - next topic

MementoMori

Feb 16, 2011, 02:29 pm Last Edit: Feb 16, 2011, 08:28 pm by MementoMori Reason: 1
Hi all,
I've just bought an arduino UNO a week ago (more or less) and I'm very happy to explore/study electronics using it.
I'm using version 0022 IDE on Ubuntu 10.10. I can upload sketches without problems and everything is working as expected. I got just one problem: when I loaded DigitalReadSerial I wasn't able to use the board any more. TX led always on and all the rest... Yes, I know, it's a known bug and there is also a fix but there is a very difficult fix to apply for me. I have no experience at all in soldering but now it seems like I'm forced to solder a 10k ohm resistor on the backside on my board...
Now I've solved loading an empty sketch from Windows so I can test/program/study without problems everything but the serial module.
Is there a way to upload the new usbserial firmware without soldering the board?

Thank you!
--
MementoMori

mrtaylor



mellis

Instead of soldering a 10K resistor, you can hold a piece of wire against the two pads that you're meant to solder the resistor on.  While holding that wire in place, briefly connect and then disconnect the two pads of the 6-pin header next to the 8U2 shown in the tutorial <http://arduino.cc/en/Hacking/DFUProgramming8U2> (reset and ground).  Then, release the wire that you're holding against the two pads on the back of the board.  This should put the board in DFU mode.  It requires a bit of dexterity, but no soldering.

MementoMori

ok. I solved! thank you guys!!
for everyone looking for the same solution I'll write my steps:
ps: I did these steps after I loaded and "empty" sketch to the board from a windows machine.

Code: [Select]

void setup(){}
void loop(){}


---------------------------------------------------------------------------------------------------------
INSTALL THE DFU PROGRAMMER (console commands)
---------------------------------------------------------------------------------------------------------
$ sudo aptitude install dfu-programmer

---------------------------------------------------------------------------------------------------------
DOWNLOAD AND VERIFY THE FIRMWARE (console commands)
---------------------------------------------------------------------------------------------------------
$ wget --no-check-certificate https://github.com/arduino/Arduino/raw/master/hardware/arduino/firmwares/arduino-usbserial/Arduino-usbserial-uno.hex
$ md5sum Arduino-usbserial-uno.hex
8e01ee236e70bbea43f7eb4e11c9688a  Arduino-usbserial-uno.hex

---------------------------------------------------------------------------------------------------------
PUT ARDUINO UNO IN DFU MODE
---------------------------------------------------------------------------------------------------------
0) connect your board to the pc
1) hold the first wire on the top left 8u2 ICSP pad
2) touch the second wire against the left side of the capacitor below the RX LED (leds will blink)
3) remove the second wire
4) remove the first wire

---------------------------------------------------------------------------------------------------------
UPLOAD THE NEW FIRMWARE (console commands)
---------------------------------------------------------------------------------------------------------
$ sudo dfu-programmer at90usb82 erase
$ sudo dfu-programmer at90usb82 flash Arduino-usbserial-uno.hex
$ sudo dfu-programmer at90usb82 reset

---------------------------------------------------------------------------------------------------------
FINAL STEP
---------------------------------------------------------------------------------------------------------
disconnect the board from the pc
reconnect it and have fun ;)

--
MementoMori

Go Up