Original link: https://blog.frytea.com/archives/633/
Get all the USB devices of the physical node by scanning the following directories:
/sys/bus/usb/devices/usb* /sys/bus/usb/devices/usb*/$busnum-*
The main information collected for a device from this file system is as follows:
{ "busnum": 1, "class": 0, "devnum": 2, "level": 1, "manufacturer": "QEMU", "port": 0, "prodid": "0001", "product": "QEMU USB Tablet", "speed": "12", "usbpath": "1", "vendid": "0627" }
File meaning
Some files in the directory have the following meanings:
-
busnum: bus number -
devnum: device number (the first device on the bus) -
speed: speed -
bDeviceClass: device type -
idVendor: The manufacturer ID of the device, which is managed and applied by the USB device manufacturer to the USB-IF official -
idProduct: The product number produced by the manufacturer, different idProducts under the same manufacturer represent different product series of the company -
product: manufacturer -
manufacturer: product -
serial: USB hardware device serial number, for example0000:00:01.2
positioning method
There are two ways to locate a USB device:
-
busnum+devnum -
idVendor+idProduct
Device type bDeviceClass
| class code | usage | describe |
|---|---|---|
| 00h | device descriptor | Use class information in the interface Descriptors |
| 01h | interface descriptor | audio |
| 02h | device descriptor, interface descriptor | Communication equipment, such as telephones, modems, etc. |
| 03h | interface descriptor | HID equipment |
| 05h | interface descriptor | Physical |
| 06h | interface descriptor | Image |
| 07h | interface descriptor | printer |
| 08h | interface descriptor | mass storage |
| 09h | device descriptor | Hub USB hub |
| 0Ah | interface descriptor | CDC-Data |
| 0Bh | interface descriptor | Smart Card |
| 0Dh | interface descriptor | Content Security |
| 0Eh | interface descriptor | UVC Video/CAMERA |
| 0Fh | interface descriptor | Personal Healthcare |
| 10h | interface descriptor | Audio and video equipment |
| 11h | device descriptor | Billboard Device Class |
| 12h | interface descriptor | USB Type-C Bridge Class |
| DCh | device descriptor, interface descriptor | Diagnostic Device |
| E0h | interface descriptor | Wireless Controller |
| EFh | device descriptor, interface descriptor | Miscellaneous |
| FEh | interface descriptor | Application Specific |
| FFh | device descriptor, interface descriptor | Manufacturer’s custom |
references
- USB device class bDeviceClass, bDeviceSubClass, bDeviceProtocol By USB Chinese Network
- idVendor, idProduct and bcdDevice in USB Device Descriptor By USB 中文网
- Serial number of USB hardware device By IBM
This article is reproduced from: https://blog.frytea.com/archives/633/
This site is for inclusion only, and the copyright belongs to the original author.