flyinghead / flycast

Flycast is a multiplatform Sega Dreamcast, Naomi, Naomi 2 and Atomiswave emulator
GNU General Public License v2.0
1.43k stars 173 forks source link

Logitech G923 pedals reversed in Naomi 2 Clubkart #1008

Closed DrBuns3n closed 11 months ago

DrBuns3n commented 1 year ago

I successfully mapped a Logitech G923 Racing Wheel and Pedals to Flycast in Windows 10. The inputs all work, but the pedals are reversed in Naomi2 Clubkart (and likely other racing games). When the game is started, the accelerator is full on with no pedal input and when the pedal is pressed, the acceleration decreases. I checked in the Test Mode settings in game, but only steering inputs can be reversed. I can also see in test mode how the pedal inputs are opposite from what they should be. It's probable that the arcade cabinet pedals are hinged in the opposite direction to typical wheel and pedal sets like the G923 meaning that the sensor inputs are reversed. Supermodel Sega Model 3 emulator has an analog calibration function, which if implemented in flycast could overcome this problem. Calibration may also help with steering as the G923 has almost two turns to lock which is typically a lot more than an arcade machine wheel. Would be good to tune the steering calibration to the game too.

flyinghead commented 1 year ago

You should be able to get around this by manually editing the mapping files for your controller. Locate the correct mapping files for your wheel in the mappings directory (something like SDL_Logitech G923 Wheel.cfg and SDL_Logitech G923 Wheel_arcade.cfg.) Both files need to be modified. In the [analog] section, change '+' to '-' and vice versa for btn_trigger_left and btn_trigger_right

DrBuns3n commented 1 year ago

That worked great, thanks! My wheel/pedals analog bindings look like this now:

[analog]
bind0 = 0-:btn_analog_left
bind1 = 0+:btn_analog_right
bind2 = 1-:btn_trigger_right
bind3 = 2-:btn_trigger_left

I also removed the dead zone as that was affecting steering and reduced the rumble power:

[emulator]
dead_zone = 0
mapping_name = Default
rumble_power = 40
version = 3

Would be nice to have the option in the front end, but glad it works by editing the cfg. Steering calibration is still a bit of an issue though. The large range (couple of turns) of the steering wheel makes some games fairly unplayable, for example San Fransisco Rush 2049 on Dreamcast. Would be great to be able to reduce the wheel range to say 180 degrees total.

flyinghead commented 1 year ago

Glad it worked!

Related to Issues #28 and #675

flyinghead commented 11 months ago

Closing for now. See linked issues above for dead zone and analog range enhancements.