This instructions are for Batocera 5.24 or later, they are dedicated to IPAC2 and X-Arcade USB Controllers, IPAC4 might work too.

Xarcade2jstick has been patched to support keyboard encoders. You may have to reconfigure a few keys of your encoder as, sadly, x-gaming Xarcade devices didn't mapped as usual mame controllers.

Do not change the key mappings of your IPAC2 as it is unnecessary, but your IPAC2 must be in keyboard mode

Configuring your keyboard encoder

Follow these steps :

  • login to your Batocera box locally or through SSH
  • find your encoder's device name with ls /dev/input/by-id. Usually, there is a trailing kbd in the event name. For example : usb-Ultimarc_IPAC_2_Ultimarc_IPAC_2_9-if01-event-kbd

PLEASE NOTE: a single encoder can have multiple possible names, so try all of them
For exemple: usb-Cypress_I-PAC_Arcade_Control_Interface-event-kbd → works
usb-Cypress_I-PAC_Arcade_Control_Interface-if01-event-kbd → doesn't work

  • Now remount / as read-write mount -o remount,rw /
  • Create an empty file that has the same name of your keyboard device found 2 steps above touch /usr/share/batocera/datainit/system/configs/xarcade2jstick/devicename. With the previous example : touch /usr/share/batocera/datainit/system/configs/xarcade2jstick/usb-Ultimarc_IPAC_2_Ultimarc_IPAC_2_9-if01-event-kbd
  • 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 reboot

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.
For now it is not possible to attribute more buttons like L2, R2, L3 or R3

You must now configure both the controllers in the Controller Configuration menu and also associate the right controller to player 1 and 2.

  • ipac2_usb_controllers.txt
  • Last modified: 9 months ago
  • by voljega