I'm developing an USB application for a STM32 MCU.

For now I have 2 interfaces for CCID classes and I want to add another for a Virtual COM Port. On a STM32F4, The limit of IN endpoint in FullSpeed is 5 plus one reserved for control (80). I already used 4 IN endpoint for the CCIDs.

Does Interupt IN for CDC class is optional?

I think i have to declare 3 endpoints like this:

  • Bulk IN
  • Bulk OUT
  • Interupt IN

Note : I know that in HighSpeed there is 7 endpoint available but i don't have time to develop a custom board (need an external phy chip and other things).

  • \$\begingroup\$ Just a side note: On STM32, you need an external PHY with the USB HS only if you actually want it to run at high-speed. If full-speed is sufficient, you can use the integrated full-speed PHY of the USB HS peripheral (there is one). \$\endgroup\$ – dim Jul 7 '16 at 7:43
  • \$\begingroup\$ The CDC specification says that the notification endpoint is optional. \$\endgroup\$ – CL. Jul 7 '16 at 7:44

The notification endpoint is optional, as CL said, however I wouldn't count on proper driver support.

  • \$\begingroup\$ I will try without Notification endpoint for now. If it really not supported by the windows driver i will use @dim's solution anyway. \$\endgroup\$ – user2740652 Jul 7 '16 at 9:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.