I am developing a program that polls a device for actvity. In the past I have always used a USB device with a pure USB device driver. The upside of this was that that device was blazingly fast. The downside was that it limited me to the DLL the manufacturer distributed with it.
For certain reasons beyond my control I have to switch to a new USB device that emulates a serial port. In this case it uses an Atmel chip for that. I have also tried an FTDI-chip based device.
I have all of this working but there's a slight drawback. Connecting and disconnecting to the serial port is much slower. There is a noticable half to full second delay which the users that know the old situation complain about.
My strategy has always been to only be connected to the device when I needed to be. But I am starting to wonder if maybe I should change strategies and stay connected all day. But that has the obvious drawback of having to keep track of whether or not the connection is still up, and reconnecting if it's not.
Am I being overly cautious by connecting on demand, or is staying connected all day the obvious solution? Perhaps there is a third option I am missing here? Thanks.