Go Down

Topic: Unrecognized board after uploading sketch without drivers (Error 43) (Solved) (Read 1 time) previous topic - next topic

michalmonday

Hi, I tried to upload a blinking led example to the new "Arduino Leonardo Pro Micro" but I forgot to install/update the driver to it as it was suggested in a tutorial I saw. After I uploaded the first blinking sketch the board can't be recognized by my PC and the amber light doesn't light up (stable red led is still on though). Before I uploaded it the board had a stable red led and flashing amber led. I checked with another PC and it also doesn't recognize the board.

When I check the "unknown device" in the device manager it says that it encountered "error 43". I also tried manually picking driver from the list but "Arduino" doesn't show in the list of manufacturers. (btw it appears there when I'm trying the same for my other board which is working properly)

Is there anything I could do to reverse what I messed up?


EDIT:
The board was 8Mhz version which required "Sparkfuns Pro Micro 3.3v Arduino extension".
Quote
The new board (which is 16MHz) came today and works well without additional plugins/drivers (it got straight recognized as "Arduino Leonardo" in device manager and arduino IDE, so I set the board to standard "Arduino Leonardo" too). I wish I knew this important detail before I ordered 8MHz though ;p

DrAzzy

Watch device manager while resetting the board. You should see the a different device briefly appear. After confirming that, upload a new sketch to it, pressing reset right before it starts trying to upload to the board (this can be a bit tricky to time right - that's why we normally have autoreset to deal with it - but if your sketch hoses the USB functionality, the computer can't tell it to reset, since there's no working USB device to talk to)

Usually what causes this is a sketch crashing the arduino - I think doing slow things with interrupts disabled will also do it.
ATTinyCore for x4/x5/x61/x7/x8/x41/1634/828/x313 megaTinyCore for the megaavr ATtinies - Board Manager:
http://drazzy.com/package_drazzy.com_index.json
ATtiny breakouts, mosfets, awesome prototyping board in my store http://tindie.com/stores/DrAzzy

michalmonday

Device manager seems the same, then refreshes and the unrecognized device appears.

Arduino IDE doesn't allow me to set the port, the "port" button/option is gray. Btw in the right-bottom corner it shows "Arduino Leonardo on COM5" which I can't change. Here's the output after trying to upload the sketch

Quote
Arduino: 1.6.9 (Windows 10), Board: "Arduino Leonardo"

Sketch uses 4,592 bytes (16%) of program storage space. Maximum is 28,672 bytes.
Global variables use 149 bytes (5%) of dynamic memory, leaving 2,411 bytes for local variables. Maximum is 2,560 bytes.
Couldn't find a Board on the selected port. Check that you have the correct port selected.  If it is correct, try pressing the board's reset button after initiating the upload.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
Edit: I just noticed that if I uninstall the "unrecognized device" and then restart the board it sometimes (1/5 ?) shows up as port  "USB serial device (COM5)" for few seconds and then turns into "unrecognized device", I'm trying to catch this moment with uploading but this "lucky window" seems to be shorter than uploading...


Edit2: It looks like I managed to catch it and here's the output:

Quote
Arduino: 1.6.9 (Windows 10), Board: "Arduino/Genuino Micro"

Sketch uses 4,594 bytes (16%) of program storage space. Maximum is 28,672 bytes.
Global variables use 149 bytes (5%) of dynamic memory, leaving 2,411 bytes for local variables. Maximum is 2,560 bytes.
Forcing reset using 1200bps open/close on port COM5
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
PORTS {COM5, } / {COM5, } => {}
Uploading using selected port: COM5
D:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CD:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega32u4 -cavr109 -PCOM5 -b57600 -D -Uflash:w:C:\Users\user\AppData\Local\Temp\buildb48cf179db67a583bc24c7c8c87c7f6f.tmp/Blink.ino.hex:i

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "D:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : COM5
         Using Programmer              : avr109
         Overriding Baud Rate          : 57600
avrdude: ser_open(): can't set com-state for "\\.\COM5"
avrdude: ser_send(): write error: sorry no info avail
Problem uploading to board.  See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
Edit 3:
That's what it says when I press "Board info" after resetting the board (and being lucky)
Quote
BN: Unknown board
VID: 1B4F
PID: 9203
SN: Upload any sketch to obtain it
https://www.arduino.cc/en/Guide/Troubleshooting#upload
Quote
Bootloader

    Make sure there's a bootloader burned on your Arduino board. To check, reset the board. The built-in L LED (which is connected to pin 13) should blink. If it doesn't, there may not be a bootloader on your board.
It doesn't blink on mine, is there any way to get the bootloader there (i tried pressing Burn Bootloader but no success, it says "avrdude: usbdev_open(): did not find any USB device 'usb'")

dmjlambert

I don't know about those upload errors, but you don't need to worry about your pin 13 LED not blinking, because Pro Micro does not have a pin 13 nor doses it have an LED on pin 13.   It has a pin 17 LED and you can blink that with a modified blink sketch.

You can try a different USB cable, may be worth a try although chances are that is not the problem, I have seen stranger things.

Connect a push button switch between reset and ground and tap the reset button at beginning of upload.  Also try double-tap on the reset button.

michalmonday

the same cable worked well for the first time before I messed it up but I'll try it tomorrow. I tried resetting it this way... Btw I'll just use it as a cool christmas tree decoration I guess;p But I have one little question, when I'll try again using a new device, what option should I pick in IDE: -"Arduino Leonardo" or "Arduino/Genuino Micro"? Idk because in the official tutorial there's micro and in the tutorial from one guy on youtube there was leonardo...
It's this exact one: http://www.ebay.co.uk/itm/161793849730

dmjlambert

"Arduino Leonardo" or "Arduino/Genuino Micro"?
Neither one.   You need to download the Pro Micro add on from Sparkfun's web site (see the online getting started or hookup guide on Sparkfun's website).   I don't know for sure if you need to choose the 16MHz or 8MHz board selection in the Tools menu, try each.   By the description of your problems, you could have an 8MHz Pro Micro and you have uploaded a sketch to it that is expecting to run on a 16MHz Leonardo.  The symptom seems to match that scenario.   I think tapping reset with the right timing or burning a new bootloader on it using another working Arduino as ISP programmer is going to be the likely resolution.   

michalmonday

Thanks a lot. In the auction's description there was a note that it's 8MHz and it requires additional software but I just like to make my life harder;p The new board (which is 16MHz) came today and works well without additional plugins/drivers (it got straight recognized as "Arduino Leonardo" in device manager and arduino IDE, so I set the board to standard "Arduino Leonardo" too). I wish I knew this important detail before I ordered 8MHz though ;p

Go Up