Skip to content
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

some gamepad hotkey not work #1079

Closed
wang80919 opened this issue Dec 14, 2022 · 30 comments
Closed

some gamepad hotkey not work #1079

wang80919 opened this issue Dec 14, 2022 · 30 comments

Comments

@wang80919
Copy link

use emuelec ui mapping some gamepad.
hotkey set use SELECT button.
in ppsspp drastic press SELECT+START can quit game.
in RetroArch can not quit game.
in RA MENU INPUT HOTKEY it is not SELECT.
please auto update to EE's hotkey.

@wang80919 wang80919 changed the title som gamepad hotkey not work some gamepad hotkey not work Dec 14, 2022
@Langerz82
Copy link
Collaborator

Which EmuELEC Version are you using.
In 4.6
Retroarch has it's own quit so it's been made not to quit via HOTKEY+START. That being said HOTKEY+START does quit for me fine. You may have to adjust the input menu settings, L3+R3 or SELECT and North Yellow Y Button.

@wang80919
Copy link
Author

ee 4.4 4.5 4.6 has this issue.
ee 4.3 not has this bug.

@Langerz82
Copy link
Collaborator

Did you manually configure your controllers buttons in ES Wireless and Controller settings, then assign the HOTKEY to the SELECT button?

@wang80919
Copy link
Author

Did you manually configure your controllers buttons in ES Wireless and Controller settings, then assign the HOTKEY to the SELECT button?

yes .
4.3 do not has this bug.

@Langerz82
Copy link
Collaborator

Post your controller config file in /tmp/joypads/"Your Controller".cfg.

Mine is this:

  GNU nano 6.4                          Xbox 360 Controller.cfg
input_device = "Xbox 360 Controller"
input_driver = "udev"
input_vendor_id = "1118"
input_product_id = "654"
input_r_y_plus_axis = "+4"
input_left_btn = "h0left"
input_state_slot_decrease_btn = "h0left"
input_r_x_minus_axis = "-3"
input_right_btn = "h0right"
input_state_slot_increase_btn = "h0right"
input_r_btn = "5"
input_save_state_btn = "5"
input_down_btn = "h0down"
input_volume_down_btn = "h0down"
input_r_y_minus_axis = "-4"
input_l_btn = "4"
input_load_state_btn = "4"
input_r_x_plus_axis = "+3"
input_y_btn = "2"
input_x_btn = "3"
input_menu_toggle_btn = "3"
input_b_btn = "0"
input_reset_btn = "0"
input_a_btn = "1"
input_up_btn = "h0up"
input_volume_up_btn = "h0up"
input_select_btn = "6"
input_l3_btn = "9"
input_start_btn = "7"
input_exit_emulator_btn = "7" <--- to exit emulator button
input_l_x_plus_axis = "+0"
input_l_y_minus_axis = "-1"
input_enable_hotkey_btn = "6" <--- the select button
input_l2_axis = "+2"
input_rewind_axis = "+2"
input_r2_axis = "+5"
input_toggle_fast_forward_axis = "+5"
input_l_y_plus_axis = "+1"
input_r3_btn = "10"
input_fps_toggle_btn = "10"
input_l_x_minus_axis = "-0"

@wang80919
Copy link
Author

some gamepad 6 is home button.
but I do not want use home button.

@Langerz82
Copy link
Collaborator

Paste your config when you can and I'll take a look. Auto kill on retroarch for 4.6 got disabled from memory. If we can configure it to default to SELECT+START I think we should but I need confirmation from your config file and if shantigilbert agrees we change it.

@wang80919
Copy link
Author

I can press L3+R3
select
settings ->input -> Input Hotkey Binds -> Hotkey Enable
press SELECT 。
than.
I can use SELECT+START to quit game now.

but I want auto confirmation this .

@wang80919
Copy link
Author

whan I change use other gamepad
I must do it again.
I hope it is auto .

@Langerz82
Copy link
Collaborator

@shantigilbert what do you think man? Should we enable gptokeyb killthis for retroarch and retrorun? Maybe we make an ES config enabled by default with an option to disable it?

@wang80919
Copy link
Author

@shantigilbert what do you think man? Should we enable gptokeyb killthis for retroarch and retrorun? Maybe we make an ES config enabled by default with an option to disable it?

why 4.3 ok?

ee 4.3 press hotkey+start
show
press again to quit game.

I want 4.6 same as 4.3 .

@wang80919
Copy link
Author

Post your controller config file in /tmp/joypads/"Your Controller".cfg.

Mine is this:

  GNU nano 6.4                          Xbox 360 Controller.cfg
input_device = "Xbox 360 Controller"
input_driver = "udev"
input_vendor_id = "1118"
input_product_id = "654"
input_r_y_plus_axis = "+4"
input_left_btn = "h0left"
input_state_slot_decrease_btn = "h0left"
input_r_x_minus_axis = "-3"
input_right_btn = "h0right"
input_state_slot_increase_btn = "h0right"
input_r_btn = "5"
input_save_state_btn = "5"
input_down_btn = "h0down"
input_volume_down_btn = "h0down"
input_r_y_minus_axis = "-4"
input_l_btn = "4"
input_load_state_btn = "4"
input_r_x_plus_axis = "+3"
input_y_btn = "2"
input_x_btn = "3"
input_menu_toggle_btn = "3"
input_b_btn = "0"
input_reset_btn = "0"
input_a_btn = "1"
input_up_btn = "h0up"
input_volume_up_btn = "h0up"
input_select_btn = "6"
input_l3_btn = "9"
input_start_btn = "7"
input_exit_emulator_btn = "7" <--- to exit emulator button
input_l_x_plus_axis = "+0"
input_l_y_minus_axis = "-1"
input_enable_hotkey_btn = "6" <--- the select button
input_l2_axis = "+2"
input_rewind_axis = "+2"
input_r2_axis = "+5"
input_toggle_fast_forward_axis = "+5"
input_l_y_plus_axis = "+1"
input_r3_btn = "10"
input_fps_toggle_btn = "10"
input_l_x_minus_axis = "-0"

My current gamepad same as your, exactly the same.

but I must press HOME+START ,show press again to exit.
I do press again HOME+START . RetroArch exit successful.

play ppsspp .
I must press SELECT+START, It is exit immediately.

@shantigilbert
Copy link
Collaborator

@Langerz82 No. From what I am reading this is not an issue with hotkeys in retroarch. I am not even sure this is even an issue/bug.

@wang80919
Copy link
Author

EE 4 6 first run RetroArch 1 13 0 hotkey is not my EE hotkey
EE 4 6 first run mapping my gamepad
EE 4 6 run a game L3R3 in RetroArch 1 13 0 hotkey is not my EE hotkey

In 4.3 is not has this issue.

@Langerz82
Copy link
Collaborator

Langerz82 commented Dec 14, 2022

Confirm Quit needs to be off, and the Quit Controller needs to be set to SELECT+START.

@shantigilbert I do not think the above is the default action though. Enabling gptokeyb would make it more consistent in having it the same way for all emulators. Unless there is cases where in game the SELECT+START combo is needed in-game for a different function?

I checked the defaults, it seems they are not being set to have a controller quit function, and the confirm quit is enabled.

EMUELEC:~ # cat /storage/.config/retroarch/retroarch.cfg | grep quit
# RetroPad button combination to quit
# input_quit_gamepad_combo = 0
menu_show_quit_retroarch = "true"

@shantigilbert
Copy link
Collaborator

On my end this works as expected, RA has its own hotkey functions, and they work as expected. Retroarch (as any other emulator that has a native quit function) does NOT need gptokeyb.

If this is a cloned/chinese gamepad then I am not going to even bother looking into this, those gamepads are so weird I don't feel like wasting time just because 2 buttons work different. You are free to do so, but keep in mind gptokeyb is NOT needed for Retroarch.

@Langerz82
Copy link
Collaborator

If we use these values in the default retroarch config, the SELECT+START to quit should always work and not rely on the gamepads autoconfig.

input_quit_gamepad_combo = "4"
menu_show_quit_retroarch = "true"
quit_on_close_content = "0"
quit_press_twice = "false"

I'm not too sure about retrorun though, does it use the ra config too?

@shantigilbert
Copy link
Collaborator

If we use these values in the default retroarch config, the SELECT+START to quit should always work and not rely on the gamepads autoconfig.

input_quit_gamepad_combo = "4"
menu_show_quit_retroarch = "true"
quit_on_close_content = "0"
quit_press_twice = "false"

I'm not too sure about retrorun though, does it use the ra config too?

Maybe I am not understanding correctly. Why is this needed? it should not be always SELECT+START it should be HOTKEY+START and right now HOTKEY+START works fine.

@Langerz82
Copy link
Collaborator

Langerz82 commented Dec 14, 2022

HOTKEY is not always correct, In Retroarch the default was assigned value 8, when my HOTKEY in ES was assigned 6 (as SELECT). 8 does not even exist in my auto-config. I guess the issue is the auto-configs are sometimes unreliable, having SELECT+START as a quit is good fixed combination that does not rely on controller button codes.

If we change this it might also be worth considering to change the default Menu Toggle Controller combo from L3+R3 to something that can be done with Arcade Controller Sticks as well, (holding SELECT for 2 seconds might be a good option).

edit: sorry I had some typos in message.

@shantigilbert
Copy link
Collaborator

shantigilbert commented Dec 14, 2022

having SELECT+START as a quit is good fixed combination that does not rely on controller button codes.

I do not agree. the quit combination should always be HOTKEY+START. If there is an issue with the auto-config then that should be the part that should be fixed, but like I said, I cannot reproduce this. for me it works as it should.

EDIT: Note that HOTKEY can also be SELECT

@Langerz82
Copy link
Collaborator

If the config is changed I think it would be an alternate combination. HOTKEY+START should still perform as expected.

@shantigilbert
Copy link
Collaborator

As long as HOTKEY+START works as it should and nothing else gets broken for other gamepads (specially official gamepads) I have no issue if this is an option. But like I said, I am not going to do this change as I cannot even reproduce it.

@Langerz82
Copy link
Collaborator

Langerz82 commented Dec 14, 2022

@shantigilbert
In the pictures his showing he actually has the same issue I have mentioned. The hotkey in ES is assigned to 6, but when RA starts it thinks that 8 is the hotkey which is non-existent on my controller. So for me to exit I have to go through the menu (and the menu is also have to L3+R3 very non-obvious because hotkey disabled), or change the config, which is not a big deal for me, but for newbies they may have trouble.

@shantigilbert
Copy link
Collaborator

shantigilbert commented Dec 14, 2022

I see the issue reported with the photos, but again, I cannot reproduce it. For my setup it works as it should. I do not want to deal with gamepads again, especially with so many clones around that work different from each other.

EDIT: I meant If it's not a general issue, I don't want to mess with it.

@wang80919
Copy link
Author

@shantigilbert In the pictures his showing he actually has the same issue I have mentioned. The hotkey in ES is assigned to 6, but when RA starts it thinks that 8 is the hotkey which is non-existent on my controller. So for me to exit I have to go through the menu (and the menu is also have to L3+R3 very non-obvious because hotkey disabled), or change the config, which is not a big deal for me, but for newbies they may have trouble.

yes ,
change the config, which is not a big deal for me, but for newbies they may have trouble.

@wang80919
Copy link
Author

As long as HOTKEY+START works as it should and nothing else gets broken for other gamepads (specially official gamepads) I have no issue if this is an option. But like I said, I am not going to do this change as I cannot even reproduce it.

in 4.3 it is ok .
in 4.4 4.5 4.6 not ok

@EmuELEC EmuELEC deleted a comment from edouardlicn123 Dec 20, 2022
@Langerz82
Copy link
Collaborator

@wang80919 You do realise that setting the hotkey button as select can be done on top of setting the select button as well. The issue you describe here is only when you do not set the hotkey button, which is kind of silly because it will not conflict with any other button assignments (you have to hold it in + press other buttons for it to work).

@wang80919
Copy link
Author

wang80919 commented Dec 27, 2022

@wang80919 You do realise that setting the hotkey button as select can be done on top of setting the select button as well. The issue you describe here is only when you do not set the hotkey button, which is kind of silly because it will not conflict with any other button assignments (you have to hold it in + press other buttons for it to work).

[](https://user-images.githubusercontent.com/19446129/207643665-a51e0480-00d9-4006-a1ac-f673e6828b11.png)
button 6 is select button.

@Langerz82
Copy link
Collaborator

@wang80919 You do realise that setting the hotkey button as select can be done on top of setting the select button as well. The issue you describe here is only when you do not set the hotkey button, which is kind of silly because it will not conflict with any other button assignments (you have to hold it in + press other buttons for it to work).

button 6 is select button.

Sorry my bad. I also noticed you are making a hotkey for gamepad 2. But retroarch can have only one hotkey set for the 1st controller I think.

@Langerz82
Copy link
Collaborator

I got a PR in the works which would solve your issue. Technically this is not a bug so I will close this issue. For more info -
See: #1109

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

3 participants