Arduino Leonardo Programming


I just purchased a Arduino Leonardo for a keyboard project. When I plug the board into my PC the driver says driver not found. See attached photo.

The issue is when I try to upload a program it fails. I can upload a small program if I double click the reset button (at just the right time) on the Leonardo board and it fast flashed. I think what may be going on is the board wants to talk USB (ie. HUD emulator to PC). On power-up of the board it will allow a program to download within the 1st couple seconds then it stops communicating with programmer and acts like a USB device. How can I disable the USB device mode long enough so I can upload my program??



If I have device manager open and press the reset button on the Leonardo it says Arduino Leonardo bootloader (COM7) for about 3 seconds then it disappears and then says Arduino Leonardo with a yellow triangle. Looks like my Windows 10 machine detects the bootloader of the Arduino but not the USB.

Any help would be appreciated.

You can enable "show verbose output during upload" (in file->preferences). That will help to determine when to press the reset button. You will see lines saying something like {com x} -> {com y}.

With that reset, it should allow upload of any size code.

I suspect that the yellow triangle is the cause of your issues, but I can't provide advise there.

One advise further
Create a fail-safe in your code that allows you to disable the HID functionality. E.g.

void setup()
  pinMode(A0, INPUT_PULLUP);

void loop()
  if(digitalRead(A0) == LOW)
    Do your hid stuff

Use e.g. a wire to short A0 to ground to enable the HID functionality.

I have tried the following:

  1. A different USB micro cable.
  2. A Windows 7 laptop
  3. A Windows 10 desktop

The issue appears to be with the driver for the unit. Is this board defective? I have noticed many other posts by users with the exact same complaint. Wondering if newer versions of Windows 7/8/10 do not support this USB chipset.

I can upload my sketch to the board however since the device manager reports the Leonardo driver with yellow triangle Windows does not detect the Arduino as USB keyboard/mouse. I think if Windows would detect the USB device things would be working. Again, I have tried different cable and different PC. No luck so far...

OK. I found an old XP computer and plugged the Arduino Leonard in and it worked!! I am using a joystick sketch from GitHub and it works perfectly. I can short GND to different pins and Windows XP see's the button pressed. Now how do I get this working on a version of Windows built this decade??

Does the problem still occur after you upload a bare minimum sketch (File > New) to the Leonardo?