libusb 経由で (Linux ドライバーを持たない) デバイスと通信しようとしています。私は多くの基本的なコードを書き、Windows (ドライバーがある) で USB スヌーピング ソフトウェアを使用して、送信する必要があるコードを見つけました。ただし、以下に示すように「lsusb -v -d 1267:0000」を実行すると、1 つのエンドポイントのみが表示されます。
Bus 003 Device 005: ID 1267:0000 Logic3 / SpectraVideo plc
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x1267 Logic3 / SpectraVideo plc
idProduct 0x0000
bcdDevice 0.00
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 8
Device Status: 0x0000
(Bus Powered)
問題は、データを送信できる書き込みエンドポイントが必要ですが、私の理解では、読み取りエンドポイントである 0x81 エンドポイントしか表示されないことです (私はこれに非常に慣れていません)。このエンドポイントにアクセスできるようにするために何かする必要がありますか?