Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| diy-arcade-controls [2026/03/03 03:16] – [Using Controller Interfaces] superchooch | diy-arcade-controls [2026/05/29 20:55] (current) – [Gallery] nadenislamarre | ||
|---|---|---|---|
| Line 29: | Line 29: | ||
| {{:: | {{:: | ||
| {{:: | {{:: | ||
| + | {{:: | ||
| + | ?600|}} | ||
| ===== Arcade Cabinet Retailers and License Compliance ===== | ===== Arcade Cabinet Retailers and License Compliance ===== | ||
| Line 35: | Line 37: | ||
| The following retailers have been reported to respect licensing requirements: | The following retailers have been reported to respect licensing requirements: | ||
| - | - https:// | + | * https:// |
| - | - https:// | + | |
| ===== Hotkeys ===== | ===== Hotkeys ===== | ||
| Contextual hotkeys are the way Batocera maps hotkeys to actions in emulators. | Contextual hotkeys are the way Batocera maps hotkeys to actions in emulators. | ||
| - | For each emulator, the emulator hotkeys are referenced and mapped to Batocera hotkeys. | + | For each emulator, the emulator hotkeys are referenced and mapped to Batocera hotkeys. |
| Line 68: | Line 70: | ||
| | brightness-cycle | | brightness-cycle | ||
| - | ==== Using and Configuring | + | ===== Using and Configuring |
| - | Configuring '' | + | Configuring '' |
| <WRAP center round tip> | <WRAP center round tip> | ||
| - | TIP: Using and configuring '' | + | TIP: Using and configuring '' |
| </ | </ | ||
| Line 157: | Line 159: | ||
| There are some file samples in ''/ | There are some file samples in ''/ | ||
| - | Example | + | Here is an example of a Rec Room Masters Xtension 2 Player Plus controller: |
| # Xtension 2 Player Plus | # Xtension 2 Player Plus | ||
| Line 205: | Line 207: | ||
| [" | [" | ||
| - | In that example, the controller is split into 3 virtual devices: 2 pads and 1 hotkey device. | + | Using the example |
| + | * The controller is split into 3 virtual devices: 2 pads and 1 hotkey device. | ||
| + | * The '' | ||
| + | * Its '' | ||
| + | * '' | ||
| <WRAP center round important> | <WRAP center round important> | ||
| Line 249: | Line 255: | ||
| <WRAP center round tip> | <WRAP center round tip> | ||
| - | TL;DR: If your encoder is any model of I-PAC or Mini-PAC and your build doesn' | + | TL;DR: If your encoder is any model of I-PAC or Mini-PAC and your build doesn' |
| </ | </ | ||
| Line 261: | Line 267: | ||
| </ | </ | ||
| - | If you are using Batocera 41 or greater and your Ultimarc encoder | + | If you are using Batocera 41 or greater and your Ultimarc encoder |
| ==== Ultimarc Control Interfaces for Batocera v40 or Less ==== | ==== Ultimarc Control Interfaces for Batocera v40 or Less ==== | ||
| Line 273: | Line 279: | ||
| Follow these steps : | Follow these steps : | ||
| - | - login to your Batocera box locally or through SSH | + | * login to your Batocera box locally or through SSH |
| - | - find your encoder' | + | |
| **PLEASE NOTE:** a single encoder can have multiple possible names, so try all of them | **PLEASE NOTE:** a single encoder can have multiple possible names, so try all of them | ||
| - | For example: | + | For example: |
| - | `usb-Cypress_I-PAC_Arcade_Control_Interface-if01-event-kbd` → doesn' | + | '' |
| - | - Now remount / as read-write | + | * |
| - | - Create an empty file that has the same name of your keyboard device found 2 steps above `touch / | + | |
| - | - Edit `batocera.conf` and set `controllers.xarcade.enabled=1` (it should already be set by default but check it) | + | |
| - | - Save your modifications through SSH `batocera-save-overlay` | + | |
| - | - Reboot by typing | + | |
| Now all your keys should be usable, that is for each player : 4 directions joystick, select, start, hotkey, A, B, X, Y, L1 and R1. | Now all your keys should be usable, that is for each player : 4 directions joystick, select, start, hotkey, A, B, X, Y, L1 and R1. | ||
| Line 291: | Line 297: | ||
| You must now configure both the controllers in the Controller Configuration menu and also associate the right controller to player 1 and 2. | You must now configure both the controllers in the Controller Configuration menu and also associate the right controller to player 1 and 2. | ||
| - | Since Batocera **v34**, [Ultimarc](https:// | + | Since Batocera **v34**, [[https:// |
| Line 330: | Line 336: | ||
| The entire article is under construction but this part is // | The entire article is under construction but this part is // | ||
| - | Quick index: | + | Quick index: |
| + | * [[#Issue_1: | ||
| + | * [[#Issue_2: | ||
| Line 337: | Line 345: | ||
| ===== Issue 1: Dragonrise encoders Player 1 and Player 2 swapped ===== | ===== Issue 1: Dragonrise encoders Player 1 and Player 2 swapped ===== | ||
| - | **Symptoms** I use Dragonrise encoders and player 1 and player 2’s inputs are swapped | + | **Symptoms:** I use Dragonrise encoders and player 1 and player 2’s inputs are swapped |
| - | **Cause** - < | + | **Cause:** - < |
| - | **Fix** | + | **Fix:** |
| For Batocera 40 and newer, the fix has been reported as not being necessary any longer, but this was an issue in previous versions. | For Batocera 40 and newer, the fix has been reported as not being necessary any longer, but this was an issue in previous versions. | ||
| Line 366: | Line 374: | ||
| ===== Issue 2: I have a trackball and spinner and sometimes they stop working ===== | ===== Issue 2: I have a trackball and spinner and sometimes they stop working ===== | ||
| - | **Symptoms** When you have both trackball and spinner plugged into Batocera, they may occasionally be read in a different than the last time the devices was booted and, as a result, they will be assigned a different '' | + | **Symptoms:** When you have both trackball and spinner plugged into Batocera, they may occasionally be read in a different than the last time the devices was booted and, as a result, they will be assigned a different '' |
| - | **Cause** | + | **Cause:** |
| Arcade trackballs and spinners are handled as mouse devices. | Arcade trackballs and spinners are handled as mouse devices. | ||
| Line 374: | Line 382: | ||
| The problem comes from the way newer versions of RetroArch recognize mouse devices, by ID instead of name. The ID that they can have is thus unpredictable, | The problem comes from the way newer versions of RetroArch recognize mouse devices, by ID instead of name. The ID that they can have is thus unpredictable, | ||
| - | **Fix** | + | **Fix:** |
| - | + | ||
| - | For now, this can be worked around using a script to automatically log and change the ID as appropriate. Save it to '' | + | |
| - | + | ||
| - | | + | |
| - | + | ||
| - | < | + | |
| - | `# | + | |
| - | </ | + | |
| - | + | ||
| - | You may need to launch a game twice in order for it to have an effect. | + | |
| - | + | ||
| - | Keep updated by watching this space: https: | + | |
| - | + | ||
| - | Batocera may make the workaround process easier in the future by the inclusion of '' | + | |
| - | + | ||
| - | Standalone MAME has its own mechanism for enabling spinner, trackball, and other mouse devices. In **ADVANCED GAME OPTIONS**, select **MAME** as the emulator, then choose **ENABLE MOUSE** > **ENABLED**. | + | |
| - | + | ||
| - | ==== I use Dragonrise encoders and player 1 and player 2's inputs are swapped ==== | + | |
| - | + | ||
| - | For Batocera 40 and newer, the fix has been reported as not being necessary any longer, but this was an issue in previous versions. | + | |
| - | + | ||
| - | Make sure they are all wired exactly the same, each button going to the same USB encoder. | + | |
| - | + | ||
| - | If that's not working or is impossible to do due to your setup' | + | |
| - | + | ||
| - | < | + | |
| - | usbhid.quirks=0×0079: | + | |
| - | </ | + | |
| - | + | ||
| - | It's added onto the end of the line, not on a new line. For instance, your boot line might end up looking like this: | + | |
| - | + | ||
| - | < | + | |
| - | APPEND=label=BATOCERA rootwait quiet loglevel=0 console=ttyAML0, | + | |
| - | </ | + | |
| - | + | ||
| - | ==== I have a two devices that are recognized as mice and I have to reconfigure them every launch ==== | + | |
| - | + | ||
| - | Arcade trackballs and spinners are handled as mouse devices. | + | |
| - | + | ||
| - | The problem comes from the way newer versions of RetroArch recognize mouse devices, by ID instead of name. The ID that they can have is thus unpredictable, | + | |
| For now, this can be worked around using a script to automatically log and change the ID as appropriate. Save it to ''/ | For now, this can be worked around using a script to automatically log and change the ID as appropriate. Save it to ''/ | ||
| Line 440: | Line 408: | ||
| batocera-settings-set global.retroarch.input_player1_mouse_index $mouse_index | batocera-settings-set global.retroarch.input_player1_mouse_index $mouse_index | ||
| </ | </ | ||
| + | |||
| You may need to launch a game twice in order for it to have an effect. | You may need to launch a game twice in order for it to have an effect. | ||
| Line 445: | Line 414: | ||
| Keep updated by watching this space: [[https:// | Keep updated by watching this space: [[https:// | ||
| - | Batocera may make the workaround process easier in the future by the inclusion of '' | + | Batocera may make the workaround process easier in the future by the inclusion of '' |
| <WRAP center round tip 100%> | <WRAP center round tip 100%> | ||
| - | Standalone MAME has its own mechanism for enabling spinner, trackball, and other mouse devices. | + | Standalone MAME has its own mechanism for enabling spinner, trackball, and other mouse devices. In **ADVANCED GAME OPTIONS**, select **MAME** as the emulator, then choose **ENABLE MOUSE** > **ENABLED**. |
| </ | </ | ||
- diy-arcade-controls.1772507774.txt.gz
- Last modified: 3 months ago
- by superchooch