Abstract type representing a USB device detected on the system, usually
originating from getDevices.
Certain operations can be performed on a device, but in order to do any I/O you
will have to first obtain a DeviceHandle using openDevice. Alternatively you
can use the usb-safe package which provides type-safe device handling. See:
Just because you have a reference to a device does not mean it is necessarily
usable. The device may have been unplugged, you may not have permission to
operate such device, or another program or driver may be using the device.
To get additional information about a device you can retrieve its descriptor