I am making a PCB with a STM32f4xx microcontroller. It is to act as a USB virtual COM port peripheral. Power and communication are to be done through a Micro-USB connector. The USBUF01P6 is a EMI filter/ESD protector and provides line termination. I think I have connected it correctly but it's not working on my prototype PCB.
It may very well be a software problem. I did all the testing on the STM32F4DISCOVERY development board, which used a USB OTG micro-AB connector hooked up as follows:
That board seems to handle filtering and line termination separately, but I am following the datasheet's application diagram for the USBUF01P6. I don't wish to use the ID pin because I just want this to act as a peripheral.
Is there something obvious I am doing wrong? This is my first time working with USB hardware so I don't know. If not, I am probably doing something in software that is sensitive to the state of the OTG_FS_ID pin.