Joystick correct in wine (4.0.3), but not in lutris (lutris-5.7-8-x86_64)

Hi, i have a VKB Gladiator Joystick and I’m trying to make it work for using in Star Citizen.

When i go into the “Game controller” (from the control panel, launch through the Lutris “Wine Control Panel” button), i see 3 times my joystick (2x js, 1x event).

“© Alex Oz 2012-2020 VKB-Slim Gladiot K (js)” seem to be a duplicate, because it doesn’t show up after being enabled (“Click” on the “Activer” button, close the windows, Open the windows, the entry “© Alex Oz 2012-2020 VKB-Slim Gladiot K (js)” is just gone), but i close the control panel completely and opening back through the Lutris “Wine Control panel” button, the entry reappear).

The event bases is not working, some button are not recognized correctly, and when I’m trying to use the js one, a page fault is occurring and Crash the “Game controller” window.

Error log

Unhandled exception: page fault on write access to 0x010e27c0 in 32-bit code (0xf687e9f0).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:f687e9f0 ESP:00cffd90 EBP:00cffdc8 EFLAGS:00010246( R- – I Z- -P- )
EAX:00000000 EBX:00873828 ECX:00000000 EDX:0086df40
ESI:00df4004 EDI:00000000
Stack dump:
0x00cffd90: 00000000 00000000 00cffdf8 00000022
0x00cffda0: 00000019 00010001 00132130 22810000
0x00cffdb0: 0086ea58 f68ea720 00cffdf8 0087382c
0x00cffdc0: 00cffee0 00000050 00cffdf8 f687cb69
0x00cffdd0: 00873828 00000000 00000000 00000000
0x00cffde0: 000000f3 00000000 00cffe10 00cffee0
=>0 0xf687e9f0 in dinput8 (+0x1e9f0) (0x00cffdc8)
1 0xf687cb69 in dinput8 (+0x1cb68) (0x00cffdf8)
2 0xf68c8cda in joy.cpl (+0x8cd9) (0x00cffe28)
3 0xf68c9cc5 in joy.cpl (+0x9cc4) (0x00cfff48)
4 0x7bcd6590 (0x00cfff5c)
5 0x7bcda6b7 (0x00cfffdc)
6 0x7bcd6582 (0x00cfffec)
0xf687e9f0: movb %al,0x1058(%ebx,%edx,1)
Module Address Debug info Name (24 modules)
PE 7b020000-7b03c000 Deferred kernelbase
PE 7b420000-7b5f1000 Deferred kernel32
PE 7bc30000-7bc47000 Deferred ntdll
PE 7e390000-7e396000 Deferred imm32
PE 7e3d0000-7e3de000 Deferred gdi32
PE 7e520000-7e52d000 Deferred rpcrt4
PE 7e5b0000-7e5bd000 Deferred advapi32
PE 7e650000-7e678000 Deferred ucrtbase
PE 7e740000-7e745000 Deferred version
PE 7e760000-7e779000 Deferred setupapi
PE 7e800000-7e8f4000 Deferred user32
PE 7ea10000-7ea13000 Deferred rundll32
PE 7eff0000-7eff3000 Deferred wow64cpu
PE f6860000-f690e000 Export dinput8
PE f6860000-f690e000 Export uxtheme
PE f68c0000-f68de000 Deferred joy.cpl
PE f6940000-f6944000 Deferred usp10
PE f69a0000-f69f6000 Deferred comctl32
PE f6ae0000-f6aea000 Deferred aclui
PE f6b20000-f6b4d000 Deferred ole32
PE f6c60000-f6c66000 Deferred shcore
PE f6c90000-f6ca2000 Deferred shlwapi
PE f6d20000-f761c000 Deferred shell32
PE f7b70000-f7b75000 Deferred winex11
process tid prio (all id:s are in hex)
00000008 control.exe
00000069 0
00000009 0
0000000e services.exe
00000025 0
00000022 0
0000001d 0
0000001a 0
00000013 0
00000010 0
0000000f 0
00000011 plugplay.exe
00000017 0
00000016 0
00000012 0
00000018 winedevice.exe
0000002e 0
0000002b 0
0000001f 0
0000001e 0
0000001c 0
0000001b 0
00000019 0
00000020 winedevice.exe
00000026 0
00000024 0
00000023 0
00000021 0
00000029 explorer.exe
00000031 0
00000030 0
0000002f 0
0000002a 0
0000006c (D) C:\windows\system32\rundll32.exe
[rundll32.exe shell32.dll,Control_RunDLL “C:\windows\system32\joy.cpl”,"@0"]
00000072 0
0000006f 0 <==
0000006e 0
0000006d 0
00000073 explorer.exe
00000077 0
00000076 0
00000075 0
00000074 0
System information:
Wine build: wine-5.7.r0.g2ad422ff ( TkG Staging Esync Fsync )
Platform: i386 (WOW64)
Version: Windows 10
Host system: Linux
Host version: 5.4.0-42-generic

BUT, if i launch (in a terminal)
WINEPREFIX=/home/davilink/Games/star-citizen/ wine control

i only see 2 times my joystick (1x js, 1x event).
“© Alex Oz 2012-2020 VKB-Slim Gladiot K (event)”
“© Alex Oz 2012-2020 VKB-Slim Gladiot K (js)”, so the
“© Alex Oz 2012-2020 VKB-Slim Gladiot K (js)” is gone

The “event” one is still not correctly configured, but my “js” one is working perfectly and doesn’t crash the “Game controller” window.

So how do i make it work in lutris now ?
The problem seem to come from the runner that i use: lutris-5.7-8-x86_64,
WINEPREFIX=/home/davilink/Games/star-citizen/ /home/davilink/.local/share/lutris/runners/wine/lutris-5.7-8-x86_64/bin/wine control provoke the same crash that i get when i’m launching it from the Lutris “Wine control panel” button.

But what i do now ?

I could use the event one, only if would be able to fix the mapping.

I change my runner to tkg-4.0-x86_64 and the joystick doesn’t crash the game controller panel (control.exe joy.cpl) anymore. I tried lutris 4.21 and still crash, so i don’t know what is the difference between the two runner, but at least the joystick is correctly reconized now (except that i only have 40 button, and joystick has 42, but hey, for 2 missing buttons i can work with.

Edit: the game (Star Citizen) doesn’t work on tkg-4.0_x86-64, so the investigation is not finish.

The VKB Gladiator works in the “Game controller” windows with lutris-6.0-x86_64, but the UI is still limited to 40 Buttons. So because the controller doesn’t crash the “Game controller” UI i will considered the matter resolved.