[ANNOUNCE] xf86-input-joystick-1.3.1

Sascha Hlusiak saschahlusiak at arcor.de
Fri Dec 7 04:27:21 PST 2007


Hello Peter,

Am Freitag 07 Dezember 2007 01:52:52 schrieb Peter Clifton:
> On Fri, 2007-12-07 at 00:37 +0100, Sascha Hlusiak wrote:
> > Release 1.3.1 of the joystick input driver for X.Org-7.3
> >
> How does this stand with 6 Axis devices like the SpaceNavigator from
> 3Dconnexion?
>
> I want to use this device for manipulating 3D objects in applications
> (the ones I'm working on at lest). The question I have, is really.. what
> is the right model to use..

In general you should be able to use all input devices with the 
xf86-input-evdev module, but it seems it more focuses on mice and keyboards 
and not joystick like devices.

The joystick driver can use /dev/input/js* devices and /dev/input/event* 
devices (with up to 32 axes, which is hardcoded but not a real limit)  so you 
should be able to use the SpaceNavigator with this driver. The joystick 
driver is clearly focused on "normal" joysticks, meaning it assumes that the 
device has only absolute axes. Main purpose is to use the joystick as a mouse 
replacement (core events for the mouse cursor) but the driver also reports 
the axes values as raw valuators to be used by applications that are aware of 
extended input devices. 

The driver usually reports two valuators for core events (relative mouse 
coordinates) and a valuator for each axis found. My joystick has 6 axes so I 
have 8 valuators. Axis 2-7 are reported absolute between -32768 and 32767.


> The device (USB version at least) appears as a /dev/input/event* device
> under linux. I can access that directly in the app, but somehow I feel I
> should be using an Xorg joystick driver, or perhaps the 3Dconnexions SDK
> (ok, no.. that looks horrid!)
The joystick driver can generate extended input events for applications. Why 
do you want to go away from using /dev/input/event* directly? How do you use 
it and what events do you process?


> The second line : 0x09, 0x08 … change it to 0x09,0x04 and u have a
> Joystick …. With those 2 bits changed, SpaceNavigator is seen as a
> Joystick without any driver. ""
Is does not need to be seen as a joystick anymore, an evdev device is fine.


> Does the joystick driver seem the right place to try and implement
> support for this device? What would it look like to the application
> wanting to use the joystick?
Feel free to try. If it doesn't fit your needs, the xf86-input-evdev or 
xf86-input-joystick drivers might be enhanced to support the SpaceNavigator. 
But tell me what the axes are like, what they report to evtest and what you'd 
like to do with them.


> (If you can point to any trivial examples of X11 apps using a joystick
> with this driver, I'd appreciate it. I don't own a conventional
> joystick, and am not a gamer, so can't think where to start in Linux
> really!)
I suggest looking at the simple "xinput" program that shows events of extended 
input devices.
Gimp can make use of those too. 


Regards,
Sascha Hlusiak
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.x.org/archives/xorg/attachments/20071207/e5897132/attachment.pgp>


More information about the xorg mailing list