mholgatem / GPIOnext

The next evolution of GPioneer! Create virtual gamepads with your GPIO pins!
MIT License
134 stars 37 forks source link

Joypad 1 not recognized after launching game, works in retropie menu #95

Open willelind opened 2 weeks ago

willelind commented 2 weeks ago

Hi!

Hardware: Pi Zero 2 OS: RetroPie 4.8

I did a config via instructions from this GitHub, then I used that config to create a gamepad via emulationstation config. This works as intended and the pins from joypad1 are recognized as a game pad. I can use all the keys as intended in the retropie menu.

However, when I boot up any game, the keys stop being responsive and I get the following error on the screen:

GPIOnext Joypad 1 (9999/8888) not configured

What can I do to solve this?

mholgatem commented 2 weeks ago

Hmm. Unsure. This seems like it's a problem on the emulationstation side of things if it's working in the retropie menu.

On Fri, Aug 23, 2024, 1:40 PM willelind @.***> wrote:

Hi!

Hardware: Pi Zero 2 OS: RetroPie 4.8

I did a config via instructions from this GitHub, then I used that config to create a gamepad via emulationstation config. This works as intended and the pins from joypad1 are recognized as a game pad. I can use all the keys as intended in the retropie menu.

However, when I boot up any game, the keys stop being responsive and I get the following error on the screen:

GPIOnext Joypad 1 (9999/8888) not configured

What can I do to solve this?

— Reply to this email directly, view it on GitHub https://github.com/mholgatem/GPIOnext/issues/95, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRCRWJVVV7K7SNLEQW3WTTZS6M37AVCNFSM6AAAAABNA2XANKVHI2DSMVQWIX3LMV43ASLTON2WKOZSGQ4DGOBVG43DAMQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

willelind commented 2 weeks ago

Interesting, thanks for quick response.

The weird thing is, if I create a joypad 1 config in gpionext where I bind for example pin 40 to A, and then I bind that button in emulationstation to B, it will act as B in the retropie menu. Which seems to be indicating that the gamepad config from emulationstation works. But when launching the game it stop working.

And to add more problem, I can see that the device from:

/sys/devices//.../inputs/ is removed when launching a game. So it seems to me that it tries to use the input device from gpionext and deletes it because it can't.

I didn't get any extra info while running with debug flag.

mholgatem commented 2 weeks ago

Correct. The bindings in gpionext are the device BINDINGS whereas in retropie they are MAPPINGS. (I.E. - 'B' » 'A')

On Fri, Aug 23, 2024, 2:09 PM willelind @.***> wrote:

Interesting, thanks for quick response.

The weird thing is, if I create a joypad 1 config in gpionext where I bind for example pin 40 to A, and then I bind that button in emulationstation to B, it will act as B in the retropie menu. Which seems to be indicating that the gamepad config from emulationstation works. But when launching the game it stop working.

And to add more problem, I can see that the device from:

/sys/devices//.../inputs/ is removed when launching a game. So it seems to me that it tries to use the input device from gpionext and deletes it because it can't.

I didn't get any extra info while running with debug flag.

— Reply to this email directly, view it on GitHub https://github.com/mholgatem/GPIOnext/issues/95#issuecomment-2307814321, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRCRWLMRUEL2CQK2NU3C3DZS6QJPAVCNFSM6AAAAABNA2XANKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBXHAYTIMZSGE . You are receiving this because you commented.Message ID: @.***>

mholgatem commented 2 weeks ago

Sorry I couldn't be more help

On Fri, Aug 23, 2024, 2:30 PM Mark H. @.***> wrote:

Correct. The bindings in gpionext are the device BINDINGS whereas in retropie they are MAPPINGS. (I.E. - 'B' » 'A')

On Fri, Aug 23, 2024, 2:09 PM willelind @.***> wrote:

Interesting, thanks for quick response.

The weird thing is, if I create a joypad 1 config in gpionext where I bind for example pin 40 to A, and then I bind that button in emulationstation to B, it will act as B in the retropie menu. Which seems to be indicating that the gamepad config from emulationstation works. But when launching the game it stop working.

And to add more problem, I can see that the device from:

/sys/devices//.../inputs/ is removed when launching a game. So it seems to me that it tries to use the input device from gpionext and deletes it because it can't.

I didn't get any extra info while running with debug flag.

— Reply to this email directly, view it on GitHub https://github.com/mholgatem/GPIOnext/issues/95#issuecomment-2307814321, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRCRWLMRUEL2CQK2NU3C3DZS6QJPAVCNFSM6AAAAABNA2XANKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBXHAYTIMZSGE . You are receiving this because you commented.Message ID: @.***>

willelind commented 2 weeks ago

Thank you all the same, for the quick response nonetheless. I also want to thank you for a great tool, it really helped me a lot during setup for my quite complex project (a keyboard that can switch state between controlling the computer or controlling the embedded emulator).

All the same, I did figure it out finally, so I wanted to post a response here in case anyone else gets this problem.

9999/8888 seems to be related to joystick/dpad. I did find an old thread https://retropie.org.uk/forum/topic/32997/controller-working-in-menu-but-not-in-game/2 about this, and it seems if you use a joystick/dpad you can add your 9999/8888 or whatever numbers you have into your config file.

The problem/solution for me is that I don't have a dpad, so if I don't register one and simply enter my pins as a keyboard in gpionext config instead, it works as intended.

mholgatem commented 2 weeks ago

Great, I'm glad you were able to get it working!

On Fri, Aug 23, 2024, 2:51 PM willelind @.***> wrote:

Thank you all the same, for the quick response nonetheless. I also want to thank you for a great tool, it really helped me a lot during setup for my quite complex project (a keyboard that can switch state between controlling the computer or controlling the embedded emulator).

All the same, I did figure it out finally, so I wanted to post a response here in case anyone else gets this problem.

9999/8888 seems to be related to joystick/dpad. I did find an old thread https://retropie.org.uk/forum/topic/32997/controller-working-in-menu-but-not-in-game/2 about this, and it seems if you use a joystick/dpad you can add your 9999/8888 or whatever numbers you have into your config file.

The problem/solution for me is that I don't have a dpad, so if I don't register one and simply enter my pins as a keyboard in gpionext config instead, it works as intended.

— Reply to this email directly, view it on GitHub https://github.com/mholgatem/GPIOnext/issues/95#issuecomment-2307855539, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRCRWK4O7CF2EX5IG5PVD3ZS6VHNAVCNFSM6AAAAABNA2XANKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBXHA2TKNJTHE . You are receiving this because you commented.Message ID: @.***>