opentrack icon indicating copy to clipboard operation
opentrack copied to clipboard

Debian Linux pitch rotation stutters in DCS

Open Wanchos opened this issue 1 year ago • 3 comments

Hi i have a problem using my delanclip to track my head in DCS. I can bind my yaw and pitch but the yaw is set as JOY_RY and pitch as JOY_Z. The JOY_Z seems to be the only axis to stutter while the other ones work fine any ideas? I am using libevdev as output.

Wanchos avatar Apr 27 '24 12:04 Wanchos

So obviously the axis is output wrongly and if i try with steam input then my pitch becomes the left and right trigger. I probably have to change the output? So when i press the configure button for libevdev it says that it needs read write permission for /dev/input/uinput. Does that mean i have to put opentrack in the root group and give it read write privileges? Thanks for any help! Screenshot from 2024-04-28 00-56-51

Wanchos avatar Apr 27 '24 22:04 Wanchos

So i tried opentrack in Euro truck simulator 2 and the there was no problem so it might be a DCS problem.

Wanchos avatar Apr 28 '24 10:04 Wanchos

it says that it needs read write permission for /dev/input/uinput. Does that mean i have to put opentrack in the root group and give it read write privileges?

No.

Your distro might already be taking care of it. First try

ls -l /dev/input/uinput

There might already be an input or similar group to add your user into. However, the device node might not exist at all and instead be located at /dev/uinput (in which case it needs a symlink).

In the short term,

chmod 666 /dev/input/uinput

and see if it works at all ingame.

Then you can start figuring out how to add a udev rule which is the proper solution here.

sthalik avatar May 09 '24 12:05 sthalik

Hello thanks for your fast answer. For me uinput is in /dev/uinput. I tried to chmod uinput but have the same issues do you have a recommended solution for me?

Wanchos avatar May 22 '24 21:05 Wanchos

Try this as root:

ln -s /dev/uinput /dev/input/uinput
chmod 666 /dev/input

sthalik avatar May 23 '24 08:05 sthalik

Try this as root:

ln -s /dev/uinput /dev/input/uinput
chmod 666 /dev/input

I tried your suggestion and dcs could not detect any of my devices (hotas, opentrack etc) after running the commands. Is there something else that i could try? Btw i also want to clarify that my opentrack install is in my home folder just in case that is relevant.

Wanchos avatar May 23 '24 13:05 Wanchos

Was DCS previously able to use your HOTAS controllers? Is it the case that making uinput available suddenly makes it unable to detect anything?

sthalik avatar May 23 '24 13:05 sthalik

Yes DCS was previously able to use my hotas controllers and detect opentrack. Making uinput available in the way you suggested seems to make DCS unable to detect anything.

Wanchos avatar May 23 '24 13:05 Wanchos

You could try making a virtual joystick using the xboxdrv program and see if DCS detects it, without doing the uinput thing that I suggested earlier.

sthalik avatar May 23 '24 13:05 sthalik

I will give xboxdrv a try when I have some time otherwise I will try to see if the same thing happens on other distros. In worst case I will have to install windows I guess. Thanks for your time and help!

Wanchos avatar May 23 '24 13:05 Wanchos

So i tried using xboxdrv to write a script and it now works great thanks so much for your help!!!

Wanchos avatar May 25 '24 17:05 Wanchos

Are you able to open opentrack's evdev joystick inside DCS after starting xboxdrv? Otherwise, how are you sending the data?

sthalik avatar May 25 '24 19:05 sthalik

After starting opentrack and then my script DCS automatically detects opentrack as a xbox controller and I can freely assign the axes whichever way I want to use them. Does that answer your question?

Wanchos avatar May 26 '24 13:05 Wanchos

This is good to know. Thanks for coming back and explaining it. 👍

sthalik avatar May 26 '24 13:05 sthalik