Windows not recognizing CY7C65215A

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

cross mob
BeUh_3903566
Level 2
Level 2

Hi,

I could use some help figuring out what's wrong with a board I built with a CY7C65215A. I want to use the CY7C65215A to translate USB to I2C at 1.8V. I have VDD at 1.8V and VCCD tied to VDD. VBUS is 5V, and the USB cable (micro-USB if it matters) is connected to a Windows 10 computer.

When I power on the board and connect the USB cable to my computer, Windows gives the error "USB device not recognized. The last USB device you connected to this computer malfunctioned, and Windows does not recognize it." Device Manager shows "Unknown USB Device (Device Descriptor Request Failed)" Under USB controllers.

I have looked at USB D+ and D- with an oscilloscope, and both look (I think) as expected (screenshot below, CH1 USBD+ and CH2 USBD-, single ended scope probes). Before connecting the USB cable, the device asserts WAKEUP to 1.8V and SUSPEND to 0V. When the USB cable is plugged in, WAKEUP stays at 1.8V and SUSPEND is asserted to 1.8V.

I have installed the Cypress driver package and the Cypress USB-Serial Configuration Utility. I can use the utility to talk to a previous board I made using a CY7C65215 (note: no final A). The Utility does not show any targets in the dropdown when connected to my new CY7C65215A board.

One potential question: I did not find it recommended in the datasheet to ground the solderable pad on the bottom of the chip, so I left it floating. Could this be the problem?

Thanks for all help or suggestions!

CY7C65215A_Circuit.pngDLPC980_USBPM.png

0 Likes
1 Solution

I've found the solution. VBUS must have a decoupling capacitor to ground installed. I'm not sure if the Cypress parts trigger on some edge or need some delay on this signal going high, but adding a 1uF capacitor to VBUS let Windows recognize the part. None of the other assumptions made a difference (Exposed PAD left floating, xRES left floating, VCC connected to VDD @ 1.8V).

View solution in original post

0 Likes
5 Replies
BeUh_3903566
Level 2
Level 2

Debug update: I have tried the following with no difference in behavior:

  • Removing the part, attaching the solderable pad to ground, and replacing the part
  • Cutting the trace between VCC and VDD, adding a 1uF capacitor between VCC and ground
  • Pulling WAKEUP both high and low externally

My next debug step is to try replacing the CY7C65215A with CY7C65215 parts. I'd still appreciate any debug tips!

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

Hello,

-If you would like to directly connect to the 1.8V for VDDD, please disable the internal 1.8V regulator using the USB-Serial Configuration Utility. It is recommended to add decoupling capacitors of 4.7 uF and 0.1uF. Was the 215 part enumerating properly with the same supplies?

-It is recommended to connect to the VBUS pin of the connector using a ferrite bead to isolate noise from the host.

-It is recommended to connect the XRES pin to VDDD with an RC circuit to provide a  minimum delay of 1 us (recommended values of R and C are 100 ohm and 0.01 uF).

-Please also ensure that the I2C device connected is not powered before the USB-Serial device.

Best Regards,

Sananya

0 Likes

Sanaya,

Thank you for your reply. Please see my responses below:

  • I don't think I can get this far yet - since Windows doesn't enumerate the part, I can't talk to it with the USB-Serial Config Utility. I will make this change if/when I can talk to it. I have added decoupling to no effect. I have attached my previous schematic using the 215 part - it had different power supply chips.
  • Understood, but I don't see any noise on the line on the scope. I'll keep this in mind for the next revision, but I don't think this would cause the part not to enumerate, especially since VBUS looks good in the lab.
  • I have done this to no effect. I did measure that the XRES pin was low before I added this modification - is this a clue? If the pin is pulled high internally, what might cause the part to put itself in reset? It is now pulled high.
  • Can you elaborate on this further? I have an FPGA and an I2C level shifter on the bus. The FPGA is an I2C slave, and the level shifter translates the I2C to 3.3V which goes to a connector - it is not currently connected to anything. There are 2.2k pull-ups to 1.8V on SCL and SDA. I have monitored SCL and SDA - nothing is happening on the bus other than the signals being pulled high.

I haven't received my 215 parts to swap yet, but I'll keep you updated. Do you have anything else I could try? Any idea why the XRES pin would be low before I was pulling it high externally?

pastedImage_1.png

Thanks,

Ben

0 Likes

Another update - I have replaced the 215A with a 215 and get the same problem - there must be something I'm missing PCB wise. I'll try to capture the entire USB transfer on the bad board and see what's going on.

0 Likes

I've found the solution. VBUS must have a decoupling capacitor to ground installed. I'm not sure if the Cypress parts trigger on some edge or need some delay on this signal going high, but adding a 1uF capacitor to VBUS let Windows recognize the part. None of the other assumptions made a difference (Exposed PAD left floating, xRES left floating, VCC connected to VDD @ 1.8V).

0 Likes