* Support Touchscreen SoundGraph
@ 2008-09-05 16:33 xavier hervy
2008-10-10 11:08 ` xavier hervy
0 siblings, 1 reply; 2+ messages in thread
From: xavier hervy @ 2008-09-05 16:33 UTC (permalink / raw)
To: linux-input
Hi,
I am trying to make my touch screen work (Zalman HD160XT Plus) but I
could not find any suitable driver for it.
The Touch screen is an USB Device which consist of :
- a touch screen
- a knob
- few buttons in a front panel
- A remote control
lsusb -v
Bus 004 Device 004: ID 15c2:0034 SoundGraph Inc.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x15c2 SoundGraph Inc.
idProduct 0x0034
bcdDevice 0.12
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 59
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Devices
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.01
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 121
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 0x0008 1x 8 bytes
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
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 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 10
Device Status: 0x0000
(Bus Powered)
I am currently running Ubuntu 7.10
Two input device are created when plugged:
lrwxrwxrwx 1 root root 9 2008-09-04 22:56 usb-15c2_0034-event-mouse
-> ../event1
lrwxrwxrwx 1 root root 9 2008-09-04 22:56 usb-15c2_0034-mouse
-> ../mouse1
As well as /dev/usb/hiddev0
The input device does give me anything usefull but the hiddev0 device
provide me some infos:
A packet seems to be 64 Bytes (in opposite two 2 * 8 Bytes according to
lsusb)
The knob and buttons seem quiet easily to decode:
Example knob -: (the 5th bytes is equal to 1)
[03 00 cd ff 01 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 12 00 00 00]
[04 00 cd ff ee ff ff ff]
Example knob -: (the 13th bytes is equal to 1)
[03 00 cd ff 00 00 00 00]
[04 00 cd ff 01 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 00 00 00 00]
[04 00 cd ff 12 00 00 00]
[04 00 cd ff ee ff ff ff]
For the front panel button the 29th bytes change (I suppose the remote
work the same way but I didn't try for a while)
For the touch screen it self, I did not manage to understand fully what
is been sent but my packet look like
[03 00 cd ff dd ff ff ff ...
with the 5th byte value changing according to Y (or X) axe and the 6th,
7th and 9th to FF
Does anybody know a driver capable to support this protocol.
If not, I am willing to write the drive for it but I will need a lot of
help too as I never wrote any driver before.
How does it work when the same device is used like a keyboard and a
touch screen ?
Why the wMaxPacketSize is set at 8 Bytes when the size seems to be 64 ?
Where should I start ?
Regards,
Xavier
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Support Touchscreen SoundGraph
2008-09-05 16:33 Support Touchscreen SoundGraph xavier hervy
@ 2008-10-10 11:08 ` xavier hervy
0 siblings, 0 replies; 2+ messages in thread
From: xavier hervy @ 2008-10-10 11:08 UTC (permalink / raw)
To: linux-input
On Fri, 2008-09-05 at 17:33 +0100, xavier hervy wrote:
> Hi,
> I am trying to make my touch screen work (Zalman HD160XT Plus) but I
> could not find any suitable driver for it.
> The Touch screen is an USB Device which consist of :
> - a touch screen
> - a knob
> - few buttons in a front panel
> - A remote control
> lsusb -v
>
> Bus 004 Device 004: ID 15c2:0034 SoundGraph Inc.
> Device Descriptor:
> bLength 18
> bDescriptorType 1
> bcdUSB 1.10
> bDeviceClass 0 (Defined at Interface level)
> bDeviceSubClass 0
> bDeviceProtocol 0
> bMaxPacketSize0 8
> idVendor 0x15c2 SoundGraph Inc.
> idProduct 0x0034
> bcdDevice 0.12
> iManufacturer 0
> iProduct 0
> iSerial 0
> bNumConfigurations 1
> Configuration Descriptor:
> bLength 9
> bDescriptorType 2
> wTotalLength 59
> bNumInterfaces 2
> bConfigurationValue 1
> iConfiguration 0
> bmAttributes 0x80
> (Bus Powered)
> MaxPower 100mA
> Interface Descriptor:
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 0
> bAlternateSetting 0
> bNumEndpoints 1
> bInterfaceClass 3 Human Interface Devices
> bInterfaceSubClass 0 No Subclass
> bInterfaceProtocol 2 Mouse
> iInterface 0
> HID Device Descriptor:
> bLength 9
> bDescriptorType 33
> bcdHID 1.01
> bCountryCode 0 Not supported
> bNumDescriptors 1
> bDescriptorType 34 Report
> wDescriptorLength 121
> 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 0x0008 1x 8 bytes
> bInterval 10
> Interface Descriptor:
> bLength 9
> bDescriptorType 4
> bInterfaceNumber 1
> 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 0x82 EP 2 IN
> bmAttributes 3
> Transfer Type Interrupt
> Synch Type None
> Usage Type Data
> wMaxPacketSize 0x0008 1x 8 bytes
> bInterval 10
> Device Status: 0x0000
> (Bus Powered)
>
> I am currently running Ubuntu 7.10
> Two input device are created when plugged:
> lrwxrwxrwx 1 root root 9 2008-09-04 22:56 usb-15c2_0034-event-mouse
> -> ../event1
> lrwxrwxrwx 1 root root 9 2008-09-04 22:56 usb-15c2_0034-mouse
> -> ../mouse1
>
> As well as /dev/usb/hiddev0
>
> The input device does give me anything usefull but the hiddev0 device
> provide me some infos:
> A packet seems to be 64 Bytes (in opposite two 2 * 8 Bytes according to
> lsusb)
> The knob and buttons seem quiet easily to decode:
> Example knob -: (the 5th bytes is equal to 1)
> [03 00 cd ff 01 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 12 00 00 00]
> [04 00 cd ff ee ff ff ff]
>
> Example knob -: (the 13th bytes is equal to 1)
> [03 00 cd ff 00 00 00 00]
> [04 00 cd ff 01 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 00 00 00 00]
> [04 00 cd ff 12 00 00 00]
> [04 00 cd ff ee ff ff ff]
> For the front panel button the 29th bytes change (I suppose the remote
> work the same way but I didn't try for a while)
>
> For the touch screen it self, I did not manage to understand fully what
> is been sent but my packet look like
> [03 00 cd ff dd ff ff ff ...
> with the 5th byte value changing according to Y (or X) axe and the 6th,
> 7th and 9th to FF
>
> Does anybody know a driver capable to support this protocol.
> If not, I am willing to write the drive for it but I will need a lot of
> help too as I never wrote any driver before.
> How does it work when the same device is used like a keyboard and a
> touch screen ?
>
> Why the wMaxPacketSize is set at 8 Bytes when the size seems to be 64 ?
>
> Where should I start ?
>
> Regards,
>
> Xavier
Anybody is willing to give me a hint where to start ?
Xavier
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-10-10 11:08 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-05 16:33 Support Touchscreen SoundGraph xavier hervy
2008-10-10 11:08 ` xavier hervy
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).