Pages: [1]   Go Down
Author Topic: Upload Troubles with Arduino Micro on Windows 7  (Read 731 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hey all,

Trying to get set up with a Micro on my Windows 7 64 bit machine. I already jumped through a lot of hoops just to get the drivers installed (For anyone who's struggling with this same problem, my solution was Device Manager > Update Driver > Browse Computer > Pick From a List of Devices > Have Disk > Go to the Arduino drivers folder and select the Micro driver. Phew!) But now I've got a new problem.

The computer's detecting the board just fine, and I can select the COM port it's connected to. But when I hit upload, the board resets (which I understand to be an intentional part of the design) and when it comes back online, the RX light blinks just once and then stops. Upload stalls and never completes. In verbose mode, the error is:
Code:
avrdude: usbdev_open(): did not find any USB device "usb"

Sometimes, but not always, the device stops being recognized after a failed upload, and I have to unplug and re-plug in order to see it again. I've tried restarting Arduino, restarting the computer, plugging into different USB ports, all the basic tech support junk. I'm out of ideas. Anyone else got any?
Logged

Global Moderator
Offline Offline
Brattain Member
*****
Karma: 474
Posts: 18696
Lua rocks!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

The Arduinos with the ATmega32u4 chip can be challenging to reprogram.

Try holding down Reset, and hitting Upload with your other hand. When it starts the uploading process let go of Reset. It can be tricky to get the timing right.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Just tried that, and no luck. Should also mention that when I first plug in the board the computer plays the "device connected" sound three times in rapid succession. Is that useful info?
Logged

Global Moderator
Offline Offline
Brattain Member
*****
Karma: 474
Posts: 18696
Lua rocks!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Not sure what that means. From this page:

http://arduino.cc/en/Main/ArduinoBoardMicro

Quote
Automatic (Software) Reset and Bootloader Initiation

Rather than requiring a physical press of the reset button before an upload, the Micro is designed in a way that allows it to be reset by software running on a connected computer. The reset is triggered when the Micro's virtual (CDC) serial / COM port is opened at 1200 baud and then closed. When this happens, the processor will reset, breaking the USB connection to the computer (meaning that the virtual serial / COM port will disappear). After the processor resets, the bootloader starts, remaining active for about 8 seconds. The bootloader can also be initiated by pressing the reset button on the Micro. Note that when the board first powers up, it will jump straight to the user sketch, if present, rather than initiating the bootloader.

Because of the way the Micro handles reset it's best to let the Arduino software try to initiate the reset before uploading, especially if you are in the habit of pressing the reset button before uploading on other boards. If the software can't reset the board you can always start the bootloader by pressing the reset button on the board.
Logged

Austin, TX
Offline Offline
God Member
*****
Karma: 12
Posts: 524
carpe diem
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The Micro and Leonardo actually have two different CDC devices. One during regular operation and another when the bootloader is running. They each have a different device ID and may require the drivers to be installed once for each device.

You installed the drivers for the regular CDC device, but when it resets into the bootloader, the bootloader CDC device probably is showing up in Device Manager as an Unknown device.

You can confirm this by opening Device Manager and then press the reset button on the Micro. Watch the Device Manager and see if the Micro device disappears and then another device should appear. If the new device shows up under Unknown Devices, you will need to install the drivers for that device. If it appears under ports with a COM port assigned, then you should be OK.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The Micro and Leonardo actually have two different CDC devices. One during regular operation and another when the bootloader is running. They each have a different device ID and may require the drivers to be installed once for each device.

You installed the drivers for the regular CDC device, but when it resets into the bootloader, the bootloader CDC device probably is showing up in Device Manager as an Unknown device.

You can confirm this by opening Device Manager and then press the reset button on the Micro. Watch the Device Manager and see if the Micro device disappears and then another device should appear. If the new device shows up under Unknown Devices, you will need to install the drivers for that device. If it appears under ports with a COM port assigned, then you should be OK.

You seem to be onto something here, but I'm not sure how to fix it. When I reset the board the device disappears momentarily, and reappears under Unknown Devices. It's still called Arduino Micro, and it goes back to appearing under Ports about three seconds later. I tried selecting the Unknown Devices version during the couple seconds it was visible and updating drivers on that one the same way I did previously for the other mode, but nothing changed. When I examine the driver details for each mode, they look like they're set up exactly the same.

Do I need to install a different driver as opposed to the one for Micro? Is there a way to keep it connected in bootloader mode for longer so that I can try to install the driver while the device is still being detected?
Logged

Austin, TX
Offline Offline
God Member
*****
Karma: 12
Posts: 524
carpe diem
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Can you post the Device ID from Device Manager for both devices?

Windows uses the Device ID to match the device to the correct .inf file. 
Look at the .inf in a text editor and see if the Device IDs match what are in the .inf
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 9
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sure enough, the IDs in the .inf didn't match either of the device IDs. So I added the IDs for both modes, and updated the driver on both modes. I still have exactly the same problem. The board connects and uploads fine on a Mac, so I know it's not the board's fault.

What do I try next?
Logged

Pages: [1]   Go Up
Jump to: