Main > Raspberry Pi & Dev Board

Getting Ultimarc Ultrastik 360 Joysticks to work on RetroPie 4.5.1

(1/2) > >>

cg_tophat:
First time poster and first time cab builder, so apologies if I'm asking a stupid new question. I've done a bunch of pre-research (that I'm linking below) before posting here. I'm also going to try to give more details so if some other poor fool with the same problem comes looking hopefully this thread is a collection of research/answers. I'm running:

RPI3B+
Official RetroPie 4.5.1 image
Ultimarc IPAC Ultimate I/O Board
4x Ultimarc Ultrastik 360
Current layout is 4 player, 6 buttons playable, 1 start, 1 coin (total 8 x 4, all ultimarc RGB goldleaf)

I bought the above under the impression that the Ultimarc inputs all worked fine in Linux (which they technically do - and they are so far great products), but I'm hitting the problem a lot of people in this, and other subs, seem to hit which is that EmulationStation requires that the input device (the joystick) have a button to be detected. I've considered just rigging a button to the Joystick, but then I would lose the nerd cred of having it light up through the Ultimate I/O board which my vanity will not allow me to forgo at this point.

In tackling the issue I needed to establish a few things: 1) Does the Joystick work? 2) Does the RPI3B+ detect the Joystick at all? 3) Can I remap EmulationStation key mappings outside EmulationStation and then log back in with the working setup? 4) Am I thinking about the problem incorrectly? 5) Should I just pursue a windows box?

1) Does the Joystick work?
Yes. I plugged it in to a windows machine which detected it happily.

2) Does the RPI3B+ detect the Joystick at all?
Yes (short answer).
I found this post from the group:

https://www.reddit.com/r/RetroPie/comments/7g4g9o/ultrastik_360_config_for_emulation_station/?utm_source=amp&utm_medium=&utm_content=post_body
This link notes the same set of issues and asks if the Joystick is detect. jstest will detect joysticks. Tested via jstest. Shows up with the name "Ultimarc Ultra Stik Ultimarc Ultra-Stik Player 1".

Embedded in the comments is a note about potentially being able to alter the es_config file to point to the JoystickAlso - followed the link in the post to find the GUID and installed jstest-sld (which allows you to get the GUID for the joystick):

https://retropie.org.uk/forum/topic/14661/beboncool-controller-bluetooth-issues/5

I got my GUID and the name.



3) Can I remap EmulationStation key mappings outside EmulationStation and then log back in with the working setup?

So in the same reddit thread above the following note is made:

columboscoat3 points·2 years ago·edited 2 years ago
Yeah easy enough to do. The only thing you will struggle to get is the GUIDfor the joystick. Install this little script that u/mitu has linked and it will give you all the info you need. https://retropie.org.uk/forum/topic/14661/beboncool-controller-bluetooth-issues/5
So your entry will look something like this.<inputConfig type="joystick" deviceName="NAME EXACTLY AS IT APPEARS" deviceGUID="YOUR DEVICE GUID"><input name="up" type="hat" id="0" value="1"/><input name="down" type="hat" id="0" value="4"/><input name="left" type="hat" id="0" value="8"/><input name="right" type="hat" id="0" value="2"/></inputConfig>

So, this is the real crux of my issue - can I have multiple inputConfigs in the es_input.cfg?
Something like (pseudocode since I'm kind of making this up as I go):
<inputConfig type="keyboard" deviceName="keyboard" deviceGUID="-1">
<input name="button1" type="key" id="0" value="0"/>
<input name="button2" type="key" id="0" value="0"/>
<input name="button3" type="key" id="0" value="0"/>
<input name="button4" type="key" id="0" value="0"/>
<inputConfig type="joystick" deviceName="NAME EXACTLY AS IT APPEARS" deviceGUID="YOUR DEVICE GUID">
<input name="up" type="hat" id="0" value="1"/>
<input name="down" type="hat" id="0" value="4"/>
<input name="left" type="hat" id="0" value="8"/>
<input name="right" type="hat" id="0" value="2"/>
</inputConfig>

And if I do have multiple inputConfigs can I - load up RetroPie, bind to a normal keyboard, then go to the command line and hand edit the cfg to recognize the Joystick and the Ultimarc (as I'm writing this I just realized that I don't know anything about the Ultimarc's GUID or input information)? Does that work?

4) Am I thinking about the problem incorrectly?
More of a philosophical question, but am I overthinking this?

5) Should I just pursue a Windows box?
Sigh.

Thank you everyone that takes a look at this thread. I've really tried to do my diligence on it and have spent the last two days digging through old forum posts from the past 4 years. This is the best line that I currently have on it. Any advice would be very well appreciated. Thank you in advance!!!

J_K_M_A_N:
It has been a while since I messed with mine but if I am remembering correctly, I set up a "joystick" using the keyboard on first start up. I like to always be able to control emulationstation with the keyboard if needed. Then I think you can hook one button up to the U360 and get it set up (mostly just the directions). Then add another joystick using the IPAC and just set up the buttons without any directions set up. Then you should be able to use the U360 to navigate and the buttons to select a game or go back or whatever.

Again, it has been a while but I *think* that would work as I am pretty sure you can have multiple controllers control emulationstation.

J_K_M_A_N

cg_tophat:
Part of me is wondering if I just need to set the Ultrastik to Output mode, with the USB in?

cg_tophat:

--- Quote from: J_K_M_A_N on April 21, 2020, 05:28:11 pm ---It has been a while since I messed with mine but if I am remembering correctly, I set up a "joystick" using the keyboard on first start up. I like to always be able to control emulationstation with the keyboard if needed. Then I think you can hook one button up to the U360 and get it set up (mostly just the directions). Then add another joystick using the IPAC and just set up the buttons without any directions set up. Then you should be able to use the U360 to navigate and the buttons to select a game or go back or whatever.

Again, it has been a while but I *think* that would work as I am pretty sure you can have multiple controllers control emulationstation.

J_K_M_A_N

--- End quote ---

I've got the RGB buttons. Does that not mess up the LED controls on the IPAC Ultimate (sorry for my lack of knowledge here)

J_K_M_A_N:
Sorry. I forgot, I used the USB connection in Input mode so it is its own joystick. I forget that it can connect to an ipac in output mode. :( USB was easier for me. I also used the buttons in input mode since mine was just a bartop with not a lot of buttons needed. I also don't have RGB buttons so I am not sure how it might affect those.

J_K_M_A_N

Navigation

[0] Message Index

[#] Next page

Go to full version