Have just built an Arduino micro clone (ATmega32u4).
Can verify the board appears to be in working order, no shorts, powered up i have a clock on XTAL1 and XTAL2 (pins 16 & 17).
ICSP pins all correct from header to micro.
Programing tool is an AVRISP mkII connect to a Win10 PC
Latest IDE, settings board = micro, port = disregarded, programmer = AVRISP mkII
AVRISP mkII appears as all correct in device manager (source driver from microchip archive).
When clicking 'burn bootloader' the following appears...
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega32u4 -cstk500v2 -Pusb -e -Ulock:w:0x3F:m -Uefuse:w:0xcb:m -Uhfuse:w:0xd8:m -Ulfuse:w:0xff:m
avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"
Using Port : usb
Using Programmer : stk500v2
avrdude: usbdev_open(): did not find any USB device "usb" (0x03eb:0x2104)
avrdude done. Thank you.
Error while burning bootloader.
This is your problem. AVRDUDE is not compatible with that driver. My recommendation is to switch to the libusbK driver. You can do that easily by using Zadig:
v81:
Tried LibusbK (as i use for my RTL based radio dongle) and it didn't work.
libusb-win32 did the trick.
That's odd. It is true that libusb-win32 is the recommended driver, but I've been using libusbK on my AVRISP mkII for years without a problem.
The reason I switched to libusbK is because there was a problem with the Arduino IDE's Burn Bootloader with the AVRISP mkII on Windows. The Burn Bootloader process is actually two avrdude commands (one to set fuses, the other to write the bootloader to the microcontroller), the AVRISP mkII wasn't able to handle two commands in quick succession. I found that libusbK fixed that. However, the issue was also fixed in the current version of AVRDUDE, so libusb-win32 should work just fine unless you're using an outdated version of AVRDUDE.