FeralAI / GP2040

Gamepad firmware for Raspberry Pi Pico and other RP2040 microcontrollers supporting Nintendo Switch, XInput and DirectInput
https://gp2040.info
MIT License
558 stars 124 forks source link

Use a a different button to change to PS3/D-INPUT mode #24

Closed Kareeeeem closed 2 years ago

Kareeeeem commented 2 years ago

I don't think many sticks have a native button for RS and LS, wouldn't it be better to but it on a button that is always there and never plugged up like one of B1-4? For example I tend to only use 6 buttons, and I've known people in the past to only use 3 (for VF) or 4 (for SNK) and plug up the rest.

Also, this is a cool project, I ordered a pico and am looking forward to trying it in my stick.

FeralAI commented 2 years ago

That's probably a good idea on swapping the default button. All the sticks I'm working with have the L3/R3 buttons, so it hadn't come up before. I'll get that updated and tag a new alpha release soon.

Thanks for checking out the project!

jbarket commented 2 years ago

It might be interesting to allow this to be configurable as well. I mean I don't love the idea of all of us having completely different buttons for everything, but being able to go in and adjust for people with specific weirdnesses seems really useful. Thinking about accessibility controllers or something where it's intentionally limited in buttons... just a few for a rhythm game or something... would be useful.

FeralAI commented 2 years ago

I think we can do this in two phases. First we'll move the input selections to B1-B3 since those should be commonly available on most controllers and all fightsticks, plus that's a quick change in the setup() method and that's all.

Once the config interface is done we can move those to be configured and read from eeprom gamepad options.

FeralAI commented 2 years ago

I've updated the buttons for selecting input mode, using XInput button mapping (Arcade in parens):

I've bumped a minor version since this is a big change for functionality. You can grab a build with the updated mapping here: https://github.com/FeralAI/GP2040/releases/tag/v0.2.0