cancel
Showing results for 
Search instead for 
Did you mean: 

8x Virtual COM ports on USB with parallel communication on STM32H735

PShah.5
Associate

I am planning to use STM32H735 controller in my product.

I've a requirement to have 8x virtual COM ports over USB and having a parallel communication without interfering with each other.

I would like to know if it is possible and will it create an issue in handling interrupts for each virtual COM ports.

4 REPLIES 4
Bob S
Principal

Each CDC (Virtual COM) port requires 2 IN endpoints and 1 OUT endpoint. So that is 16 IN and 8 OUT endpoints, plus the default EP0 IN/OUT pair for basic USB functionality. How many endpoints does the H735 have?

>>How many endpoints does the H735 have?

Not enough..

Don't FTDI and SiLabs make Quad UART devices off-the-shelf?

Sort of thing you're describing should have the MCU in some more effective role, and perhaps the board starts with a HUB.

Perhaps there's some network serial muxing method?

Or you create a host side driver?

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
PShah.5
Associate

It is possible to have 8 Virtual COM ports, confirmation from ST.

My question is, will I get different interrupt for each virtual COM port on STM32H735 ? or will there be only a single interrupt? if it is a single interrupt, how do I differentiate it?

Can you provide ST's reasoning for claiming it supports 8 VCOMs? Section 62.2.3 of RM0468 rev 3 (STM32H723/33/25/35/30 Ref Man) says it supports 8 bidirectional endpoints plus EP0. Based on my experience (as per my first post) that is at best enough for 4 VCOM ports. I am curious how they manage that - perhaps there is a way to do away with the "management" IN endpoint that I haven't found.

So @Community member​ 's suggestion of a FTDI/SL 4-port USB-to-serial (connected to 4 STM32 UARTS) plus the built-in USB gets you 8, but then you need a USB HUB on your board, or expose 2 USB connectors on your board to an external HUB.