protonscr

Proton games cannot detect Freejoy gear shifter

protonclosed
ValveSoftware/Proton#7985 · opened 2024-08-14 by spikerguy · updated 2024-08-14 · 0 comments · github
Sspikerguy 2024-08-14 github

I have 7+R gear shifter from SimJack pro which uses stm32mcu with freejoy firmware.

It is detected in evtest, jstest it works on truck sims as they're native linux build but not it any proton games like ac, acc etc.

Gear shifter is even detected in steam as controller.

Using Manjaro Linux with kernel 6.10

lsusb
Bus 001 Device 011: ID 8587:5757 FreeJoy JACK-SQ

evtest

    ~  evtest                                                                                  ✔ 
No device specified, trying to scan all of /dev/input/event*
Not running as root, no devices may be available.
Available devices:
/dev/input/event14:     FreeJoy JACK-SQ
/dev/input/event15:     CAMMUS CAMMUS C5 Base
/dev/input/event16:     FreeJoy SimRui To v1.7.0b3
/dev/input/event17:     Cammus_C5_HUB_V0018 Cammus_C5_HUB_V002 Buttons
/dev/input/event6:      SimRuito Pedals V1.7.0 SimRuito Pedals V1.7.0
Select the device event number [0-17]: 

jstest

    ~  jstest --normal /dev/input/js0                                                        1 ✘ 
Driver version is 2.1.0.
Joystick (FreeJoy JACK-SQ) has 0 axes ()
and 8 buttons (Trigger, ThumbBtn, ThumbBtn2, TopBtn, TopBtn2, PinkieBtn, BaseBtn, BaseBtn2).
Testing ... (interrupt to exit)
Buttons:  0:off  1:off  2:off  3:off  4:off  5:off  6:off  7:off 

Steam controller
image

Sadly does not appear on wine control of the proton games
image

Tried these quirks/hints
SDL_JOYSTICK_DEVICE=/dev/input/js0
SDL_JOYSTICK_DEVICE=/dev/input/by-id/usb-FreeJoy_JACK-SQ-event-joystick@
PROTON_ENABLE_HIDRAW=0x8587/0x5757

Anything else I should look into ?

Ok UPDATE:

freejoy needs better permission
This permission is the fix.
https://github.com/FreeJoy-Team/FreeJoyConfiguratorQt/blob/master/src/linux/99-hid-FreeJoy.rules