AnsweredAssumed Answered

VCP device in FS mode only works with some USB connections

Question asked by E P on Mar 26, 2015
Latest reply on Jan 8, 2017 by E P
Hi all,

I've got an STM32F427 and am using the onboard HS USB PHY in FS mode using the CDC/VCP firmware generated by CubeMX (v4.7.0).  I've been doing a lot of configuration and testing and though slow (I'm not very good at it) I've got a 3/4 functioning USB connection with Windows (transmit to Windows is done; haven't tackled receiving yet).

I realized this morning that there's a little hitch: I've been plugging my board into a cheapo USB2 hub, and that seems to work fine.  But if I plug directly into the computer, it shows up as an unknown device (Device Descriptor Request Failed).  I also have a little USB isolator (which works with an older board I made, using an STM32F417 with the same USB pin configuration) and if that's inline, it doesn't work at all.

I assume that I'm missing some little hardware or software handshake that the cheapo hub ignores.  Possibly helpful information:

* I have the D+ pin pulled up to 3.3V (as one does in FS mode)
* When configuring the USB peripheral in CubeMX, I pointed out that it's Full Speed
* I've done the things that I've seen on this forum that generally make USB work, such as setting CDC_DATA_HS_MAX_PACKET_SIZE to 64
* The connection does work consistently if I use this particular USB hub, just not with any other connection that I've tried
* If I plug the board to the computer directly, after the computer fails to recognize the device if I plug it back in to the hub, nothing at all happens (though the program loop is still running) and I have to power cycle the chip to get USB back
* This is a custom board, not a devkit

... any hints on what I might be missing here?

Thanks!

Outcomes