What should be the communication settings when using Colibri's USBC OTG port as a USB Client acting as virtual CoM port

I plan to use the USBC port of the Colibri to connect my Aster+Colibri to the PC and implement a communication interface that makes use of the Toradex modules as a USB Device(USB Function/Slave) and the PC as the USB Host.

I referred a nice article Having a USB tête-à-tête with your embedded device explaining how to implement such an architecture, and so I have disabled ActiveSync on the device and it is getting recognized as a Serial Device on the Host.

I have written a simple application on the device side(Toradex) that sends out sample strings out of the Virtual Serial Port(\$device\com0).

Now, I have 2 questions in my mind:

  • What would be the rate/bitrate that this data would be going out onto the USB, or what would be the end-to-end throughput? Will it be one of the standard UART baudrates, or will go upto the USB High Speed specified bandwidth minus the protocol overheads?
  • On the host side, I am supposed to write an application to send and receive the data on this virtual serial port. But what if I use a serial terminal like putty and open a Serial Session on this Virtual COM port, what should I set the serial protocol settings to?

Thanks in advance

Dear @kapeed

  • I never tested the end-to-end throughput. But it is not related to any standard baud rate, it will rather be the USB bandwith minus protocol overhead minus potential bandwith limitations given by the driver implementation.

  • The developer page article Serial Over USB gives an overview about what to do on the host side.If you find a terminal program, which can open the port \\.\wceusbsh001 (instead of something like COM1), you should be fine. The baud rate and start/stop bits will be ignored. I’m not sure whether the handshake settings have any effect on the behavior.

Best Regards, Andy

Hi Andy,

I need help understanding the Serial Over USB article.

Firstly I have disabled ActiveSync on the device as instructed. But I am not sure if it has been disabled, Can you please let me know if you see it disabled? Here are some snapshots of my device’s settings captured over the Remote Display, and the host/PC side device manager:

[upload|sey4DWww0dQCUknXhXJowcku7rs=]

[upload|2Y03UsLHnzm4bhw3jSNiV1b65As=]

Restarted my Aster Board. This is how the device manager on my host/PC shows the Aster board.
[upload|993tW7b3s4hs5MsKekz3pePCMiI=]
AND
[upload|nXcIZlFJ02H45/h2oYUmCMQsfqM=]

Next, from the Article I am not able to gather whether the following has to be done on the PC/Host side or device side. And how to achieve it?
[upload|HBFk0cKyytWJUN/7MapWI/DpNvA=]

An update, we have been able to send and receive message strings between the Host and the Device. We used the WinUSB sample project and had to disable the wcescomm service on the host/PC side. We are using Windows 8.1 on the host machine. Thanks Andy