SerialManager: "Fast USB to Serial" option

I looked on Google and through the source code and couldn’t find any information about the “Fast USB to Serial” option for the SerialManager device.

Based on the source code, all it does is change a few of the the timeout parameters.

Does anyone know:
1: What does enabling this option do?
2: What are the downsides of enabling this option?


1 Like

There are the following commit messages:

16757 | nico | 2018-07-31 12:01:47 -0700 (Tue, 31 Jul 2018) | 14 lines

SerialManager: Improved performance on Windows.
Pull Request #648 by Lukas-Lang: Make Serial port communication
faster for USB based serial ports.
Tested on a complicated microscope system and no stability
problems found. Device-Property manager appears to be respond
much, much faster (as predicted by Lukas: going from ~70 to ~7ms
per serial command).

This PR changes the timing settings for serial ports under Windows. Essentially, this speeds up USB based serial ports significantly - I have observed an improvement of up to 10x (from ~70ms to ~7ms per command) compared to the previous implementation. This makes navigating using serial port based stages significantly smoother.

The new timing settings effectively tell Windows to complete the read calls to the serial port immediately instead of waiting for a while. For a more detailed explanation see this post on StackOverflow.

Since I do not have access to a computer with a true serial port, I could not quantify the impact on this type of port. However, my understanding is that it should not negatively affect performance.

r16762 | nico | 2018-08-17 14:11:57 -0700 (Fri, 17 Aug 2018) | 5 lines

SerialManager: Made Fast USB to Serial setttings optional, On by default.
One of our microscopes has intermittent problems with an Arduino, sometimes
resulting in blue screens. I am not sure if the serial port timings are related
but we do notice a correlation. Having this option should make it easier to troubleshoot and also easier for users to switch it off is so desired.

r16778 | nico | 2018-09-06 11:16:03 -0700 (Thu, 06 Sep 2018) | 1 line

SerialManager: Set Fast USB2Serial off by default.