X-Arcade Joystick With Batocera Linux/PC

Batocera.linux is an open-source and completely free retro-gaming distribution that can be copied to a USB stick or an SD card with the aim of turning any computer/nano computer into a gaming console during a game or permanently. Batocera.linux does not require any modification on your computer. Note that you must own the games you play in order to comply with the law.

Classic Tankstick setup with Batocera

image

The X-Arcade Tankstick is supported on Batocera when you enable controllers.xarcade.enabled=1 in the /userdata/system/batocera.conf file. It is done through the arcade2jstick module, which means that each of the two sticks is seen as an independent joystick by EmulationStation and the emulators. The trackball is recognized as a USB mouse in emulators that support mouse.

There's a config file

The X-Arcade controller config file is broken <http://www.xgameroom.com/service/ServiceFiles/X-Arcade.zip>

That's for MODE 1 X-Arcades that are designed to be seen as Keyboard.

If you have a TRIMODE X-Arcade (Made after 2019), your X-Arcade has Mode 3 as XINPUT, So you can slide to Mode 3 if you want and bactocera will see X-Arcade as Two Separate Gamepads

If anyone lands here looking for a working solution try:

  1. Change the slider on the back of the X-Arcade Tankstik to position 3
  2. Go back to the Batocera screen and it should identify the 2 separate controls of the Tankstik
  3. Map the Tankstik as you see fit to Bantocera

It took me 3 hours fiddling with this yesterday to arrive at this solution. This was a brand new Tankstik and batocera-x86\_64-35-20220917 on a Windows machine.

This may work with other emulation/gaming systems as well.

Remapping per game: <https://wiki.batocera.org/remapping_controls_per_emulator>

Per game Retroarch overrides: <https://wiki.batocera.org/advanced_retroarch_settings>

That should be all you need.

If you specifically need a "no workarounds" situation, then don't use Batocera, as Batocera was designed as a "plug and play" system for one controller = one player, not one controller = one system. You'll find many other issues when forcing controllers on certain emulators that only exist in Batocera because of this philosophy.

How to Map Tanksticks to Batocera Using Mode 4(XINPUT) (2024/10/23 Updated)

I’ve put together a procedure for setting up your Tankstick with Batocera on your PC.

Please follow the steps below:

  1. Open this link: Batocera Shortcutsand familiarize yourself with the default keyboard mapping, as you'll need it later.
  2. Make sure your PC is turned off.
  3. Plug in your Tankstick (with the mode switched to 4 for XINPUT) and also plug in a keyboard.
  4. Turn on your PC and run the Batocera system.
  5. Use the keyboard to press Start and enter the Batocera menu.
  6. Navigate to Input Settings.
  7. Select Configure Controller. It will show the number of inputs detected.
  8. Long press any button on Player 1’s Tankstick to initiate the mapping.
  9. Map the joystick and buttons to your preference. I recommend:
  1. Once finished, press OK.
  2. In the Input Settings menu, set the Player 1 controller to Xbox™ Controller 1 and Player 2 controller to Xbox Controller 2. These are the driver names for XINPUT mode.
  3. Now you're all set, and you should be able to play games with it.

Note: To exit a game, press Select + Start together.


Source article: <https://support.xgaming.com/support/solutions/articles/12000095919-x-arcade-joystick-with-batocera-linux-pc>

Original Arcade2TV-XR with Haptics Kit: pinball mapping is a separate check

Do not treat the classic Tankstick/Tri-Mode steps above as proof that every original XR Pinball-mode control works in Batocera. In a reviewed original XR + separate Haptics Kit case, Windows Zaccaria worked but Batocera showed multiple controller entries, missed flipper input or overlapping analog/button assignments. The customer also reported that Keyboard mode did not expose both flippers. Support's initial suggestion to ignore the second entry was not a confirmed solution.

Support explained that different XInput profiles may share an Xbox 360 driver name and that Keyboard mode presents one keyboard rather than two independent gamepads. Those facts do not prove correct per-game mapping. Record the selected profile, Batocera build, game/emulator, detected entries and individual flipper/plunger/nudge responses. Compare the same physical controls in the Windows input test and in Batocera's mapping screen before changing mappings. Back up existing mappings first and test both flippers and analog axes separately after any change.

This case did not end with a working Batocera pinball configuration. An old statement about a planned D-Input fix is not a released feature or delivery promise. Send the exact comparison to support if controls remain absent; do not repeat Keyboard-mode or ignore-second-controller advice that the customer has already shown unsuccessful. Do not transfer this limitation to XR MAX or all Batocera versions without matching evidence.

Original XR: green-mode/global mapping is not a guaranteed Batocera fix

In a reviewed original Arcade2TV-XR + separate Haptics Kit case, support proposed configuring green-mode Player 1 and then assigning both player ports globally. The customer later reported that mappings still did not carry across games and that green mode lost some buttons/side controls. This is an unresolved configuration report, not proof of a specific Batocera defect or a universally working profile.

Do not promise that Player 1 mapping automatically makes all Player 2, flipper, plunger and nudge inputs work. Purple mode may expose multiple entries; ignoring one is not a validated fix for every build/game. Record the exact Batocera version, emulator/core, game, wired/dongle mode and each detected device. Back up mappings, compare each physical control in the Windows input test, then the Batocera mapping screen and the affected game. Save and relaunch before judging persistence. Report which inputs disappear at which layer, and do not repeat green-mode/global mapping if that exact test already failed. Do not transfer this original-XR result to Tankstick MAX or XR MAX.