1
\$\begingroup\$

I have designed a board with an USB IC from FTDI (FT2232D). This board is bus-powered (i.e.: gets its power from the USB bus). Nothing else gets the power from the USB bus except this IC and its EEPROM (AT93C46A).

I followed the datasheet to design the schematics, however the XTAL is 12MHz instead of 6MHz.

When I plug the board into the USB of my Ubuntu computer, it is not get recognized, here are the error messages from dmesg:

[231.641237] usb usb3-port1: attempt power cycle
[232.265187] usb 3-1: new full-speed USB device number 5 using xhci_hcd
[232.265294] usb 3-1: Device not responding to setup address.
[232.469563] usb 3-1: Device not responding to setup address.
[232.673176] usb 3-1: device not accepting address 5, error -71
[232.785183] usb 3-1: new full-speed USB device number 6 using xhci_hcd
[232.785298] usb 3-1: Device not responding to setup address.
[232.989331] usb 3-1: Device not responding to setup address.
[233.193179] usb 3-1: device not accepting address 6, error -71
[233.193229] usb usb3-port1: unable to enumerate USB device
[249.869089] usb 3-1: new full-speed USB device number 7 using xhci_hcd
[249.981069] usb 3-1: device descriptor read/64, error -71
[250.197071] usb 3-1: device descriptor read/64, error -71
[250.413055] usb 3-1: new full-speed USB device number 8 using xhci_hcd
[250.525070] usb 3-1: device descriptor read/64, error -71
[250.741082] usb 3-1: device descriptor read/64, error -71

Here is the schematics of my design: enter image description here

Here is the layout of my design: enter image description here

I have measured the cable pins to the IC and all are well connected. (i.e. cable is all-good.)

This should normally work, right? What else can I try?

Thanks!

\$\endgroup\$
  • 1
    \$\begingroup\$ Did you check if your design generates bit patterns at correct rate, 12 Mbits/s? \$\endgroup\$ – Ale..chenski Mar 31 at 22:08
2
\$\begingroup\$

the XTAL is 12MHz instead of 6MHz

Changing the crystal frequency from the manufacturer-specified 6 MHz value is not allowed and will prevent correct behaviour, since that 6 MHz clock input is used to generate a 48 MHz clock (see the FT2232D block diagram on datasheet page 4) used by the USB Serial Interface Engine and DPLL for timing.

For example here on page 8, the XTIN pin is described as a 6 MHz input:

Information for FTDI FT2232D XTIN pin

Datasheet section 7.0 - Oscillator Configurations - also lists only a 6 MHz crystal or ceramic resonator frequency.

I recommend that you use an appropriate 6 MHz crystal and re-test.

\$\endgroup\$
  • \$\begingroup\$ Interesting - the FT2232H requires 12 MHz but it seems like the FT2232D requires 6 MHz. Pays to pay attention to details! \$\endgroup\$ – Chris Stratton Mar 31 at 22:24
  • 1
    \$\begingroup\$ @ChrisStratton - the "H" chips are HS (480 Mbps), while D is FS only. Totally different PHYs. It is difficult to get compliant jitter figures at 480 MHz from a 6-MHz crystal. \$\endgroup\$ – Ale..chenski Mar 31 at 22:58
  • 1
    \$\begingroup\$ I'm sure you are right about the frequency, but that is the wrong table to prove it, since a parameter that has several alternatives could be denoted in exactly the same way. Table 3.3.3 explicitly states that the crystal is to be 6MHz, as do Figures 7.1 and 7.2 (which OP evidently already knew about) \$\endgroup\$ – Ben Voigt Apr 1 at 5:32
  • 1
    \$\begingroup\$ Yes, unfortunately I've designed a very small SMD-size pad for this XTAL which I haven't found later in 6MHz version. I thought that if FT2232H can work with 12MHz, that shall not be a problem for FT2232D either. I'll test with 6MHz and accept your solution once I succeed, thanks. \$\endgroup\$ – Daniel Apr 1 at 7:03
  • \$\begingroup\$ @BenVoigt - Thanks for the suggestion. I've updated the answer. \$\endgroup\$ – SamGibson Apr 1 at 11:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.