/// <summary>
 /// constructor to access all futaba devices of
 /// the same vendor by vendor ID and set the device
 /// with the appropriate product ID as the current device
 /// </summary>
 /// <param name="vid">vendor ID of futaba device</param>
 /// <param name="pid">product ID of futaba device</param>
 public FutabaCOM(String vid, String pid)
 {
     //take over arguments
     _vid = vid;
     _pid = pid;
     //connect to device
     _usbCurrentDevice = new USBInterface(_vid, _pid);
     //create a new display instance
     _ledDisplay = new LedDisplay();
     //read all available keys
     _keyList = _ledDisplay.GetKeys();
     //create a timer for display updates
     tiWriteText.Elapsed += new ElapsedEventHandler(tiWriteText_ElapsedHandler);
 }
 /// <summary>
 /// sets the current device
 /// </summary>
 /// <param name="vid">vendor ID</param>
 /// <param name="pid">product ID</param>
 public void SetCurrentDevice(string vid, string pid)
 {
     _vid = vid;
     _pid = pid;
     try
     {
         if (_usbCurrentDevice != null) _usbCurrentDevice = null;
         _usbCurrentDevice = new USBInterface(_vid, _pid);
     }
     catch (Exception ex)
     {
         throw new Exception("Setting of current device failed. ", ex);
     }
 }
 /// <summary>
 /// constructor to access all futaba devices of
 /// the same vendor by vendor ID
 /// </summary>
 /// <param name="vid">vendor id of futaba device</param>
 public FutabaCOM(String vid)
 {
     //take over arguments
     _vid = vid;
     //connect to all devices of this vendor
     _usbDevices = new USBInterface(_vid);
     //create a new display instance
     _ledDisplay = new LedDisplay();
     //read all available keys and their values
     _dicChars = _ledDisplay.GetDictionary();
     //create a timer for display updates
     tiWriteText.Elapsed += new ElapsedEventHandler(tiWriteText_ElapsedHandler);
 }