Author Topic: PCB "Unknown USB (Device Descriptor Request Failed)" Issue  (Read 335 times)

0 Members and 1 Guest are viewing this topic.

Offline sanlouie_7

  • Thread Starter
  • Posts: 16
PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« on: Sun, 13 June 2021, 14:33:19 »
Hi all, new post following up an issue that I had a few days ago as something new has came up and I think this may have been the issue all along. When I plug in my cable into the connector of the PCB, Windows will make a noise that recognizes that a new device has been connected. However, Windows is unable to determine what the device is.

The PCB is an Octagon Ver2.0 and everything was working well a few days ago until I decided to flash it with QMK. I'm not really sure where I went wrong or why it was working for a few days before a column of keys stopped working, then the whole board altogether. I reinstalled QMK with updated drivers, but unfortunately QMK is still unable to recognize the device. I have also tried resetting the board and plugging it in while doing so. Still, no dice.

I looked up several solutions online, finding things such as flashing with 02D, Flip, and updating atmega32u4 drivers. Admittedly, I have no idea how any of these things work. All I really do know is that it still makes a noise when plugged in and no keys or LEDs response when plugged in!

I'm still willing to put in the time and effort into making this bad boy work but preferably with some direction since I'm sure I have been attempting to do so without any. Will reply ASAP to any responses, thanks!

Offline Findecanor

  • Posts: 4782
  • Location: Koriko
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #1 on: Sun, 13 June 2021, 15:48:19 »
It sounds to me as if flashing QMK to the ATmega32u4's flash memory could have failed.

With the ATmega32u4, the firmware will need to have started and enabled the USB port at its end for Windows to be able to detect the device at all. After that, one of the first things that Windows does when detecting a new USB device is to ask it for its Device Descriptor, and that should also have been handled by the firmware. Weird that it does the first step but not the second.

I don't know which USB diagnostics tools there are on Windows, but I would check if it identifies itself as anything if you would put it in bootloader mode.
Man must shape his tools lest they shape him
-- Arthur Miller

Offline MajorKoos

  • Posts: 835
  • Location: Bay Area
  • 1 life please. Extra large.
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #2 on: Sun, 13 June 2021, 16:30:41 »
It sounds like the firmware is corrupted.
Where did you source it from?

From the readme for the Octagon in the TMK repo it seems like you need to hold down the top right key while plugging in the PCB to enter bootloader mode.
QMK toolbox should at least recognize it at that point and allow you to flash it with some new firmware.
Does that part at least work?

If QMK toolbox doesn't recognize it after holding in that key while plugging in the PCB it's likely the bootloader which is toast.
Hopefully not the case because you'll need an ISP programmer to flash a new bootloader and the firmware.

Offline sanlouie_7

  • Thread Starter
  • Posts: 16
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #3 on: Sun, 13 June 2021, 17:20:25 »
It sounds like the firmware is corrupted.
Where did you source it from?

From the readme for the Octagon in the TMK repo it seems like you need to hold down the top right key while plugging in the PCB to enter bootloader mode.
QMK toolbox should at least recognize it at that point and allow you to flash it with some new firmware.
Does that part at least work?

If QMK toolbox doesn't recognize it after holding in that key while plugging in the PCB it's likely the bootloader which is toast.
Hopefully not the case because you'll need an ISP programmer to flash a new bootloader and the firmware.

Unfortunately, I believe that the FLIP (top-right) key isn't working. I have tried on several occasions to get QMK to recognize the device while holding the top-right key and nothing appears to happen.

I have a friend who is able to use (I think) Arduino as an ISP and is willing to help me, but he also did ask where was my firmware and I wasn't really sure what he was asking. What would be the firmware in this case?

Again, I'm really unfamiliar with this stuff and I would like to be able to present him with all the tools he would need to hopefully get the PCB running properly again. And it seems like maybe in this case that is burning a new bootloader?

Edit: I flashed the firmware using QMK Toolbox but somehow it stopped working altogether about a day later.
« Last Edit: Sun, 13 June 2021, 17:29:17 by sanlouie_7 »

Offline sanlouie_7

  • Thread Starter
  • Posts: 16
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #4 on: Sun, 13 June 2021, 17:22:23 »
It sounds to me as if flashing QMK to the ATmega32u4's flash memory could have failed.

With the ATmega32u4, the firmware will need to have started and enabled the USB port at its end for Windows to be able to detect the device at all. After that, one of the first things that Windows does when detecting a new USB device is to ask it for its Device Descriptor, and that should also have been handled by the firmware. Weird that it does the first step but not the second.

I don't know which USB diagnostics tools there are on Windows, but I would check if it identifies itself as anything if you would put it in bootloader mode.

This is what I was thinking too since I think I am unable to get the PCB into bootloader mode. I would also be afraid that the bootloader is toasted as said by MajorKoos.

I can try to find additional solutions online and see if anything would be worth giving a shot. This helps point me in some sort of direction and it is well appreciated :)

Offline MajorKoos

  • Posts: 835
  • Location: Bay Area
  • 1 life please. Extra large.
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #5 on: Sun, 13 June 2021, 18:14:40 »
Try plugging it in holding down ESC, and if that doesn't work try again with Tilde.
Doubtful it will work, but process of elimination and all that stuff...

FLIP is an application written by ATMEL for programming their microcontrollers.
You can use either FLIP or QMK toolbox to flash the firmware onto the PCB.

If the hotkey to enter the bootloader isn't working it's likely because the bootloader itself is corrupted.
The normal startup sequence should be:
1) load the bootloader
2) check of any keys are pressed to enter "bootloader mode" or do other stuff
3) pass control to the firmware and exit

If it's showing up as an unknown device in Windows #3 isn't happening for sure.
If holding down the top right key doesn't get you into bootloader mode #1 is likely not working either.

Could you upload a photo of the back of the PCB?
Sometimes there are jumpers which you can short to force the PCB to enter bootloader mode - that would be the acid test.
Flashing it with an ISP may turn out to be necessary, but we'll first need to figure out which bootloader to use along with firmware.

Offline sanlouie_7

  • Thread Starter
  • Posts: 16
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #6 on: Sun, 13 June 2021, 18:48:48 »
Try plugging it in holding down ESC, and if that doesn't work try again with Tilde.
Doubtful it will work, but process of elimination and all that stuff...

FLIP is an application written by ATMEL for programming their microcontrollers.
You can use either FLIP or QMK toolbox to flash the firmware onto the PCB.

If the hotkey to enter the bootloader isn't working it's likely because the bootloader itself is corrupted.
The normal startup sequence should be:
1) load the bootloader
2) check of any keys are pressed to enter "bootloader mode" or do other stuff
3) pass control to the firmware and exit

If it's showing up as an unknown device in Windows #3 isn't happening for sure.
If holding down the top right key doesn't get you into bootloader mode #1 is likely not working either.

Could you upload a photo of the back of the PCB?
Sometimes there are jumpers which you can short to force the PCB to enter bootloader mode - that would be the acid test.
Flashing it with an ISP may turn out to be necessary, but we'll first need to figure out which bootloader to use along with firmware.

I've tried about all the combination of keys that I could to access bootloader without success. I have shorted the two pins that force the PCB to enter bootloader mode (as instructed by suicidal_orange) and it seems the pcb is not entering bootloader still. I have done it prior to and while plugging in the USB cable into the connector.

Here are the two images that I think would address what you were asking for. I have been looking into ISP programmers after reading a page from QMK and I need to purchase one, correct? No problem with purchases one if I can get this pcb working again. I just wanna make sure I get the right one (if there is a specific one to purchase).


Offline MajorKoos

  • Posts: 835
  • Location: Bay Area
  • 1 life please. Extra large.
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #7 on: Sun, 13 June 2021, 19:53:59 »
Yup, sounds like the boot loader is indeed borked if the jumper doesn’t work.

This is the programmer I use:
https://www.sparkfun.com/products/9825

Most PCBs are designed to be flashed from the front. 
You can use some jumper wires to reverse the pin out to flash it from the back without needing to desolder the plate.
First flash a new boot loader with the programmer and then do the firmware.

Offline sanlouie_7

  • Thread Starter
  • Posts: 16
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #8 on: Mon, 14 June 2021, 02:36:08 »
Yup, sounds like the boot loader is indeed borked if the jumper doesn’t work.

This is the programmer I use:
https://www.sparkfun.com/products/9825

Most PCBs are designed to be flashed from the front. 
You can use some jumper wires to reverse the pin out to flash it from the back without needing to desolder the plate.
First flash a new boot loader with the programmer and then do the firmware.


Just purchased the ISP programmer that you linked and some jumper cables from Amazon. Is there anything else I would need? I have a hard time understanding how the PCB and the ISP programmer will essentially connect.

Offline MajorKoos

  • Posts: 835
  • Location: Bay Area
  • 1 life please. Extra large.
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #9 on: Mon, 14 June 2021, 12:26:38 »
I just spent a couple of minutes looking at the PCB image - I don't see an ISP header anywhere on it for you to connect the programmer to.
I'd expect to see something looking like this:
270547-0

If there isn't a header for the programmer you have limited options.

You can connect directly to the microcontroller and program it like that, but it's going to be difficult because those points are very small.
Not impossible, but very finicky.

Or you could try find a compatible PCB. 
One of my mates got a KBD75 PCB and a USB breakout board from adafruit to mod his LZ CLSm which also has the USB in the middle.

Hookup guide for the programmer:
https://learn.sparkfun.com/tutorials/pocket-avr-programmer-hookup-guide/all#board-overview

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4306
  • Location: England
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #10 on: Tue, 15 June 2021, 03:19:18 »
The PCB uses IO expanders for the switch matrix, they probably use these pins and have larger targets to connect a flasher to.  I'll have a look in the firmware and try to work out what goes where, then where where is physically (which is fun as the designer likes vias with no clue which direction the frace continues on the other side)

Edit:  Looked, firmware is as old school as the board so not human readable.  Can you take a closeup pic of the area around the controller and confirm which corner the dot is, if it's not obvious in the pic?  Have to play 'follow the trace' and I'm already lost by R35!
« Last Edit: Tue, 15 June 2021, 03:43:46 by suicidal_orange »
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline MajorKoos

  • Posts: 835
  • Location: Bay Area
  • 1 life please. Extra large.
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #11 on: Tue, 15 June 2021, 09:00:46 »
And a photo of the front side of the board too if you could...

Offline suicidal_orange

  • * Global Moderator
  • Posts: 4306
  • Location: England
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #12 on: Tue, 15 June 2021, 11:09:11 »
There's a pic of the front in the other thread, it's an interesting design to say the least!
120/100g linear Zealio R1  
GMK Hyperfuse
'Split everything' perfection  
MX Clear
SA Hack'd by Geeks     
EasyAVR mod

Offline sanlouie_7

  • Thread Starter
  • Posts: 16
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #13 on: Tue, 15 June 2021, 14:15:58 »
The PCB uses IO expanders for the switch matrix, they probably use these pins and have larger targets to connect a flasher to.  I'll have a look in the firmware and try to work out what goes where, then where where is physically (which is fun as the designer likes vias with no clue which direction the frace continues on the other side)

Edit:  Looked, firmware is as old school as the board so not human readable.  Can you take a closeup pic of the area around the controller and confirm which corner the dot is, if it's not obvious in the pic?  Have to play 'follow the trace' and I'm already lost by R35!

Here is a picture of the area surrounding the microcontroller. Hopefully this is what you asked for.



Also if it's hard to see, the it is in the bottom corner in its current orientation.

Offline sanlouie_7

  • Thread Starter
  • Posts: 16
Re: PCB "Unknown USB (Device Descriptor Request Failed)" Issue
« Reply #14 on: Tue, 15 June 2021, 14:17:22 »
And a photo of the front side of the board too if you could...

I know it's already on the other thread, but just wanted to reupload just in case!