Working on an Arduino Leonardo clone (namely http://www.dfrobot.com/wiki/index.php/Wirless_GamePad_V2.0_%28SKU:DFR0182%29) I got some strange issue
The device worked well, and at a certain point it failed to auto-enumerate. I tried to re-flash the bootloader with ISP, and still nothing. However I can program it using ISP (uploading my sketch via programmer), the chip is not broken.
Moreover, if I use the "Serial" in my program the device is not enumerated on my computer. BUT, if I add manually the device detection 1.5k pull-up I can communicate with my program (/dev/ttyACM0 appear and I received data from my program). However, this hack doesn't allow me to program the chip, I guess the bootloader needs to re-enumerate the device.
Does anyone have an idea on what causes this?