Pointing device acting as joystick (Peter Hutterer please help!)

Peter Hutterer peter.hutterer at who-t.net
Mon Nov 8 18:49:33 PST 2010


On Tue, Nov 09, 2010 at 12:42:03PM +1100, Timothy S. Nelson wrote:
> On Fri, 29 Oct 2010, Peter Hutterer wrote:
> 
> >On Fri, Oct 29, 2010 at 11:11:00AM +1100, Timothy S. Nelson wrote:
[...]
> >>       In other words, it knows that I told it to use relative mode, but
> >> it goes ahead and uses absolute anyway (or I'm misunderstanding the
> >> message :) ).
> >
> >the two messages are unrelated. mode tells the driver how to forward
> >axis data but it doesn't change the physical device. your device still has
> >absolute axes, the driver converts that to relative and forwards them.
> 
> 	Hmm.  So, after examining the evtest data more carefully, I'm
> wondering about the absolute->relative conversion.  For example,
> here's a grep of the relevant events:
> 
> Event: time 1289267574.071171, type 3 (Absolute), code 0 (X), value 2
> Event: time 1289267574.087156, type 3 (Absolute), code 0 (X), value 4
> Event: time 1289267574.119151, type 3 (Absolute), code 0 (X), value 3
> Event: time 1289267574.135155, type 3 (Absolute), code 0 (X), value 0
> Event: time 1289267574.407151, type 3 (Absolute), code 0 (X), value 2
> Event: time 1289267574.423152, type 3 (Absolute), code 0 (X), value 8
> Event: time 1289267574.439153, type 3 (Absolute), code 0 (X), value 16
> Event: time 1289267574.455151, type 3 (Absolute), code 0 (X), value 22
> Event: time 1289267574.471148, type 3 (Absolute), code 0 (X), value 33
> Event: time 1289267574.487061, type 3 (Absolute), code 0 (X), value 46
> Event: time 1289267574.503151, type 3 (Absolute), code 0 (X), value 72
> Event: time 1289267574.519146, type 3 (Absolute), code 0 (X), value 114
> Event: time 1289267574.535152, type 3 (Absolute), code 0 (X), value 176
> Event: time 1289267574.551146, type 3 (Absolute), code 0 (X), value 246
> Event: time 1289267574.567150, type 3 (Absolute), code 0 (X), value 330
> Event: time 1289267574.583147, type 3 (Absolute), code 0 (X), value 394
> Event: time 1289267574.599150, type 3 (Absolute), code 0 (X), value 418
> Event: time 1289267574.615148, type 3 (Absolute), code 0 (X), value 424
> Event: time 1289267574.631149, type 3 (Absolute), code 0 (X), value 432
> Event: time 1289267574.647150, type 3 (Absolute), code 0 (X), value 435
> Event: time 1289267574.679147, type 3 (Absolute), code 0 (X), value 436
> Event: time 1289267574.695145, type 3 (Absolute), code 0 (X), value 438
> Event: time 1289267574.727124, type 3 (Absolute), code 0 (X), value 439
> Event: time 1289267574.759144, type 3 (Absolute), code 0 (X), value 431
> Event: time 1289267574.775145, type 3 (Absolute), code 0 (X), value 415
> Event: time 1289267574.791147, type 3 (Absolute), code 0 (X), value 303
> Event: time 1289267574.807151, type 3 (Absolute), code 0 (X), value 160
> Event: time 1289267574.823145, type 3 (Absolute), code 0 (X), value 101
> Event: time 1289267574.839149, type 3 (Absolute), code 0 (X), value 52
> Event: time 1289267574.855148, type 3 (Absolute), code 0 (X), value 25
> 
> 	So, it seems to me that when the value increases, the pointer moves
> right, but when the value decreases, it moves left.  What I'd like
> to see is for the pointer to move right while the value is positive,
> and left while it's negative.  Is there an option for that?

no, not really. we treat the axis values as-is and don't modify them much.
even if you switch the device to relative mode you might get some better use
of it, but it'll be pretty unpredictable once pointer acceleration comes in.

Cheers,
  Peter



More information about the xorg mailing list