Writing HID driver for a USB phone handset IPEVO VP170 (0x1778:0x0403)
"Robin H. Johnson" <[email protected]>
| Newsgroups | gmane.linux.usb.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi,
USB drivers in general are something a little new to me, but I picked up a USB
phone handset a little while ago, and while the USB-Audio portion of it works
great, none of the buttons actually do anything, and the LED doesn't light up
yet.
Here's the manuf's page on the phone: http://www.ipevo.com/v2/prod/p111444.htm
libhid appears to need hackery as it only looks at the EP1IN endpoint, while
this device uses EP3IN for the keypad, even fixing that to do a lookup of the
correct input and interface number it still doesn't like the unit, so I figured
probably better to post here and see if somebody had better pointers to being
able to use the data. A userspace app would probably be the most use, but I'll
settle for actually managing to receive the data!
Using Pete's binary usbmon, I can see that each of the 25 buttons has a unique
code, and pressing said button repeatedly cycles a second byte through values
0-3 (looping).
usb 2-1: new full speed USB device using ohci_hcd and address 2
usb 2-1: configuration #1 chosen from 1 choice
input: ÿ Free-1 USB Phone as /class/input/input4
input: USB HID v1.00 Device [ÿ Free-1 USB Phone] on usb-0001:01:0b.1-1
The iManufacturer is set to 0xFF.
Here is the interface and endpoint for the controls. I find it odd that the HID
Report Descriptor is not present. I suspect it will contain the LED control as
well.
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 3
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Devices
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.00
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 50
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0007 1x 7 bytes
bInterval 10
--
Robin Hugh Johnson
Gentoo Linux Developer & Council Member
E-Mail : [email protected]
GnuPG FP : 11AC BA4F 4778 E3F6 E4ED F38E B27B 944E 3488 4E85
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
signature.asc
(application/pgp-signature, 321 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.2 (GNU/Linux) Comment: Robbat2 @ Orbis-Terrarum Networks - The text below is a digital signature. If it doesn't make any sense to you, ignore it. iD8DBQFF/kxfPpIsIjIzwiwRAufvAKC/sSg3qDEgOObByienIQzBJw5lRQCeIlIa 7bd6vAKDuY9lnIB9FtWOXck= =UHp+ -----END PGP SIGNATURE-----