HELI-X 7, Linux 64bit, RealFlight controller.
All sticks have dead band, even the throttle. Dead band settings in Flight Mode are at 0.
Here is a video: https://youtu.be/5NLq-2wvQG0
Version 6 works just fine, so the controller itself is ok.
v7 dead band problem
Re: v7 dead band problem
Yuu can try the different input systems: global options->input system
Re: v7 dead band problem
Thank you, Michael
did the trick
Code: Select all
jinput-b1.jar
Re: v7 dead band problem
Sorry to resurrect this old thread.
Heli-X 7, Ubuntu 18.04 64b, Cypress USB dsmX HID, same problem, but none of the input systems improves the situation.
I've triead all input libraries (-b1 does not see any controller in my case). The others all work the same with lots of dead band. The controller works fine in another simulation on windows.
Edit: The controller also works fine with Heli-X in Windows (jinput-b8, default did not recognize any controller).
Heli-X 7, Ubuntu 18.04 64b, Cypress USB dsmX HID, same problem, but none of the input systems improves the situation.
I've triead all input libraries (-b1 does not see any controller in my case). The others all work the same with lots of dead band. The controller works fine in another simulation on windows.
Edit: The controller also works fine with Heli-X in Windows (jinput-b8, default did not recognize any controller).
Re: v7 dead band problem
Is there a chance to calibrate the controller in Linux?
Re: v7 dead band problem
Yep, turns out you can. Good writeup: https://wiki.archlinux.org/index.php/Gamepad
What I ended up doing and what seems to solve my problem on Ubuntu 18.04:
What I ended up doing and what seems to solve my problem on Ubuntu 18.04:
Code: Select all
apt install joystick jstest-gtk
- Run jstest-gtk and calibrate your stick. This turned out to set the dead zones to reasonable values. Take note about the device path displayed in the tool, e.g. something like /dev/input/js0
- Store the calibration values of the device. This avoids having to recalibrate the device after every boot. Use the device path from step (2)
Code: Select all
sudo jscal-store /dev/input/js0
- Grant_Edwards
- Posts: 25
- Joined: 11 Nov 2012 03:35
- Location: Minneapolis, Minnesota, USA
Re: v7 dead band problem [Linux]
[I know this thread is old, but I spent a couple hours figuring this out the other day, so I thought I'd document it for posterity.]
[This is all for Linux only]
The simplest thing to do is to just eliminate all flat spots, deadband, gain and offset being applied by the old joystick API layer (which is what heli-x appears to use by default — it's reading /dev/input/jsN instead of /dev/input/eventNN). You do that with a command like this for a 6-channel joystick at /dev/input/js0:
The initial '6' is the number of channels, and then there are two zeros per channel after that.
That will eliminate all deadband, fuzz, gain, and offset. Heli-x will see the raw values exactly as reported by the low-level driver. As long as the raw values are even remotely stable and linear, that's what you want. The heli-x calibration and rate/expo settings can then be applied to get whatever response you want.
If, OTOH, heli-x starts using the modern "event" API (by reading /dev/input/eventNN), the deadband, gain, etc. is configured by the evdev-joystick command. In that case, disabling deadband and fuzz is done like this:
I think I needlessly discarded a cheap USB controller a few years ago because I never figured out the source of the deadband when trying to use it. If I had figured out that jscal command back then, it probably would have been OK (though not nearly as nice as the Futaba Interlink Elite I've got now).
[This is all for Linux only]
The simplest thing to do is to just eliminate all flat spots, deadband, gain and offset being applied by the old joystick API layer (which is what heli-x appears to use by default — it's reading /dev/input/jsN instead of /dev/input/eventNN). You do that with a command like this for a 6-channel joystick at /dev/input/js0:
Code: Select all
jscal -s 6,0,0,0,0,0,0,0,0,0,0,0,0 /dev/input/js0
That will eliminate all deadband, fuzz, gain, and offset. Heli-x will see the raw values exactly as reported by the low-level driver. As long as the raw values are even remotely stable and linear, that's what you want. The heli-x calibration and rate/expo settings can then be applied to get whatever response you want.
If, OTOH, heli-x starts using the modern "event" API (by reading /dev/input/eventNN), the deadband, gain, etc. is configured by the evdev-joystick command. In that case, disabling deadband and fuzz is done like this:
Code: Select all
evdev-joystick --e /dev/input/event12 --d 0 --f 0