From: John Goche on

Hello,

I want to develop a Linux applicaition that
makes use of a joystick such as the one
that comes with the Sony Playstation or
else the one that comes with Microsoft
XBox. However I do not know which ones
are supported. The Sony DualShock
game controllers attach themsevles
via a USB cable so I thought it might
be possible. Otherwise, what can I
use. I need a device with a stick.

And what software do I need to
make it work with an application
written for Linux in C?

Thanks,

John Goche
From: André Gillibert on
John Goche <johngoche99(a)googlemail.com> wrote:
>
> Hello,
>
> I want to develop a Linux applicaition that
> makes use of a joystick such as the one
> that comes with the Sony Playstation or
> else the one that comes with Microsoft
> XBox.
> However I do not know which ones
> are supported. The Sony DualShock
> game controllers attach themsevles
> via a USB cable so I thought it might
> be possible. Otherwise, what can I
> use. I need a device with a stick.

The Linux kernel supports the XBox (xpad kernel module) and should support any standard HID class USB gamepad/joystick.
The Playstation controller should be supported by the gamecon module, but has to be connected to the parallel port but need a special adapter.
The PS3 controller is supported (CONFIG_HID_SONY) too. I guess that means both the Sony DualShock and Sixaxis controllers are supported.

>
> And what software do I need to
> make it work with an application
> written for Linux in C?
>

These devices are supported by the Linux kernel. You've to load the required kernel modules or compile them in the kernel.
Then, the kernel has two interfaces. The old joydev interface (CONFIG_INPUT_JOYDEV) and the evdev interface (CONFIG_INPUT_EVDEV).
The joydev interface is specific to gamepads and joysticks. It's documented in Documentation/input/joystick-api.txt
The evdev interface supports mice and keyboards too, and is more powerful (e.g. supports force feedback).
A short description of the event interface (aka evdev) is contained in Documentation/input/input.txt.

--
André Gillibert
From: Maxwell Lol on
John Goche <johngoche99(a)googlemail.com> writes:

> Hello,
>
> I want to develop a Linux applicaition that
> makes use of a joystick such as the one
> that comes with the Sony Playstation or
> else the one that comes with Microsoft
> XBox.


I know that some people are hacking the WII controller to work with Linux.
I skipped that workshop at DEFCON, however.