Electrical – FT245RL – device descriptor read/64, error -32 on connect

ftdiusbusb device

I'm trying to get the FT245RL chip to work but am running into an issue where it is not successfully connecting to my computer.

I also have a separate device which also uses the FT245RL chip which connects correctly so I know that it is not an issue with my computer.

When my device is connected dmesg spits out

[1174250.282775] usb 2-1.3: new low-speed USB device number 108 using ehci-pci

[1174250.347768] usb 2-1.3: device descriptor read/64, error -32

[1174250.518754] usb 2-1.3: device descriptor read/64, error -32

[1174250.685755] usb 2-1.3: new low-speed USB device number 109 using ehci-pci

[1174250.750753] usb 2-1.3: device descriptor read/64, error -32

[1174250.919744] usb 2-1.3: device descriptor read/64, error -32

[1174251.085730] usb 2-1.3: new low-speed USB device number 110 using ehci-pci

[1174251.501718] usb 2-1.3: device not accepting address 110, error -32

[1174251.565708] usb 2-1.3: new low-speed USB device number 111 using ehci-pci

[1174251.981689] usb 2-1.3: device not accepting address 111, error -32

[1174251.981787] usb 2-1-port3: unable to enumerate USB device

[1174325.139540] usb 2-1.3: new low-speed USB device number 113 using ehci-pci

[1174356.370191] usb 2-1.3: new low-speed USB device number 114 using ehci-pci

[1174356.435191] usb 2-1.3: device descriptor read/64, error -32

When plugging in the working device (that wasn't designed by me) that uses the RT245RL it says that it is a full-speed USB device. I know that there is a program which you can use to write the manufacturer and serial number so maybe you can also select wether it's low speed or full speed?

From trying to research I see errors that are somewhat related to this are due from not having sufficient power going to the usb device. Maybe the low-speed issue is some fault with my power line.

I've tried continuity checking all the connections from my schematic to make sure everything is correct.

A schematic of my designs can be viewed at http://gyroninja.net/files/schematic.pdf

Best Answer

Those error messages you are getting are enumeration errors. They basically mean that something basic is missing. The USB data pairs are actually communicating but do not understand each other. I have a feeling that the DM and DP line is swapped but you say that you tested it, so here are a few questions:

  • Can you specify the exact type of USB-B connector you used and can you post a section of the PCB where it is connected and we can see the corresponding traces?
  • How long are these traces? Did you route them at a specific impedance?
  • What is the layer stackup of your PCB?`
  • Is the JTAG port for your controller working?
  • Can you confirm that you can measure the voltages VCC (5V), VCREF, VCCIO? What level do VCREF and VCCIO have?
  • Can you confirm you're using the RL package and not the RQ package?
  • When measuring with a multimeter on the DM and DP lines with USB unconnected, what's the level you're measuring on those lines?
  • Can you confirm there is no short between DM and DP?