Skip to content

Virtual G27 (with Fanatec CSW 2.5) not working properly on F1 2010 #17191

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
BlackGamer86 opened this issue May 9, 2025 · 17 comments
Open

Comments

@BlackGamer86
Copy link

Quick summary

When i start the game and press the start button to go to the menus it shows a "controller disconnected" message

Details

Fanatec CSW 2.5 connected through USB (no USB passthrough tried as it would be useless because this wheel is not even compatible with PS consoles), i tried to play F1 2010 and buttons DO work but neither pedals, steering and feedback work in game

When starting the game and press Start to get to the main menu i get the message shown on the photo

Image

Like i said, even if this message shows, the buttons work but the rest of the wheel doesn't

I already know that it's made for GT6 but i thought that maybe reporting this can help to make it work on other games with G27 compatibility

Attach a log file

RPCS3.log.gz
RPCS3.log

Attach capture files for visual issues

No response

System configuration

No response

Other details

No response

@Kethen
Copy link
Contributor

Kethen commented May 9, 2025

There are technically two issues here:

  1. The emulated usb communication that worked on GT5 and GT6 doesn't seem to work on F1 2010, assuming mapping was done correctly
    • axis input status is displayed under the mapping, check if the sliders move when you steer/step on the pedals
  2. It failed to open the haptic interface from your wheel on SDL, so there's no where to send FFB effects to
    • perhaps double check your driver install for now

Since I don't own the game nor a 0eb7:0004 wheel, to further investigate this issue, help is wanted:

  1. On the game side, it'd be helpful if someone can capture working g27 usb pass through with https://wiki.wireshark.org/CaptureSetup/USB , on F1 2010 of course, and maybe fix the issue in the process
  2. On the 0eb7:0004/Fanatec CSW 2.5 side, would need someone who have worked with SDL with the wheel on windows (or wheels using the same driver on windows) to chime in or even fix the issue

@BlackGamer86
Copy link
Author

BlackGamer86 commented May 10, 2025

There are technically two issues here:

1. The emulated usb communication that worked on GT5 and GT6 doesn't seem to work on F1 2010, assuming mapping was done correctly
   
   * axis input status is displayed under the mapping, check if the sliders move when you steer/step on the pedals

2. It failed to open the haptic interface from your wheel on SDL, so there's no where to send FFB effects to
   
   * perhaps double check your driver install for now

Since I don't own the game nor a 0eb7:0004 wheel, to further investigate this issue, help is wanted:

1. On the game side, it'd be helpful if someone can capture working g27 usb pass through with https://wiki.wireshark.org/CaptureSetup/USB , on F1 2010 of course, and maybe fix the issue in the process

2. On the 0eb7:0004/Fanatec CSW 2.5 side, would need someone who have worked with SDL with the wheel on windows (or wheels using the same driver on windows) to chime in or even fix the issue

The 2 things i can confirm about your message is that the axis input is working perfectly and the steering wheel driver is working as expected as it works for other (non RPCS3) games too (even on RPCS3 GT6) so i guess the problem is not there

For the rest i cannot help you on that, hopefully someone can

Thanks for the answer

@Kethen
Copy link
Contributor

Kethen commented May 10, 2025

There are technically two issues here:

1. The emulated usb communication that worked on GT5 and GT6 doesn't seem to work on F1 2010, assuming mapping was done correctly
   
   * axis input status is displayed under the mapping, check if the sliders move when you steer/step on the pedals

2. It failed to open the haptic interface from your wheel on SDL, so there's no where to send FFB effects to
   
   * perhaps double check your driver install for now

Since I don't own the game nor a 0eb7:0004 wheel, to further investigate this issue, help is wanted:

1. On the game side, it'd be helpful if someone can capture working g27 usb pass through with https://wiki.wireshark.org/CaptureSetup/USB , on F1 2010 of course, and maybe fix the issue in the process

2. On the 0eb7:0004/Fanatec CSW 2.5 side, would need someone who have worked with SDL with the wheel on windows (or wheels using the same driver on windows) to chime in or even fix the issue

The 2 things i can confirm about your message is that the axis input is working perfectly and the steering wheel driver is working as expected as it works for other (non RPCS3) games too (even on RPCS3 GT6) so i guess the problem is not there

For the rest i cannot help you on that, hopefully someone can

Thanks for the answer

If you see LOGIG27: Failed opening haptic device from selected ffb device 0eb7:0004, Haptic: SDL_SYS_HapticOpenFromJoystick failed. being logged repeatedly, you’re unfortunately not getting FFB from the emulator, and I doubt it’s a game specific issue.

@Florin9doi
Copy link
Contributor

Florin9doi commented May 11, 2025

Try to disable the gamepads by setting the handlers to null and use only the virtual wheel configured in USB devices > G27

@Kethen
Copy link
Contributor

Kethen commented May 12, 2025

https://www.reddit.com/r/Fanatec/comments/qwbgil/double_fanatec_wheel_fix/

Oh god, why are fanatec wheels (on Windows) like this

Looks like we'll have to find a way to tell between two fanatec wheel entries to address this

@Kethen
Copy link
Contributor

Kethen commented May 12, 2025

@BlackGamer86 I think I'll need to have a better look at how a windows Fanatec wheel behaves

Here's a program that'd would do some basic logging of joystick device's information, https://github.com/Kethen/sdl_joystick_dumper/actions/runs/14983951438

You can review the source code on the repository, and if you feel comfortable running it, here are the steps:

  1. Download and unzip the zip file from the github action
  2. Double click sdl_joystick_dumper.exe, a cmd window should pop up
  3. Turn the wheel a few times, step on the pedals, press random buttons; you should see your input in the cmd window
  4. Close the cmd window

After that, please upload sdl_joystick_dumper_windows.txt here

@BlackGamer86
Copy link
Author

BlackGamer86 commented May 13, 2025

Try to disable the gamepads by setting the handlers to null and use only the virtual wheel configured in USB devices > G27

@Kethen you might want to have a look at this

Ok so there are both good news and bad news about this.

Good news: In the very first time it doesn't recognise the steering wheel and the original error is shown, but if i press the start button again the error shown is closed and i can use the steering wheel buttons and move to any menu without a problem and even drive.

Bad news: Steering wheel range degrees are a mess and FFB does not work

RPCS3log.zip

.log file is inside a zip because i cannot upload the .log...(file size too big i guess)

RPCS3.log.gz

@BlackGamer86
Copy link
Author

BlackGamer86 commented May 13, 2025

@BlackGamer86 I think I'll need to have a better look at how a windows Fanatec wheel behaves

Here's a program that'd would do some basic logging of joystick device's information, https://github.com/Kethen/sdl_joystick_dumper/actions/runs/14983951438

You can review the source code on the repository, and if you feel comfortable running it, here are the steps:

1. Download and unzip the zip file from the github action

2. Double click sdl_joystick_dumper.exe, a cmd window should pop up

3. Turn the wheel a few times, step on the pedals, press random buttons; you should see your input in the cmd window

4. Close the cmd window

After that, please upload sdl_joystick_dumper_windows.txt here

sdl_joystick_dumper_windows.txt

Ok so:

Two things:

  1. 0eb7:0004 is the Fanatec CSW 2.5 being: Axis 0 being Steering
  2. 044f:b371 is the Thrustmaster TLCM Pedals (yes, another fact i forgot, sorry again...) being: Axis 0 Throttle, Axis 2 Brake, Axis 1 Clutch.

I tried to know what: "3 0eb7:00004 hat 1 1" and "3 0eb7:00004 hat 2 1" and "3 0eb7:00004 hat 3 1" but doesn't seem to be related to buttons or paddles (normal or clutch paddles). It's clearly related to something about the wheel base, but not to the steering wheel purely.

@Kethen
Copy link
Contributor

Kethen commented May 14, 2025

Hi @BlackGamer86 , thank you for providing your wheel information!

Good news: In the very first time it doesn't recognise the steering wheel and the original error is shown, but if i press the start button again the error shown is closed and i can use the steering wheel buttons and move to any menu without a problem and even drive.

This makes me wonder if you had the wheel mapped to a controller, or were you using vJoy to turn your wheel into a controller for rpcs3. If you had your wheel mapped as controller with or without vJoy, please undo it, and only map it in the Logitech G27 settings dialog.

If you didn't map it as a controller, I wonder if the issue lies in the emulator or the game itself.

044f:b371 is the Thrustmaster TLCM Pedals (yes, another fact i forgot, sorry again...) being: Axis 0 Throttle, Axis 2 Brake, Axis 1 Clutch.

The emulated Logitech G27 should allow multi-device mapping however so it should not have been the issue. Thanks for letting us know, knowing more certainly helps narrowing down issues.

I tried to know what: "3 0eb7:00004 hat 1 1" and "3 0eb7:00004 hat 2 1" and "3 0eb7:00004 hat 3 1" but doesn't seem to be related to buttons or paddles (normal or clutch paddles). It's clearly related to something about the wheel base, but not to the steering wheel purely.

Hat inputs are usually d-pads.

Image

Bad news: Steering wheel range degrees are a mess and FFB does not work

The newest builds should have a fix for at least the wheel range degrees on Fanatec, please re-map and test that.

Meanwhile I'm uncertain if it'd help with the FFB of F1 2010. If you own GT5/GT6 please also test whether FFB works on those (and not just dead auto center spring) for the meantime.

@Florin9doi
Copy link
Contributor

There are multiple distinct problems:

  • The "controller disconnected" message
    • I can reproduce this problem in F1 2010 by enabling both the emulated wheel (controlled with a generic gamepad) and any DS3 gamepad (controlled with keyboard). Without any fanatec with multi axis, without vjoy, without smoke and mirrors.
  • The wheel range degrees
    • SDL doesn't have an API to limit the range (Add steering wheel API for SDL3 libsdl-org/SDL#6540), the game sets the G27 to 200˚, but the fanatec wheel stays with 900˚ and requires multiple turns for a small change in direction . The range should be adjusted manually in drivers until the API is implemented.
  • FFb

@Kethen
Copy link
Contributor

Kethen commented May 14, 2025

  • The "controller disconnected" message

    • I can reproduce this problem in F1 2010 by enabling both the emulated wheel (controlled with a generic gamepad) and any DS3 gamepad (controlled with keyboard). Without any fanatec with multi axis, without vjoy, without smoke and mirrors.

Thanks for testing it, I hope someone with G27 protocol hardware can test usb passthrough on the game to see

  1. Is it fully functional with passthrough, does it have the disconnect message, can it FFB
  2. Obtain a usb dump for better emulation

@Florin9doi
Copy link
Contributor

I can reproduce this problem in F1 2010 by enabling both the emulated wheel (controlled with a generic gamepad) and any DS3 gamepad (controlled with keyboard). Without any fanatec with multi axis, without vjoy, without smoke and mirrors.

Same problem with a G29 in passthrough mode.

@BlackGamer86
Copy link
Author

BlackGamer86 commented May 14, 2025

Hi @BlackGamer86 , thank you for providing your wheel information!

Good news: In the very first time it doesn't recognise the steering wheel and the original error is shown, but if i press the start button again the error shown is closed and i can use the steering wheel buttons and move to any menu without a problem and even drive.

This makes me wonder if you had the wheel mapped to a controller, or were you using vJoy to turn your wheel into a controller for rpcs3. If you had your wheel mapped as controller with or without vJoy, please undo it, and only map it in the Logitech G27 settings dialog.

If you didn't map it as a controller, I wonder if the issue lies in the emulator or the game itself.

044f:b371 is the Thrustmaster TLCM Pedals (yes, another fact i forgot, sorry again...) being: Axis 0 Throttle, Axis 2 Brake, Axis 1 Clutch.

The emulated Logitech G27 should allow multi-device mapping however so it should not have been the issue. Thanks for letting us know, knowing more certainly helps narrowing down issues.

I tried to know what: "3 0eb7:00004 hat 1 1" and "3 0eb7:00004 hat 2 1" and "3 0eb7:00004 hat 3 1" but doesn't seem to be related to buttons or paddles (normal or clutch paddles). It's clearly related to something about the wheel base, but not to the steering wheel purely.

Hat inputs are usually d-pads.

Image

Bad news: Steering wheel range degrees are a mess and FFB does not work

The newest builds should have a fix for at least the wheel range degrees on Fanatec, please re-map and test that.

Meanwhile I'm uncertain if it'd help with the FFB of F1 2010. If you own GT5/GT6 please also test whether FFB works on those (and not just dead auto center spring) for the meantime.

I had the wheel mapped without any vjoy or things like that and i was just using the G27 option setting to NULL the mapped controller in Custom Game Controller Settings

When i pressed the D Pads was NOT related to the "Joystick Number 3" as it says on the program, so maybe is kind of an early initialization for the D Pads? idk

Tested on the new version:

(Had to use F1 2010 version 1.00 as 1.01 struggles to work)

  1. FFB didn't change on F1 2010, still not working. The errors "Tries to stop effect slot 0, 1, 2, 3 but it was never uploaded" still showing up
  2. But update kinda made the job when it comes to degree rotation. Somehow it works better, but i still have to change the degrees rotation manually as @Florin9doi said, which is not a problem for me if you ask for my opinion

Here are the logs if you need them

RPCS3.log
RPCS3.log.gz

I will see if it works on GT6 a bit later on the day

@Kethen
Copy link
Contributor

Kethen commented May 14, 2025

I can reproduce this problem in F1 2010 by enabling both the emulated wheel (controlled with a generic gamepad) and any DS3 gamepad (controlled with keyboard). Without any fanatec with multi axis, without vjoy, without smoke and mirrors.

Same problem with a G29 in passthrough mode.

Can you make a new issue regarding G29 pass through + F1 2010? Think that ought to be debugged that first... Also if FFB is working on the G29, grabbing a usb dump of that might also help.

There are also ways to set the G29 into G27/G25/etc. modes, it's pretty straight forward on Linux, if you got windows we can also look into that. See #17023 (comment)

@Danielet89
Copy link

Do you know if has been fixed ?

@Florin9doi
Copy link
Contributor

I can reproduce this problem in F1 2010 by enabling both the emulated wheel (controlled with a generic gamepad) and any DS3 gamepad (controlled with keyboard). Without any fanatec with multi axis, without vjoy, without smoke and mirrors.

Same problem with a G29 in passthrough mode.

Colin McRae Dirt (1) and Race Driver Grid have support up to DFPro/G25 and don't support the virtual G27, but they are also affected by this problem when a supported wheel is connected in passthrough mode. These 3 games were all developed by Codemasters.

@Danielet89
Copy link

Me to I can fix mapping as ximput gamepad , but is not same as steering wheel, dead zone , degrees , are not calculated in a gamepad....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants