使用iSerialNumber USB设备描述符唯一标识GoPro摄像机 [英] Use iSerialNumber USB device descriptor to uniquely identify GoPro Camera
问题描述
我感兴趣的字段是来自lsusb -d <idVendor>:<idProduct> -v
The field I'm interested is iSerial from the output of: lsusb -d <idVendor>:<idProduct> -v
非唯一iSerialNumber的示例输出:
Example output of a non-unique iSerialNumber:
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 239 Miscellaneous Device
bDeviceSubClass 2 ?
bDeviceProtocol 1 Interface Association
bMaxPacketSize0 64
idVendor 0x0402 ALi Corp.
idProduct 0x9665 Gateway Webcam
bcdDevice 0.09
iManufacturer 3
iProduct 1
iSerial 0 <-- Three string descriptors exist to provide details of the manufacturer, product and serial number. There is no requirement to have string descriptors. If no string descriptor is present, a index of zero should be used.
bNumConfigurations 1
Configuration Descriptor:
据我所知,iSerialNumber并不总是包含唯一可识别的字符串值. 例如,Iphone和Ipad包含此信息,但我测试过的某些其他设备没有此值. 根据 USB标准,具有字符串描述符不是强制性的.
As far as I know the iSerialNumber does not always include a uniquely identifiable string value. For example the Iphone and Ipad include this information, but some other devices I've tested do not have this value. It is not mandatory according to the USB standard to have string descriptors.
拥有GoPro的人可以告诉我它是否具有序列号的字符串描述符吗?
Can someone who owns a GoPro tell me if it has a string descriptor for the serial number?
我还没有相机.
推荐答案
我的退回 iSerial 3 123456789ABC ,我已使用Hero3 Black Edition进行了测试
Mine returned iSerial 3 123456789ABC, I tested with Hero3 Black Edition
这是完整的结果:
Bus 001 Device 004: ID 2672:0004
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x2672
idProduct 0x0004
bcdDevice 0.00
iManufacturer 1 GoPro
iProduct 2 Storage
iSerial 3 123456789ABC
bNumConfigurations 2
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 4mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 32
bNumInterfaces 1
bConfigurationValue 2
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 2mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 8 Mass Storage
bInterfaceSubClass 6 SCSI
bInterfaceProtocol 80 Bulk-Only
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 2
Device Status: 0x0001
Self Powered
这篇关于使用iSerialNumber USB设备描述符唯一标识GoPro摄像机的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!