SYNOPSIS
evdev-joystick --helpevdev-joystick --listdevs
evdev-joystick --showcal <device-path>
evdev-joystick --evdev device-path> [--axis <axis>] [--deadzone <value>] [--fuzz <value>]
DESCRIPTION
evdev-joystick calibrates joysticks. Calibrating a joystick ensures the positions on the various axes are correctly interpreted.OPTIONS
- --h, --help
- Print out a summary of available options.
- --l, --listdevs
- List all joystick devices found.
- --s, --showcal <device-path>
- Show the current calibration for the specified device.
- --e, --evdev <device-path>
- Specify the joystick device to modify.
- --a, --axis <axis>
- Specify the axis to modify (by default, all axes are calibrated).
- --d, --deadzone <value>
- Change the deadzone for the current joystick.
- --f, --fuzz <value>
- Change the fuzz for the current joystick.
CALIBRATION
Using the Linux input system, joysticks are expected to produce values between -32767 and 32767 for axes, with 0 meaning the joystick is centred. Thus, full-left should produce -32767 on the X axis, full-right 32767 on the X axis, full-forward -32767 on the Y axis, and so on.Many joysticks and gamepads (especially older ones) are slightly mis-aligned; as a result they may not use the full range of values (for the extremes of the axes), or more annoyingly they may not give 0 when centred. Calibrating a joystick provides the kernel with information on a joystick's real behaviour, which allows the kernel to correct various joysticks' deficiencies and produce consistent output as far as joystick-using software is concerned.
jstest(1) is useful to determine whether a joystick is calibrated: when run, it should produce all 0s when the joystick is at rest, and each axis should be able to produce the values -32767 and 32767. Analog joysticks should produce values in between 0 and the extremes, but this is not necessary; digital directional pads work fine with only the three values.
AUTHORS
evdev-joystick was written by Stephen Anthony, based on VDrift's G25manage tool.This manual page was written by Stephen Kitt <[email protected]>.