public static AutoProgDeviceTypes GetAutoProgType(string portName) { AutoProgDeviceTypes ret = AutoProgDeviceTypes.NONE; #if !NETCOREAPP var portInfo = ComputerSystemHardwareHelper.GetWin32PnPEntityClassSerialPortDevice(portName); #else Win32PnPEntityClass portInfo = null; #endif if (portInfo != null) { ret = AutoProgDeviceTypes.UART; if (portInfo.Description.ToUpper().Contains("Sigma Designs ZWave programming interface".ToUpper())) { if (portInfo.HardwareId == "0001") { ret = AutoProgDeviceTypes.SD_USB_0001; } else { ret = AutoProgDeviceTypes.SD_USB_0000; } } else { if (portInfo.Description.ToUpper().Contains("UZB") || portInfo.Description.ToUpper().Contains("ZCOM")) { if (portInfo.HardwareId == "0001") { ret = AutoProgDeviceTypes.UZB_0001; } else { ret = AutoProgDeviceTypes.UZB_0000; } } } } ret.ToString()._DLOG(); return(ret); }
public SerialPortProgrammerDataSource(string sourceName) : base(sourceName, BaudRates.Rate_115200) { #if !NETCOREAPP var device = ComputerSystemHardwareHelper.GetWin32PnPEntityClassSerialPortDevice(sourceName); #else Win32PnPEntityClass device = null; #endif if (device != null && device.Caption != null && device.Caption.Contains("Sigma Designs")) { StopBits = PInvokeStopBits.One; IsSigmaDesignsUsbProgrammingDriver = true; } else if (device != null && device.Caption != null && (device.Caption.Contains("UZB") || device.Caption.Contains("ZCOM"))) { IsUzbDriver = true; } else { StopBits = PInvokeStopBits.Two; //UART } }