3Dconnexcion SpacePilot works like a mouse (TrackPoint in laptop)

Dan Nicholson dbn.lists at gmail.com
Sun Dec 7 08:56:20 PST 2008


On Wed, Nov 26, 2008 at 6:13 AM, Jarosław Bułat <kwant at agh.edu.pl> wrote:
> Hello!
>
> After connection SpacePilot (3DConnexion) it starts to act as a mouse
> (TrackPoint), however, it souldn't. SpacePilot is automatically
> recognized as a mouse. There is no any configuration in /etc/xorg.conf
> (see Attachment), however, I found the following line
> in /var/log/Xorg.0.log (see Attachment):
>
> (II) config/hal: Adding input device 3Dconnexion SpacePilot
> (**) 3Dconnexion SpacePilot: always reports core events
> (**) 3Dconnexion SpacePilot: Device: "/dev/input/event6"
> (II) 3Dconnexion SpacePilot: Found x and y relative axes
> (II) 3Dconnexion SpacePilot: Found 21 mouse buttons
> (II) 3Dconnexion SpacePilot: Configuring as mouse
> (II) XINPUT: Adding extended input device "3Dconnexion
> SpacePilot" (type: MOUSE)
> (**) 3Dconnexion SpacePilot: YAxisMapping: buttons 4 and 5
> (**) 3Dconnexion SpacePilot: EmulateWheelButton: 4, EmulateWheelInertia:
> 10, EmulateWheelTimeout: 200
> (WW) 3Dconnexion SpacePilot: unable to handle keycode 265
>
> I suspect, HAL did it, see Attachment (lshal.txt). Since I'm using
> spacenavd from http://spacenav.sourceforge.net/, SpacePilot can't be
> configured in X server - see FAQ:
> http://spacenav.sourceforge.net/faq.html.

What happened is that HAL saw the device and told the server to use
the evdev driver with it. Then evdev went and decided it was a mouse
and how to use it based on what the kernel says about its
capabilities.

> How can I disable autoconfiguration for this specific device? If the X
> Server uses the device as an XInput source, the spacenav driver don't
> get any events from this device.

You can create a fdi file that removes the x11_driver property, which
means the X server won't pick it up. Here's what I was doing with the
trackpoint on my laptop when evdev didn't work for it:

$ cat /etc/hal/fdi/policy/no-hotplug-trackpoint.fdi
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
  <device>
    <match key="info.product" contains="TrackPoint">
      <remove key="input.x11_driver"/>
    </match>
  </device>
</deviceinfo>

You'd have to restart HAL for it to recognize these changes.

--
Dan


More information about the xorg mailing list