Problem Mapping Gamepad
-
I’m new and trying to get together a raspberry pi that I can emulate old retro games on for my dad, I want to place it in the Atari2600 Lego set I got him last Christmas and make it work this time. I got the pi working and retro pie with just a keyboard, but now that I have an actual “Atari like” controller, it won’t recognize it.
This is the controller I have: Hyperkin "Trooper" Premium... https://www.amazon.com/dp/B07M5HYTZL?ref=ppx_pop_mob_ap_share
and
this is the adapter I have for it to connect into the usb port: SABRENT USB 2.0 to Serial (9 Pin)... https://www.amazon.com/dp/B07RFNHTL9?ref=ppx_pop_mob_ap_share
Hopefully this is just an easy fix and I had a brain fart. I don’t see what is wrong here.- Pi Model: 4b
- Power Supply used: USB C Charger Block 20W, output current of 3A and output voltage of 10V
- RetroPie Version Used: 4.8
- Built From: used “retropie-buster-4.8-rpi4_400.img.gz”
- USB Devices connected: The trooper controller with the adapter as mentioned earlier
- Controller used: Was able to map my keyboard, but reset it to try to get the trooper connected
- Error messages received: no messages just not acknowledging
-
I don't think this would work OOB - there's no universal Serial HID interface, so the system wouldn't know how to work with it without knowing the 'protocol' that an Atari 2600 joystick speaks.
You may need something like the 2600 daptor - https://www.2600-daptor.com/ instead of a generic USB to DB9 converter. -
As mitu stated it won't work with these parts.
The Sabrent expects RS-232 protocol [1] or similar to be transmitted over the wire and the DB9 connector, whereas the Atari compatible joystick [2] is in essence a set of momentary switches without any protocol.
But all is not lost :)
You could wire the Joystick directly to the GPIO header of the Pi [3] with some DuPont wires and a male DB9 breakout board (for example [4]).
Then you could use the db9 kernel module (db9_gpio_rpi) [5] (more extensive how-to at [6]) or the more state-of-the-art ArcadeDT [7] to receive the signals in the OS.
If you have trouble with the ArcadeDT setup let me know, as I am the creator of project.
Happy tinkering.
[1] https://en.wikipedia.org/wiki/RS-232
[2] https://en.wikipedia.org/wiki/Atari_joystick_port
[3] https://pinout.xyz/
[4] https://tinkersphere.com/cables-wires/1115-male-db9-rs232-serial-breakout.html
[5] https://retropie.org.uk/docs/GPIO-Modules/#db9_gpio_rpi
[6] https://magpi.raspberrypi.com/articles/use-a-retro-db9-joystick-with-raspberry-pi-400
[7] https://github.com/Gemba/arcade-dt -
@mitu thank you for the help, I’ll look into this.
-
@Lolonois thank you a bunch for all the references and help, I plan to look into this, but I fear I’ll be in over my head. But I look forward to trying, I’ll let you know!
-
@mitu @Lolonois Would a 9 pin to USB Dual Atari Joystick and Paddle Adapter not work? Something like this one I found? https://www.amazon.com/dp/B08QGZ45GY
With it being so close to christmas I just want to get it working before the 25th especially since either method I would have to order something, I feel better just ordering something on Amazon Prime that can work OOB.
Let me know if this is a good option. If not I may just use an old Xbox 360 controller or something and map that.
-
@trippster56 said in Problem Mapping Gamepad:
Something like this one I found? https://www.amazon.com/dp/B08QGZ45GY
Yes, that seems ok. Do note that due to the limited numbers of buttons, you may have issues with other
controllersemulators. EmulationStation needs at least 2 buttons I think (A/B start a game/exit system) and a D-Pad/Joystick (to navigate). -
@mitu awesome thank you for your responses.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.