X-Arcade not recognized or configurable by latest retropie

Welcome Page Forums RetroPie Project Controller Configuration in RetroPie X-Arcade not recognized or configurable by latest retropie

This topic contains 13 replies, has 4 voices, and was last updated by  hbchrist 1 year, 8 months ago.

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
  • #114100


    I have the x-arcade dual joystick. It works just fine with my old xbox retro arcade, but I am trying to get it working with retropie.

    I have the raspberry 2 model B. The unit works fine and it is running the most up to date, *stable* version of retropie. I put version 3.3 of retropie on the flash card and ran the update scripts.

    EmulationStation boots normally, so I have no issues there. After booting, I can configure a USB keyboard without issue. I have no other usb controllers except my x-arcade dual joystick. However, EmulationStation/Retropie does not recognize the x-arcade at all.

    Jstest (jtest?) is not compatible with my version of retropie, but the input subdirectory does not see the xarcade, either. I have scoured YouTube, Reddit, these forums, and the internet for a solution. The info I have come across for configuring the sticks are either months old, use older versions of retropie, or deal with the tankstick. I have read other forum posts stating the tankstick config does not work with the dual joystick.

    I’m stumped. Either I’m missing some obvious step in the installation process for the dual joystick, or it just doesn’t work. After I configure the usb keyboard, none of the inputs translate to the joysticks. I get no response from ES or any of the emulators, at all, from the dual joysticks.

    Any ideas at this point would be greatly appreciated. I like the pi, I like this distro, and I like the joysticks, so bringing them all together would be awesome. I have an hdmi projector and putting this altogether would cement my outdoor, big screen, retro arcade dream.

    Thanks in advance,




    Hello. I’m running 3.3.1 with a tankstick and raspberry pi 2. I had no problems.

    What I did was install Xarcade2jstick which is described in http://blog.petrockblock.com/2014/06/01/xarcade2jstick/. You can do so just using the RetroPie-Setup script. It’s option 327 if I remember correctly. Once I had done so, I was able to configure EmulationStation to use each side of the tankstick.

    You say that jstest is not compatible with your version. I’m a bit confused by that. It worked for me.

    Anyway, I hope this helps a little.



    UPDATE: I am stupid.

    I finally realized that the detection issue was from using the wrong connection cable. I was using the xbox adapter instead of the normal usb connector cable that comes with the xarcade.

    After switching cables and rebooting, retropie detects the xarcade without issue. I have the xarcade2joystick service running. Now the only issue is the proper use and allocation of buttons.

    When ES started, I assigned out various functions to the ES splashscreen for select, start, A, X, Y, etc. I also left a bunch of buttons undefined, as I didnt know what to do with them.

    When I launch MAME, it kind of works for single player. Weirdly, I can only add credits to the game I launched by mashing ALL of the buttons on the right and left side of dual joysticks (I am pressing 16 buttons at once). I can play with the left joystick, but I cant get a second player to enter the game. I cant back out of the game, either, to get back to the main emulator selection screen.

    Do I have to manually remap the emulator .cfg files? I have not tried another emulator as of this writing, just MAME4ALL.





    Note that I’ve likely been using RetroPie as long as you have. Take anything I say with a huge helping of salt.

    Good on you, getting your tankstick problem sorted out. When you configured it on the ES splashscreen, did you configure BOTH sides, or just the left side? I’m assuming you just configured the left side because it’s a two-step process. You need to configure the right side as well. You can do so by hitting your start button and using the ES menu (not the RetroPie menu) to configure inputs.

    I have no idea if it makes any difference at all, but I ended up settling on configuring the buttons in the following order, according to my notes: 9 8 5 4 1 3 0 2 6 7. That’s probably not going to be all that much help to you unless you number your buttons the same way I do, so here’s my ~/.emulationstation/es_input.cfg file:

    <?xml version="1.0"?>
      <inputAction type="onfinish">
      <inputConfig type="joystick" deviceName="Xarcade-to-Gamepad Device">
        <input name="pagedown" type="button" id="2" value="1"/>
        <input name="start" type="button" id="9" value="1"/>
        <input name="pageup" type="button" id="0" value="1"/>
        <input name="up" type="axis" id="1" value="-1"/>
        <input name="a" type="button" id="5" value="1"/>
        <input name="b" type="button" id="4" value="1"/>
        <input name="down" type="axis" id="1" value="1"/>
        <input name="right" type="axis" id="0" value="1"/>
        <input name="select" type="button" id="8" value="1"/>
        <input name="left" type="axis" id="0" value="-1"/>

    If that’s not helpful, let me know and I’ll describe it better. It’s relevant because I _think_ mame4all relies on you having configured your buttons properly, though there’s even odds that I’m mistaken here.

    Anyway, okay great. So you have both sides of your tankstick configured in emulationstation. And you launch a mame4all game. Everything should be configured for you now. I didn’t have to do any more configuration to get my buttons working.

    You CAN do more configuration. Hit the TAB key to bring up the mame4all config. But you shouldn’t have to be remapping your buttons here, because I have the same setup and I didn’t have to. That’s not quite true. I remapped the ‘coin’ button to my tankstick’s side button. I also plan on mapping the exit-mame4all button so I don’t have to hit ESC on the keyboard, I just haven’t found that setting yet. I may be looking in the wrong place.

    Please do let me know how you get on with this. And keep in mind I’m very new to this, too, looks like I’m exactly one step ahead of you though.



    Thanks for sticking with me on this.

    I deleted my es_input.cfg and started fresh. Interestingly, I made sure my usb keyboard was unattached when I bounced the pi.

    When ES started, it recognized the xarcade a s dual joystick gamepad. Previously it had only recognized it as a single joystick gamepad. I configured both joysticks this time, but I had to do it by pressing tab from within ES itself at the splash screen for MAME. I configured both, and they are working, but with a couple of minor glitches.

    I dont have a button configured to add credits. I have to reattach the keyboard and press 5. I can select a game and lauch the game. From the game’s opening screen, I can press the left side button and the 1 player button to get the in-game menu to reconfig retroarch. However, I cant seem to remap the Coin 1 option to the side button.

    Also, pressing the 1 player button or 2 player button does nothing. They are mapped to the 1 and 2 keys, respectively, above the keyboard (not the numpad), and they *will* work on the keyboard. But I want those remapped to the xarcade Player 1 and Player 2 buttons as well.

    I tried a couple of SNES games, and those seem to work without issue. I am so close to having this fixed just as I like it, that I can taste it. I am anxious to switch fully to the retropie and away from my revamped original xbox.

    I’ll let you know if I uncover any new info. For the record, here is my es_input.cfg:

    <?xml version=”1.0″?>
    <inputConfig type=”joystick” deviceName=”Xarcade-to-Gamepad Device” dev$
    <input name=”a” type=”button” id=”4″ value=”1″ />
    <input name=”b” type=”button” id=”3″ value=”1″ />
    <input name=”down” type=”axis” id=”1″ value=”1″ />
    <input name=”left” type=”axis” id=”0″ value=”-1″ />
    <input name=”leftbottom” type=”button” id=”2″ value=”1″ />
    <input name=”right” type=”axis” id=”0″ value=”1″ />
    <input name=”rightbottom” type=”button” id=”5″ value=”1″ />
    <input name=”select” type=”button” id=”6″ value=”1″ />
    <input name=”start” type=”button” id=”7″ value=”1″ />
    <input name=”up” type=”axis” id=”1″ value=”-1″ />
    <input name=”x” type=”button” id=”1″ value=”1″ />
    <input name=”y” type=”button” id=”0″ value=”1″ />

    Best regards,




    You may have mapped your start and select buttons differently than I did, in EmulationStation. I mapped the Start button to the one with the ‘1 player’, and I mapped the Select button to the button on the side.

    MAME then recognized the 1 player (and, when I mapped the right hand side, the 2 player). I had to map the coin button myself; I mapped it to the button on the side, in the config screen that comes up when you hit TAB. Doing the config isn’t hard, but just in case you are doing it wrong, you want to scroll down to whichever function you are mapping, hit ENTER to say ‘map this’, then hit the button on the tankstick. The UI should then update to show the new mapping.

    I hope this helps.



    Boom, I am finally in business.

    I was not having any luck reconfiguring the button maps within the games, because I was not distinguishing, in my mind, the difference between stick configuration in ES, the ES start screen (when you first boot), and MAME configurations themselves. I finally got all the buttons working as intended. Coin credit is on the right side, Player 1 and 2 work correctly, and all buttons are working. I can back out of the games and into ES without issue. All that is left now is to update my ROMS.

    ROMS that worked on the original xbox do not uniformally work on the emulators in retropie (examples: DigDug, Defender, Galaga 88, Donkey Kong), but some do. This is easily remedied, though.

    Bottom line: everything is good to go. Thanks for your help!

    Anyone else looking for help in this issue, include me in the list of people to ask.





    Great to hear!

    There are entire romsets around based on mame037b5. I can’t tell you where to look (forum rules), but these work really well with the RetroPie’s mame4all emulator, as it is version 0.37b5.

    The emulators included with RetroPie are rather old. The thing is, newer emulators may be able to play more games but they tend to be a lot slower. This is because the developers are going for perfect emulation rather than fast emulation. If you want the widest selection of games, you need to look at a PC. But the Retropie can play several thousand, so you should still be spoiled for choice.



    Amazing job for both of you!!!! I have an Xarcade dual tankstick with trackball that I was having a hard time getting it to where I wanted. The trackball does not work and not sure if I wanted it to use it (unless I have centepide or marble madness) But so far I am happy. I do have one question: on Mame how did you get it to exit the emulator without using the ESC key on the keyboard? Again Thank you both for your help.



    egutierg, you wanna map the UI Exit (I think) in the mame configuration. When you are running a mame game, hit the tab key, then search for UI Exit. I mapped it to the joystick buttons, Start and Select. You can choose something different if you want.

    Let me know if you can’t find UI Exit; it may be called something else. I couldn’t find it initially.



    Got it, it was UI Cancel. It was the only command with the ESC key mapped. Thank you chrisinedmont for your fast reply. Now need to do some research on the trackball.



    If you figure out the trackball, let me know. I haven’t looked into it yet. 🙂

    If it is definitely caused by XArcade2Tankstick, it may be fixable with a code patch. I haven’t figured out if that’s the cause, though.



    I like you on this feed am new to RetroPie, I have the TankStick working fine with most of the Emulators, but I am struggling with NEO GEO. I am running it in piFBA, but it seems determined to want to use controller pads as core input/ not keyboard and I cant seem to figure out how to change that. I’ve tried mapping keyboard keys in fba2x.cfg and then programming the TankStick to recognize those keys, but still not luck. I been looking at using Xarcade2Jstick to map it as (2) control pads, but worry that will just mess up everything else. Thoughts? Suggestions?



    I haven’t tackled the neo geo, yet, so I will have to look at this later.

    I’ve been editing the 357 rom set so that the scrapers will acurately recognize the roms. With over a thousand games and clones, it takes forever.


Viewing 14 posts - 1 through 14 (of 14 total)

Forums are currently read only - please visit the new RetroPie forums at https://retropie.org.uk/forums/