408-754-4176 | info@reachtech.com

by Reach Technology, a Novanta Company
Support > Frequently Asked Questions > Why does my application run slower over USB than when I used it from the RS232 serial port?

Why does my application run slower over USB than when I used it from the RS232 serial port?

In general, users will not see any difference when switching from a PC serial port to a USB Virtual Com Port (VCP). However, there are significant differences in the configuration of a serial port and a USB port. A serial port can send data on a byte-per-byte basis whereas the USB sends data in packets. If the application is sending one byte at a time, it is very inefficient for USB as it waits for the buffer to fill up and complete a full packet or waits for a timeout to send a short packet.

The USB-serial chip on our board (FTDI) allows for configuration of these timeouts so the speed should be at least the equivalent of the legacy serial port if not better.

To reduce the time to receive (chip to PC) smaller chunks of data the latency timer can be reduced to 2ms (default 16ms) and the InTransferSize can be reduced to 64 bytes (default 4096) by modifying the FTDIPORT.INF file found in the driver folder. A similar mechanism exists for writing (PC to chip) data called buffered writes. Find more information in the AN_107 Advanced Driver Options application note.