This project is read-only.

Analog toggle button / rumble

Apr 28, 2012 at 3:36 PM

Hello, I've been trying to find a way to toggle the controller between digital and analog mode but I haven't found anything.

Is there any undocumented way to force pcsxr to start in analog mode or a toggle button that can be configured by editing a configuration file to achieve this?

The reason is there are many games that support an analog controller but do not automatically toggle the controller to analog mode and it would be great if it was possible to toggle the mode.

If this isn't possible, are there any patches floating around that would add this functionality? I've tried [1] but it doesn't work. Or in alternative any other input plugin that works on linux (x86_64).

One last question, is rumble supported in any way?


Apr 28, 2012 at 5:30 PM

Check you dfinput.cfg file for a definition like:


That's from mine which has the analogue mode switch set to 'b' and button 16 on that controller.  I had the same problem with that button not getting mapped because the GUI/ input plugin was conflicting with an older version

Apr 28, 2012 at 6:53 PM

That did the trick.

Another question, is there any way to configure the deadzone/saturation point for analog controllers? At least in my case the deadzone seems to be too big and that leaves little room between no input and full analog input.

Apr 28, 2012 at 10:10 PM

Not that I know of I'm afraid,  the input plugins for the linux side have been a little neglected.  I dont even think there's an easyish way to tweak the deadzone from the source either.

Apr 29, 2012 at 11:51 AM
Edited Apr 29, 2012 at 2:49 PM

Thanks for the confirmation, that's what I suspected, I did look at the sources but as I have only basic knowledge of C and I'm not familiar with the project's internals I didn't know if I was looking in the right place.

The problem may also be caused by the cheapish controller I have, using jstest (from the linux console project [1]) I can see that with very little input I have some output but in games like ape escape and wipeout 3 using the analog controller it feels like I have to give a lot of input before I get some output, and from there it very quickly reaches maximum output.

I'll try to see if there is a way to somehow alter the (non)linearity of the analog axis by some other means and post back if I find anything, so it might serve as reference for other people.


I've been able to make the response a little better by using the jscal utility, linearity is not equal to the real thing (read dualshock connected to a playstation) but a bit more usable. The pad I bought has a digital and an analog mode and both work reasonably well out of the box with kernel 3.3, however the analog mode can be improved by doing a recalibration. In my case it affects the output values when in digital mode, since digital and analog can report values on the same axis (not at the same time of course).

Just leaving some pointers here for anyone else using linux, the utilities you want to try before starting to use pcsxr are jstest, jscal and fftest to ensure you have everything setup as well as possible.

May 15, 2012 at 4:31 PM
Edited May 15, 2012 at 4:32 PM

pcsx2 (ps2 emulator) lillypad plugins best working pcsxr try it

this plugings best supported ps1 , ps2 & ps3 usb joystick and analog controller

This pcsx2 emulator link