Sunday 31 January 2016

usb - MCP2200 doesn't work everytime


I have designed a PCB which has LM1117 (for 3.3V), Micro USB connector, MCP2200 usb-to-uart bridge, 12 MHz SMD crystal and few passive components.


We have been observing the PCB for some weeks and observed that the PCB doesn't work everytime. When I connect to any system, sometimes system throws an error "USB Device not recognized" (in windows) or "Device read/write descriptor failed" (in Linux) and then it doesn't work for hours and start working after sometime. I have reviewed my circuit and didn't have any solution to solve this issue. After resoldering the board and replacing old components several times, we have ruled out soldering/component issue. I think somehow the crystal is not able to start or there could be some race condition between voltage at Vcc and RST pin but I am not sure how to find the real problem and solve it with MCP.


The schematic of MCP2200 is shown below:


enter image description here



The layout of my PCB: (MCP2200's Pad is in green and left side of the picture with USB connector at top left corner)


EDIT:


The crystal that I am using is this.


enter image description here




No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...