We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Does anyone know how I can detect if my USB device is connected to a Host or not?
Thx Steven
Can you perhaps write in details (regarding board schematic found here http://www.keil.com/mcbstm32f200/mcbstm32f200-schematics.pdf) what needs to be changed on Keil MCBSTM32F400 board so other people having same problem can do it themselves.
sure! IC8 in the schematic is an USBLC6-4 use a WE-TVS instead. As you can see on the datasheet(katalog.we-online.de/.../824014.pdf) they have an extra diode on pin 5 in reverse direction to VDD. If now D+ is high on IC8 pin 3 it doesn't feed back to VBUS_FS which is connected to the USB detection pin PA9.
Cheers!
Great, thanks for detailed explanation I hope somebody having same issue in future will value this :-)
So with mentioned hardware changes + adding definition USBD_VBUS_DETECT=1 for driver solves problem of connect/disconnect detection.
It is really not necessary to change the USBLC6-4 chip. As D+ really is the one that gives a feedback on VBUS that situation can also be avoided by not calling USBD_Connect until VBUS was detected.