Velvet Star Monitor

Standout celebrity highlights with iconic style.

general

SteamPlay Elite Dangerous - Recognizing Logitech Extreme 3D Pro Joystick as 'Generic Gamepad'

Writer Matthew Barrera

I switched from W10 to Ubuntu 18.04 LTS some days ago, and up until now, I have found solutions for all my noob questions about stuff.

But recently, I installed Steam and tried to install Elite Dangerous: Horizons. I got it up and working on Proton 4.11-7 with the mouse, but I had always been using my trusty Logitech Extreme 3D Pro Joystick on Windows 10 when playing the game, but when trying to set up the joystick on Ubuntu, I immediately ran into a lot of problems. When I look at 'General Controller Settings' I can see that Steam for some reason thinks that my joystick is a Generic Gamepad ??

Picture of General Controller Settings

I thought that that was pretty weird, and Elite Dangerous thinks the same too when I fire up the game. Steam thinks that my joystick is a Generic Gamepad and I don't know why?

What I've tried:

  1. I've tried re-installing Elite Dangerous. No effect.
  2. I've tried setting the 'Steam Input Per-Game Setting' to 'Forced Off'. No effect.
  3. Tested the joystick with jstest-gtk. It is recognizing it correctly as a joystick!
  4. I also tried launching ED in Big Picture Mode and tried Steam Beta Release... No effect at all.

Please help. Any help will be highly appreciated!

1 Answer

I know people have had success with the following:

  1. Disable SDL by setting 'Enable SDL' off (with: wine64 reg add 'HKLM\System\CurrentControlSet\Services\WineBus' /v 'Enable SDL' /t REG_DWORD /d 0 /f); and
  2. Delete all registry entries with your PID and VID (for example: look in system.reg and remove any line with VID_046D&PID_C215)

Edit:

Apologies - I just copy and pasted the above when I had a brief moment this morning. But you might find the below to be a bit more helpful:

If you're using protontricks, step one can be done by running:protontricks 359320 regedit and then navigating to:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WineBus

And creating a new DWORD value called Enable SDL with a value of 0. This disables SDL.

You can then click on HKEY_LOCAL_MACHINE\System and do a Find (Ctrl+F) for the string VID_046D&PID_C215 and delete every entry you find.

VID = Vendor ID (0x046D = Logitech)

PID = Product ID (0xC215 = Extreme 3D Pro Joystick)

The reason you need to do the above is because SDL incorrectly thinks this device is a controller. It then creates those incorrect registry entries that tell ED that it's a controller.

By disabling SDL - Wine falls back to using the kernel driver (evdev, which does not think it's a controller) and Wine will then rewrite those registry entries telling ED that it's a joystick.

2

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy