USB Encoder Mapping
-
Still no luck when running the script directly.
-
Works for me - are you sure you're running a RetroArch emulator ? What game are you starting and what emulator appears in the launch command message ?
-
Not 100% sure.I am running super mario kart and the SNES9X emulator.
-
When you start the game, there's the launch command 'splash', displaying the game and the emulator run:
What does it say when you start yours ?
-
Mine says Super Mario Kart (USA) lr-snes9x2010.
-
Then it's using
lr-snes9x2010
as emulator, which is a RetroArch core. I don't understand why it's not working - you can try adding the RetroArch network input config to\\retropie\configs\snes\retroarch.cfg
, just in case you saved the configuration from the RGUI. -
Ok, good to know. I added the network input config to the snes config file. That still shouldn't have mattered when running the pause-ra.sh script in the terminal because isn't that simply running the PAUSE command the same as if I were running it in the game?
Edit: Ignore what I said above, that did the trick, I must have edited some configuration through the RGUI as you mentioned. You are awesome mitu. Can confirm everything from running in the terminal to pressing the P key does what it should do.
-
Now for my usecase I need to find a way to replace KEY_P 1 with a controller button that I want to have linked to a dedicated P4 or P5 (if possible) position. If I assigned the KEY_P to say "button 11" which no other controller of mine has, that should work right?
-
It should work, though you'll have to find out the event that triggers that. To find out the the right event, you need to:
- get the event device for the controller. Run
cat /proc/bus/input/devices
and note the/dev/input/eventX
device of the controller you want to use. Let's say is/dev/input/event2
. - run
thd --dump /dev/input/event2
from the terminal. Press the button and the event shold be shown on the screen:
thd --dump /dev/input/event2 EV_KEY BTN_B 1 /dev/input/event2 # BTN_B 1 command
Press
Ctrl+C
to stop.
The event name is shown on the 2nd (commented) line -BTN_B
, since I pressed theB
button on my gamepad. Replace theKEY_P
with the correspondingBTN_
event and it should work. Make sure to restart the service after re-configuration (sudo systemctl restart triggerhappy
). - get the event device for the controller. Run
-
Everything worked flawlessly, I really appreciate the event lookup code, I never would have figured that out. I did notice that if a hotkey was enabled that it does not work which I believe you mentioned in the other thread. All in all it does exactly what I wanted it to do.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.