cirque smartcat touchpad

Peter Hutterer peter.hutterer at who-t.net
Tue Jan 1 22:18:05 PST 2013


On Fri, Dec 28, 2012 at 01:22:44AM -0800, Sebastian Glita wrote:
> 
> Hi,
> 
> The Smart Cat device is recognized with the evdev driver correctly, but it does not respond, although it is enabled.

it's not quite detected correctly, looking at the axis labels this device
looks like a standard USB mouse (two relative axes, one wheel, three
buttons).

for evdev/synaptics to treat this properly, the device needs ABS_X/Y and
BTN_TOOL_FINGER.

so really, you need to add support for this device to the kernel drivers.

Cheers,
   Peter

> 
> >>  Is it recognized with the latest sources from cgit.freedesktop.org (mouse, 
> > evdev, synaptics)?
> > 
> > the main question is whether it is supported by the kernel. X hardly deals
> > with touchpads directly these days, it's handled by the (linux) kernel and
> > we see the evdev interface. So you need to first check if the kernel
> > supports it.
> > 
> >>  Do the 4-buttons work? The scroll?
> > 
> > yes, likely, if the kernel supports the touchpad.
> 
> You're right.
> 
> > 
> >>  Do the "advanced gestures" work?
> > 
> > no, only scrolling. gestures are implemented on the client-side, so these
> > must be implemented by your client-stack (which may already do so, e.g.
> > newer GTK and Unity)
> 
> You are here right too: with the `synaptics-test' program, there are 3 buttons, but total of seven combined, motion and only vertical scrolling works.
> 
> It seems the touchpad is quite simple.
> 
> Smart Cat stream is very direct (thanks Jan for synaptics-test):
>     byte 0: 0x01-left, 0x02-right|toprightcorner, 0x04-side,
>              0x03-left+right|toprightcorner, 0x05-left+side,
>              0x06-side+right|toprightcorner,
>              0x07-left+side+right|toprightcorner,
>     byte 1: relative signed horizontal motion,
>     byte 2: relative signed vertical motion,
>     byte 3: relative signed vertical scroll,
>     byte 4 ... 12: 0x00.
> 
> The driver that binds it is usbhid. But how do I make it active?
> Thanks,
> Sebastian
> 
> user at localhost ~ $ xinput list-props 10
> 
> Device 'Cirque Corporation 9925 AG Touchpad':
>     Device Enabled (132):    1
>     Coordinate Transformation Matrix (134):    1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
>     Device Accel Profile (265):    0
>     Device Accel Constant Deceleration (266):    1.000000
>     Device Accel Adaptive Deceleration (267):    1.000000
>     Device Accel Velocity Scaling (268):    10.000000
>     Device Product ID (250):    1160, 641
>     Device Node (251):    "/dev/input/event19"
>     Evdev Axis Inversion (269):    0, 0
>     Evdev Axes Swap (271):    0
>     Axis Labels (272):    "Rel X" (142), "Rel Y" (143), "Rel Vert Wheel" (264)
>     Button Labels (273):    "Button Left" (135), "Button Middle" (136), "Button Right" (137), "Button Wheel Up" (138), "Button Wheel Down" (139), "Button Horiz Wheel Left" (140), "Button Horiz Wheel Right" (141)
>     Evdev Middle Button Emulation (274):    0
>     Evdev Middle Button Timeout (275):    50
>     Evdev Third Button Emulation (276):    0
>     Evdev Third Button Emulation Timeout (277):    1000
>     Evdev Third Button Emulation Button (278):    3
>     Evdev Third Button Emulation Threshold (279):    20
>     Evdev Wheel Emulation (280):    0
>     Evdev Wheel Emulation Axes (281):    0, 0, 4, 5
>     Evdev Wheel Emulation Inertia (282):    10
>     Evdev Wheel Emulation Timeout (283):    200
>     Evdev Wheel Emulation Button (284):    4
>     Evdev Drag Lock Buttons (285):    0
> 
> > 
> > Cheers,
> >    Peter
> > 
> 
> 


More information about the xorg mailing list