[ISSUE] Ultimarc Trackball Connected to Ultimarc Ultimate I/O Not Registering/Producing Results
nreinhart last edited by nreinhart
Pi Model or other hardware: Pi4
RetroPie Version Used: 4.7
Built From: 4.7 Image from https://retropie.org.uk/2020/11/retropie-4-7-is-now-available/#:~:text=RetroPie 4.7 images are now,to remove the beta label.
USB Devices connected: 4x Ultimarc Ultrastik 360, 1x Ultimarc Ultimate I/O, Standard Keyboard, Pixelcade Digital Marquee
Controller used: See above
Error messages received: No aware of an error message, results are based off behavior.
Emulator: lr-mame 2003
Executive Summary: The Trackball will move in the Retroarch settings screen and produces output in "cat mouse2", but I cannot get the key bindings in Retroarch to connect to the game/I cannot get the trackball to produce results in a game.
I'm a first time poster and have been trying to do my best to find the solution in the forums, but am struggling to find the answer to my problem. I am rounding the bases on my first Arcade build and the Trackball is my last piece is install. The Trackball is currently being wired to the Ultimate I/O board (here is the wiring diagram https://www.ultimarc.com/trackballs-and-spinners/trackballs/u-trak/ ). After some back and forth with the board, I have the board and the trackball working. I know that it's working because:
- list item I have done the "cat mouse0" test and can verify that it is rolling.
- list item In retroarch (pressing tab) in the games I am trying (golden tee, centipede) I can see the cursor move, albeit it is inverted (also unclear how to fix that).
I have been looking at the below threads:
I'm trying to attach a picture of my settings, but the forum isn't letting me. I'll try again later.
Ultimately - I'd like to just get the trackball working in a game. Can anyone help? I have a 5 year old that desperately wants to try Marble Madness.
Thanks - having been following this forum for a bit - you all rock. Thank you for being a great community.
@nreinhart - went through and redid the pins on the Ultimate I/O and now have the trackball working in the retroarch menu. Still not working in the game itself. Part of me wonders if it’s because the device index isn’t registering the ultimate I/o as a keyboard? The only devices are the ultra stiks.
@nreinhart found this forum post which also seems relevant. Is it possible this broke again in the move to 4.7?
@nreinhart if it's working in the retroarch menu then you're close. You probably just need to select the correct mouse port for mame2003 to use it properly. Open the retroarch menu, from the main menu, choose: settings-> input-> port1 controls-> mouse index-> #.
I can't tell you what index yours is but typically between 0 and 2 works for most. So try them all until it works. You'll have to save this setting once you identify the correct value. So it loads next time around. I believe a youtuber covered this topic some time ago which you may find useful.
@mahoneyt944 - Thanks for the reply and I agree I feel like this is super close! Thanks for sharing the video too - I've run into this video over the course of my searching and have already tried the fix but it still doesn't work. My mouse value is 2 - verified by by using cat on the inputs.
I've set the mouse to 2 in the retroarch-core-config files manually and through the retroarch main menu and the port key bindings you pointed out. I have a new behavior in that in retroarch the value doesn't "save" between sessions, but I can | set it -> come back to the menu -> and it will still be set to 2 |. However the trackball still doesn't work.
It's pretty perplexing. I keep wondering if there's an errant config file somewhere. I just am not sure where it would be.
@nreinhart Somehow haven't seen this thread until now -
Looks like maybe I need advmame? Which apparently is not supported on retropie 4.7 on pi4?
stoney66 last edited by stoney66
@nreinhart I could be wrong but pretty sure advmame 3.9 is supported. It was at least in 4.6 just needed some changes for video and input (sdl).
advmame .94 and 1.4 were not supported in 4.6 which might still be true in 4.7
I never got mame2003 to work with my trackball so I went the advmame route long ago and it worked out of the gate.
@nreinhart do you have the mouse enabled? Load a rom in the core then retroarch quick menu -> options-> mouse device -> mouse
@mahoneyt944 - Yes - it is enabled.
@nreinhart hmmm, it truly sounds like an index issue. Saving your mouse index value so it loads on boot with the correct setting is important. Switching it after launch may or may not work.
here's how I set mine to load properly over network. Test with all values though.
configs-> arcade-> retroarch.cfg
# Settings made here will only override settings in the global retroarch.cfg if placed above the #include line input_remapping_directory = "/opt/retropie/configs/arcade/" input_player1_mouse_index = "2" input_player2_mouse_index = "2" #include "/opt/retropie/configs/all/retroarch.cfg"
stoney66 last edited by
I think these were the lines that needed to be edited from advmame.rc file
device_keyboard sdl (default raw)
device_mouse sdl (default auto)
device_video sdl (default fb)
@mahoneyt944 Thanks for the detailed write up. Went through and did what you suggested. In Retroarch the values now show the right value, but the trackball is still not working in the game.
@stoney66 so it looks like the installation for advmame 3.9 did the trick. My Centipede wont load in it, but Golden Tee does swing the club now. Thank you so much for suggesting this. I'm going to do some more testing tonight and follow up with an all clear or additional questions. I guess that mame2003 just is missing connective tissue to the trackball to make it work?
Where are you updating the advmame.rc file?
@nreinhart mame2003 does work with trackball which makes this topic puzzling.... Have you tried "mame2003-plus" to see if the trackball works there for you? Mame2003-plus is similar to mame2003 but has loads of improvements to inputs, games, and more.
In the mean time I'll dig into the mame2003 input code to see if I see anything. Hopefully we can resolve this even if you decide to use another emulator.
What's odd is if the trackball works in retroarch then it's just not communicating with the emulator. Have you tried higher indexes than 2? I'm not entirely sure how the multiplayer io board is selecting player indexes for each device. For example it might set:
player 1 as index 0
player 2 as index 1
player 3 as index 2
player 4 as index 3
But the trackball could be its own index
Trackball 1 as mouse index 4
It's a guessing game without having that particular board to test with.
@mahoneyt944 Sorry for the delay - my wife made we walk away from the cab last night because of the "red in my eyes" lol. I installed mame2003 plus this morning and all of the retroarch configurations are there, but still the trackball is not working. tried indices up to 8 and still the trackball wasn't showing up in either mame2003 or mame2003 plus. Verified that advmame 3.9 is still working. Let me know what else you need me to try!
Also wanted to say thank you so much for digging into this issue - I really appreciate it.
@nreinhart looking through some of the documents for the IO board, what configuration are you using? It specifies
Example configurations include: 2 player with trackball/spinner. 4 player without trackball/spinner.claiming that the trackball will not work in 4 player mode.
@mahoneyt944 that was actually my first hurdle I ran into - the trackball wouldn't register AT ALL. Spoke with the manufacturer and we switched it from four player mode to two player mode with spinner/trackball support. That's when it started showing up in Retroarch.
@nreinhart well - Golden Tee 2 is the only one I've gotten the trackball working with. I'm going to keep puttering around with it, but it's feeling a little hopeless lol. I'll keep this thread alive for a little bit longer. Thanks again for everyone's input.