CYUSB3304 superspeed not recognized by PC

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
mame_1363116
Level 2
Level 2
Welcome!

Hi,

I built a custom PCB based on CYUSB3304-68LXTC. The circuit is a reproduction with minor changes of the reduced BOM schematic downloaded from cypress.com The hub is recognized by Windows 10 as a "Generic HUB" and it works perfectly with USB 2.0 devices (I connected up to 3 devices simultaneously). But if I connect as USB 3.0 device (such as a pen drive) the PC does not recognize it. An interesting fact that I noticed is that if I insert the Superspeed pen drive only for half of its length (such as only 2.0 pin are connected) the drive is recognized but obviously works at 2.0 speed. Any advice? If needed I can share the schematic and the gerber files or other.

0 Likes
1 Solution

Hi,

Yes, correct. The upstream connector is a type B receptacle so you should not swap the SS TX and RX lines as the connected cable will take care of that. Please check the attached image from our DVK schematic.

Best Regards,

Sananya

Screenshot (3).png

View solution in original post

0 Likes
20 Replies
Sananya_14
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hello,

Please share your schematic which we will review and get back to you.

Best Regards,

Sananya

0 Likes

Here is the schematic at this link:

https://1drv.ms/b/s!AktKgUUzUn_sheFXCbOTsIemvrpL9A

0 Likes

Hi, can you please post an attachment? The link doesn't seem to work.

Thanks,

Rajath

0 Likes
lock attach
Attachments are accessible only for community members.

Sorry. I attached the schematic

0 Likes

Another information. While the PC immediatly works with the 2.0 part of the HUB, the 3.0 part shows up as "unrecognized USB device" by Windows and attempts reconnection at fixed interval, Always with the same result.

0 Likes

Hello,

-Please provide the downstream port connectors in your schematic (can you also please point out what CAMNIR and CAM 13 are?). The downstream ports VBUS should have a minimum capacitance of 120 uF as per USB IF spec for disconnect events and the SS TX/RX lines should be appropriately swapped and connected.

-Please connect few other USB 3.0 devices and check if all are not enumerating properly.

-Please use decoupling capacitance on the upstream VBUS of 1uF and confirm if the crystal meets the following requirements-

26 MHz ±150 ppm, Parallel resonant, fundamental mode , 200 μW minimum drive level.

You can also refer to this App Note for more details.

Best Regards,

Sananya

0 Likes

The downstream connectors are Micro B type. I wil try adding 120 uF capacitance and the 1uF capacitance to the PCB. I confirm that the crystal meets the requirements.

Just to point out, CAMNIR and CAM13 are two USB devices that are planned to be connected to the downstream ports.

What do you mean by swapping the SS TX/RX lines?

The strange fact is that connecting the HUB without any device in downstream, the PC says "unrecognized USB device".

Do you need also the layout gerber files?

0 Likes

Hi,

By swapping she meant connecting the TX pin of HX3 to RX of device and RX of HX3 to TX of device. If you are using 3.0 receptacles as downstream connectors, the swapping will be a part of the physical connection and it need not be implemented in the board. But while connecting devices directly like CAMNIR/13 in the schematic, the lines need to be swapped so that TX connects to RX. We cannot see the pin functions of your device (they are labelled USB0, USB1, etc). So in general, just make sure you don't overlook this.

Also, does this happen with all 3.0 devices, other than mass storage as well?

Thanks,

Rajath

0 Likes

Hi,

In this first prototype of the board I used receptacles as downstream connectors (micro-b type receptacles), so I did not swapped any connection. The upstream connector is a B-Type receptacle.

Yes this happens with all 3.0 devices, because the SuperSpeed of the hub is not recognized, so if I make the device act like a 2.0 one, everything works well.

Maybe the problem is in the connection of the HX3 with the upstream connector?

Thanks again

0 Likes

Hi,

Yes, correct. The upstream connector is a type B receptacle so you should not swap the SS TX and RX lines as the connected cable will take care of that. Please check the attached image from our DVK schematic.

Best Regards,

Sananya

Screenshot (3).png

0 Likes

Hi again,

first of all thanks  for your support. Checking again my layout I found that the design is out of specification on the differential impedance of the differential pair. I saw that the specification is 90 Ohm but I'm on 139 Ohm (both on 3.0 and 2.0 pairs). Can be this the reason why the enumeration fails? On the 2.0 maybe this specification is less important and the circuit works, but maybe for the superspeed is more crucial.

And if yes, can I adjust this value without printing another pcb, just for testing purpose?

0 Likes

Hi,

No problem! Please maintain the specification for the differential pairs for both USB 2.0 and 3.0. Match the differential SS pair trace lengths within 5 mils and the D+ and D–signal trace lengths within 50 mils with differential impedance of 90 ohm. In any case, you need to swap the upstream TX and RX lines for proper enumeration so you need another printed PCB.

Best Regards,

Sananya

0 Likes

Hello,

I am also having the same issue where I have USB2.0 data working fine, but the USB3.0 is not showing up. I followed the reference design CY4609, used controlled impedance traces for the Rx and Tx lines and the Rx to Tx flip is happening in the cable. The mode select pins are configured to internal ROM.

Is there anything else that I should check?

Thank you,

Jake

0 Likes

Hello Jake,

Please refer to the the App Note on the hardware guidelines and check if your schematic and layout are fine. Please let us know if you are still facing an enumeration issue.

Best Regards,

Sananya

0 Likes

Hi,

I had a try with a new PCB. I still face an enumeration issue, but now I get the error "Port reset failed". What can be the origin of this issue?

Thanks

0 Likes

Hello,

Please also check the downstream port SS TX and RX line polarities. Regarding the error, please uninstall the device in your device manager and update the driver again.

Best Regards,

Sananya

0 Likes

Hello Sananya,

I went through the schematic and layout of my board and I do not see anything that seems incorrect. One thing that I would like to mention is when I am in ROM configuration I am getting LFPS on the Rx and Tx lines, but nothing is connecting. I am reading ≈100Ω's between the Rx+ and Rx- pins as well as the Tx+ to Tx-.

When I switch over to I2C slave mode I get no response at all from the hub. I can read the I2C registers, but they do not give me the default values that are in the datasheet. If I try writing to them I get an ack, but when I read the register the value I wrote is not there. Is there some reason the hub would not respond to the I2C writes?

Thank you,

Jake

0 Likes

Hello Jake,

Could you attach the USB traces when you are booting from internal ROM? Regarding the I2C writes, please ensure only one master is active while writing to the hub and the internal I2C address is chosen as 0xC0 or 0xB0. Please let me know if you are writing only the settings or the complete firmware using the I2C write?

Best Regards,

Sananya

0 Likes

Hello Sananya,

Attached is a screen shot of the Rx (Red trace) and Tx (Blue trace). For the I2C writes there is only one master and the address of the hub is 0xC0. Currently I am only writing settings to a few of the registers.

pastedImage_0.png

Thank you,

Jake

0 Likes

Hello Jake,

Thank you for the update. However, by USB traces, I meant the USB traffic captured with a software or hardware protocol analyzer such as USBLyzer. We can check for the sequence of events and find out if any request is not being responded to properly by the hub.

Best Regards,

Sananya

0 Likes