Mục tiêu: Tôi có một bảng trắng mô phỏng như chuột. Vì vậy, khi bạn nhấp và kéo trên bảng trắng, nó sẽ di chuyển con trỏ. Tôi muốn làm cho một bảng trắng hoạt động trong Ubuntu Nó hoạt động trên windows. Thông tin thiết bị: đầu ra cat /proc/bus/input
chứa thông tin thiết bị
I: Bus=0003 Vendor=4623 Product=011a Version=0111
N: Name="Hite Board-XXXXXXXX"
P: Phys=usb-0000:00:14.0-1/input0
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/
U: Uniq=
H: Handlers=mouse2 event13
B: PROP=2
B: EV=b
B: KEY=400 0 0 0 0 0
B: ABS=260800000000003
abhishek@vaio:~$ lsusb -d 4623:011a -v
Bus 001 Device 012: ID 4623:011a
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x4623
idProduct 0x011a
bcdDevice 0.01
iManufacturer 1
iProduct 2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 73
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 150mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 429
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 8
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 6
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 33 US
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 91
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 1
Vì bInterfaceProtocol
là Không, linux không nhận ra nó là một thiết bị nhập chuột.
Cách tiếp cận lý tưởng để đảo ngược kỹ thuật từ cửa sổ để làm cho nó hoạt động trong linux.
Thiết bị trong trình quản lý thiết bị windows:
Chỉnh sửa 1:
abhishek@vaio:~/dev_work/whiteboard/pyusbwhiteboard$ usb-devices | grep -A5 'Vendor=4623 ProdID=011a' | grep Driver
I: If#= 0 Alt= 0 #EPs= 2 Cls=03(HID ) Sub=00 Prot=00 Driver=usbfs
I: If#= 1 Alt= 0 #EPs= 2 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid
đầu ra dmesg: http://codepad.org/fFtwryw6
@SamProtsenko đã thêm, vui lòng kiểm tra.
—
Abhishek Bhatia
Ok, vì vậy trình điều khiển đã sẵn sàng và bạn chỉ cần nói với Linux (phần không gian người dùng) rằng thiết bị của bạn là chuột. Tôi không tìm thấy bản thân mình trong tình huống như thế này, nhưng nếu tôi là bạn tôi sẽ cố gắng để xác định rằng trong xorg.conf (tìm kiếm theo
—
Sam Protsenko
InputClass
, MatchVendor
, MatchProduct
từ khóa) hoặc cố gắng thay thế bInterfaceProtocol
và bInterfaceSubclass
sử dụng quy tắc udev.
Dựa trên đầu ra dmesg mà bạn cung cấp, nó dường như được nhận dạng là màn hình cảm ứng thay vì (chỉ) một con chuột (
—
JanC
hid-multitouch
trình điều khiển được tải)?
@Janc bạn đúng
—
Abhishek Bhatia
usb-devices | grep -A5 'Vendor=4623 ProdID=011a' | grep Driver
gì? Ngoài ra, hãy thử ngắt kết nối và sau đó kết nối lại thiết bị của bạn, sau đó chạydmesg
. Những gì nó nói?