Bug#564258: xserver-xorg-input-evdev: evdev on accelerometers is broken
On Fri, Jan 08, 2010 at 09:37:19PM +0000, Julien Cristau wrote:
> On Fri, Jan 8, 2010 at 18:57:28 +0000, Julien Cristau wrote:
>
> > Apparently loading evdev on accelerometers results in a mouse cursor
> > stuck in the center of the screen. Not sure if we should somehow
> > blacklist these devices from the udev rules, or if the driver should be
> > smarter.
> >
> Peter, would you have any idea how to handle the above issue?
Blacklist the device from the udev rules. Try to unset the x11_driver for
this particular device, there really isn't an easier way to do it.
Given that it's an accelerometer with absolute axes, it will permanently
send (range/2)/(range/2) values and thus move the cursor into the middle.
You can try shaking the box but I'm not sure if that's a particularly useful
way to interact with your desktop :)
Alternatively, you can set Option "IgnoreAbsoluteAxes" "True" so you still
get the device in X. Seing that it only has axes, that's rather pointless
though.
Cheers,
Peter
> Martin, the kernel seems to assign a js (joystick?) handler to that
> device. Should udev set ID_INPUT_JOYSTICK here?
>
> From a user's udev db dump, the device looks like this:
>
> P: /devices/platform/lis3lv02d/input/input10
> E: UDEV_LOG=3
> E: DEVPATH=/devices/platform/lis3lv02d/input/input10
> E: PRODUCT=19/0/0/0
> E: NAME="ST LIS3LV02DL Accelerometer"
> E: PHYS="lis3lv02d/input0"
> E: EV==9
> E: ABS==7
> E: MODALIAS=input:b0019v0000p0000e0000-e0,3,kra0,1,2,mlsfw
> E: SUBSYSTEM=input
>
> P: /devices/platform/lis3lv02d/input/input10/event10
> N: input/event10
> S: char/13:74
> S: input/by-path/platform-lis3lv02d-event
> E: UDEV_LOG=3
> E: DEVPATH=/devices/platform/lis3lv02d/input/input10/event10
> E: MAJOR=13
> E: MINOR=74
> E: DEVNAME=/dev/input/event10
> E: SUBSYSTEM=input
> E: ID_INPUT=1
> E: ID_PATH=platform-lis3lv02d
> E: x11_driver=evdev
> E: DMI_VENDOR=Hewlett-Packard
> E: DEVLINKS=/dev/char/13:74 /dev/input/by-path/platform-lis3lv02d-event
>
> And from /proc/bus/input/devices:
>
> I: Bus=0019 Vendor=0000 Product=0000 Version=0000
> N: Name="ST LIS3LV02DL Accelerometer"
> P: Phys=lis3lv02d/input0
> S: Sysfs=/devices/platform/lis3lv02d/input/input10
> U: Uniq=
> H: Handlers=event10 js0
> B: EV=9
> B: ABS=7
>
> Thanks,
> Julien
Reply to: