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:
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.
Best Answer
Have you looked at figure 1-7: -
It may be that you need to insert a resistor as indicated - try 10 ohm to 100 ohm. Also the crystal you have linked requires 5 pF shunt capacitance. You might find that the MCP2200 has an input capacitance of 5 pF (a guess on my part) and so the actual capacitor you add at OSC1 needs to be reduced to 5 pF.