OpenStickCommunity / GP2040-CE

Multi-Platform Gamepad Firmware for Raspberry Pi Pico and other RP2040 boards
https://gp2040-ce.info
MIT License
1.54k stars 338 forks source link

Dual Direction not working properly #229

Closed ez2torta closed 1 year ago

ez2torta commented 1 year ago

How to replicate:

Set 4 pins for dual input thing. Test on gamepadtester and/or others pressing both your joystick and dual input

imagen

What i expected:

What i got:

Tested this using Left Analog stick as Dpad Mode in config too, and the results were the same (they clone whatever was in the dpad pins) imagen

Edit: What i got part

bsstephan commented 1 year ago

@ez2torta if you have shorted the pins (all four pins?) to ground, is it possible they are being SOCD cleaned to Neutral, and thus the only thing that registers is the "normal" directional?

ez2torta commented 1 year ago

@ez2torta if you have shorted the pins (all four pins?) to ground, is it possible they are being SOCD cleaned to Neutral, and thus the only thing that registers is the "normal" directional?

nope, they work fine it's just that i expected them to be on the config i wanted..

I wanted to have aditional 4 pins to be on left analog stick or dpad depending on the situation but now they only copy what the main dpad does

ez2torta commented 1 year ago

just edited the main post to make things a little bit more clear

bsstephan commented 1 year ago

Ah, okay. So Combination Mode: Mixed combines the two sets of directionals into whichever mode D-Pad Mode is set to. It sounds like you're closer to getting what you want if you are in Combination Mode: None, which has the extra set always register as Dual D-Pad Mode, so you could have the "normal" inputs set to left stick and the "dual" inputs set to dpad, and they register separately. BUT,

Caveat 1: None mode doesn't work on 0.7.0. The fix I wrote is merged as of yesterday, but a new release hasn't happened yet. So you want to wait for the next release or build your own firmware from main.

Caveat 2: there's no way to change Dual D-Pad Mode on the fly, so if you're saying you want to toggle both arbitrarily, you can't do that (there's no software macro or wiring for two toggles). But if you're happy to use the web configurator to change the dual mode, or are happy with one of your inputs always being in a certain mode, then I think Combination Mode: None is what you want.

bsstephan commented 1 year ago

I wrote a table in the PR for my Combination Mode: None fix here: https://github.com/OpenStickCommunity/GP2040-CE/pull/220 --- you can reference it to see what it accomplishes and see if that lines up with what you want.

ez2torta commented 1 year ago

it seems that your PR covers both scenarios i wanted :) thanks!

ez2torta commented 1 year ago

Just compiled and it's working properly as you said. Thanks! i hope everyone can hop into the new version soon