public List <UsbDevice> GetPossibleSerialPorts(Context context) { usbManager = (UsbManager)context.GetSystemService(Context.UsbService); IDictionary <string, UsbDevice> allDevices = usbManager.DeviceList; List <UsbDevice> devices = allDevices.Values.Where(s => UsbSerialDevice.IsSupported(s)).ToList(); return(devices); }
public bool DisconnectDevice(UsbDevice usbDevice) { UsbSerialDevice optionalDevice = serialDevices.First(p => usbDevice.DeviceId == p.GetDeviceId()); if (optionalDevice != null) { UsbSerialDevice disconnectedDevice = optionalDevice; disconnectedDevice.SyncClose(); serialDevices.Remove(optionalDevice); serialPortBuilder.serialPortCallback.OnSerialPortsDetected(serialPortBuilder.serialDevices); return(true); } return(false); }
internal void CreateAllPorts(UsbDeviceStatus usbDeviceStatus) { int interfaceCount = usbDeviceStatus.usbDevice.InterfaceCount; for (int i = 0; i <= interfaceCount - 1; i++) { if (usbDeviceStatus.usbDeviceConnection == null) { usbDeviceStatus.usbDeviceConnection = usbManager.OpenDevice(usbDeviceStatus.usbDevice); } UsbSerialDevice usbSerialDevice = UsbSerialDevice.CreateUsbSerialDevice( usbDeviceStatus.usbDevice, usbDeviceStatus.usbDeviceConnection, i); serialDevices.Add(usbSerialDevice); } }
public WorkerThread(UsbSerialDevice usbSerialDevice) { this.device = usbSerialDevice; //working = new Java.Util.Concurrent.Atomic.AtomicBoolean(true); Android.OS.Process.SetThreadPriority(ThreadPriority.UrgentAudio); }
public WriteThread(UsbSerialDevice usbSerialDevice) { this.device = usbSerialDevice; }
public bool DisconnectDevice(UsbSerialDevice usbSerialDevice) { usbSerialDevice.SyncClose(); serialDevices.Remove(usbSerialDevice); return(true); }