DIY 32U4 board: Bootloader fine but doesn't work with USB

Hi there,
I have had some pcbs made to use the atmega32U4 as the controller for a keyboard. The schematic is mostly copied from the Arduino Micro, just with my additions and without some stuff I didn't need. I attached a screenshot.
My issue is, that burning the bootloader with the USBtiny either through the arduino ide or using a hex from sparkfun manually with the command line works fine and completes without error every time. The fuses seem to be correct too (I used this guide: Installing Arduino Bootloader on an ATmega32u4 · electronut).
When I connect the board to the pc via usb however it doesn't work. On Windows it gives me a "device descriptor request failed" error in device manager, while it doesn't show up at all with lsusb on Linux. I also tried to burn a sketch directly on the chip with the USBtiny, but I just got a programmer not responding error (that might be because of the USBtiny though, I only ever sucessfully used it to burn a bootloader on a different board.
I also put together a second board just to make sure I didn't just use a bad chip, but it responds the same.
Does anyone have an idea what might be the issue here?

Try this:

  • Connect your ISP programmer to your DIY board
  • (In the Arduino IDE) Tools > Board > Arduino/Genuino Micro
  • Tools > Programmer > USBtinyISP
  • Tools > Burn Bootloader

That will set the correct fuses and flash the bootloader to your ATmega32U4. Much easier and less prone to error than that tutorial.

I've also had problems using the USBtinyISP. Some people like that programmer, but it's my least favorite out of all the programmers I own. I prefer the USBasp.

pert:
Try this:

  • Connect your ISP programmer to your DIY board
  • (In the Arduino IDE) Tools > Board > Arduino/Genuino Micro
  • Tools > Programmer > USBtinyISP
  • Tools > Burn Bootloader

That will set the correct fuses and flash the bootloader to your ATmega32U4. Much easier and less prone to error than that tutorial.

I've also had problems using the USBtinyISP. Some people like that programmer, but it's my least favorite out of all the programmers I own. I prefer the USBasp.

Thanks for responding!
I tried that too, the result is the same.
I used the USBtiny once before to burn a bootloader on a 3d printer, there it worked just fine. I guess I could try using a spare arduino as a bootloader, to see if that makes a difference, but as I didn't get any errors while burning the bootloader I don't suspect that that's the issue.

It's definitely worth a try to burn the bootloader with an Arduino as ISP if you have a spare Arduino board. I do prefer the Arduino as ISP to USBtinyISP.

I tried using my Uno clone, with no luck, it just gave me a check connection error, but I think that the Uno might be dead. I tried it with a mega clone then, going a bit further, resulting in this error:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00

That is the same error I got when I tried to burn something else than a bootloader onto the 32U4 chip with the USBtiny. Do you think, the USBtiny just didn't report any errors, but the bootloader didn't burn properly after all?

Datulab:
I tried using my Uno clone, with no luck, it just gave me a check connection error, but I think that the Uno might be dead. I tried it with a mega clone then, going a bit further, resulting in this error:

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00



That is the same error I got when I tried to burn something else than a bootloader onto the 32U4 chip with the USBtiny. Do you think, the USBtiny just didn't report any errors, but the bootloader didn't burn properly after all?

One question :

Whee did you buy your 32u4 chips from?

I had similar problems with non genuine chips bought from ebay.

I also use an arduino micro as a arduino as isp programmer attached to a tqfp44 zif socket with minimal additional components so that i can burn and test bootloaders on chips prior to soldering them.

The /reset pin looks a bit bare in the schematic. Is there at least a pull up resistor ? This version looks a bit more substantial: https://i.stack.imgur.com/yW7TG.jpg

Watcher:
One question :

Whee did you buy your 32u4 chips from?

I had similar problems with non genuine chips bought from ebay.

I also use an arduino micro as a arduino as isp programmer attached to a tqfp44 zif socket with minimal additional components so that i can burn and test bootloaders on chips prior to soldering them.

I just got them from Aliexpress, so you might be right. I suppose I could get some more reputable ones and try again.

6v6gt:
The /reset pin looks a bit bare in the schematic. Is there at least a pull up resistor ? This version looks a bit more substantial: https://i.stack.imgur.com/yW7TG.jpg

While I used that exact schematic to base mine on, I somehow completely missed the reset bit. I'll try soldering on some components, to see if it makes a difference.