[SOLVED] Winwing Orion 2 on Linux... only 80 buttons detected
-
Hi folks,
on the Linux side of things, my winwing orion 2 with the f-16 grip seems to have only 80 buttons available. Has anyone else seen this and might be able to help with a workaround?
Thanks,
Uwe
-
@hoover Have you tried, on terminal, evtest ?
It will give you a list of detected devices and you select the one you are interested to try and will show you the axis you are moving and the buttons you are pressing.IIRC Linux uses js, that is old and ev, which is the new “input” version. Maybe js has a limit on button detection? If evtest recogninzes the “missing” buttons, that’s the issue.
-
Yep, I’ve tried evtest, same result. All buttons beyond number 80 don’t register as inputs in evtest, either.
Cheers,
Uwe
-
@hoover That’s as far as my knowledge goes.
-
@Ferde no worries, I’ll keep looking. I’ve also opened a thread over at the xplane 12 forums (the title officially supports Linux), so if I find a solution, I’ll let you guys know here as well.
All the best,
Uwe
-
@hoover Could it be missing buttons are virtual ones?
-
Unfortunately the maximum number of buttons per joystick device the Linux kernel supports is 80.
Source: Patch and Discussion on the LKML started by someone who wanted to increase said limit
Depending on your expertise you could try to build a kernel with said patch, and all the missing buttons should show up. (I haven’t tried the patch myself, but it looks good to me.)
-
thanks, that’s the exact patch I was pointed to by the xplane Linux guys.
While I’ve compiled many a kernel from source back in the days (early 2000s), I tried two methods with kernel 5.15.0-91 (basis for Linux Mint 21 right now I think):
-
compile from source using a .config file from the Mint kernel: Worked, but resulted in a 800MB initrd which would not fit on my /boot partition alongside other (rescue-) kernels and initrds.
-
compile from source package using apt source, fakeroot and friends: Documentation is hopelessly outdated (wiki refers to disco dingo :-P) and while I got the kernel / module compile to work, the process broke on some weird tool called “turbostat” which was missing a header file and which I had never heard about in conjunction with compiling a Linux kernel from source.
So if anyone here has managed to build a debian / ubuntu / mint kernel the “official” way using the source packages, I’d be very happy to hear from them and thest the kernel with the increased button number limit. (only two header files need patching apparently).
Thanks,
Uwe
-
-
https://github.com/igorinov/linux-winwing
Wohoo! Looks like there is a more elegant solution than recompiling the Linux kernel with patched headers.
I haven’t tested the module yet, but will do so the next time I’m booted into Linux.
Cheers, Uwe
-
compiled & tested the module, works beautifully. You’ll need to recompile it each time the kernel is updated for now, but it’s no biggie and really easy to do.
Cheers,
Uwe
-
@hoover
And now find out how to run BMS in VR on linux! -
I’m not into VR, I like my rig power-saving and quiet
Actually I’m waiting for the “matrix”-style neck plug.
Cheers, Uwe
-
@Razor161
Here’re my notes from such venture: https://forum.falcon-bms.com/topic/26681/linux-no-picture-in-headset-once-i-enter-3d-world-preview-on-monitor-is-fineIn general, standalone headsets like Pico or meta Quest are way to go. With ALVR it’s easy to get them working with linux native apps and SteamVR. Problems arise when you’re trying to run Windows apps. Then, so far, Proton is your only hope.
-
@hoover said in [SOLVED] Winwing Orion 2 on Linux... only 80 buttons detected:
compiled & tested the module, works beautifully. You’ll need to recompile it each time the kernel is updated for now, but it’s no biggie and really easy to do.
Cheers,
Uwe
Unfortunately this doesn’t fix the issue for the Orion 2 base with the F15E/EX grip.
The kernel patch to increase the max number of buttons would be the ideal.
I hope the patch one day gets accepted upstream, so no need to recompile kernel.
-
@mvrk69
The kernel patch is not enough if running the game through wine/proton compatibility layer.So, to get the Orion 2 base with the F15E/EX grip working in linux you need two things:
-Compile the kernel adapting the patch mentioned by @bwRavencl-After that, you also need to recompile the SDL2 library, because it is probably compiled with an unpatched kernel and thus has the old button limit.
After all of that, i managed to get all of the buttons working on wine:
-
Have you guys tried the kernel module available on github? From what I understand it “rearranges” the button mappings so there’s no 24 button (or thereabouts) gap in the numbering.
All the best,
Uwe
-
@hoover I tried, but it does not work with the F15E/EX grip, as the combined button count is >80 and this limit is baked in the kernel. With the kernel patch you get all of the base working, but some buttons on the grip stop working.