RJ45 to DB15 Controller Adapter for SuperGuns/NEO-GEO

The place for all discussion on gaming hardware
Post Reply
User avatar
Arthrimus
Posts: 106
Joined: Mon Apr 02, 2018 5:49 pm
Location: Arkansas

RJ45 to DB15 Controller Adapter for SuperGuns/NEO-GEO

Post by Arthrimus »

I've been sporadically working on a method of connecting my MC Cthulhu arcade stick to my JAMMA PCBs for almost 2 years now, as detailed here and here. Over the past week I've really buckled down and made some serious progress that I'd like to talk about today. Since the MC Cthulhu works as a Sega Saturn controller, originally this project started as a Saturn to JAMMA adapter that I had hoped to integrate into my own SuperGun design. I quickly realized I was out of my depth there since up to that point I had not even designed my first PCB, so late last year I scaled the project back to a Saturn to DB15 adapter board that used an ATMEGA328P along with an arduino sketch that I wrote to demux the Saturn pad signals into discrete outputs. Below is a picture of the first prototype of my Saturn to DB15 adapter, complete with cut traces and bodge wires as might be expected with my first ever PCB design.

Image

Mistakes were made, but I learned a lot about PCB design with this and the subsequent projects that I have worked on (like don't bother trying to use the autorouter), and I have since produced a much more refined PCB for this project. One of the frustrations that I have run into with this project is the lack of a decent quality Saturn socket. The only current production socket I know of comes from those cheap Saturn controller extension cables you find on Aliexpress, and they do not fit tightly and do not make reliable contact with the controller plug. I really didn't have a solution for the problem until a couple of days ago it occurred to me that my main reason for doing this project in the first place was to connect my MC Cthulhu to my JAMMA PCBs, not necessarily to connect Saturn pads (although I did like having the option), so I decided to directly wire an ethernet cable to my converter PCB skipping the Saturn plug all together and thus creating what is effectively an RJ45 to DB15 cable.

Image

This works wonderfully, but after using it for a little while a new frustration crept in. The fact that the Saturn controller doesn't have a select button means that there isn't an easy way to map a coin button to my arcade stick. Since I ditched the Saturn plug I decided that there was really no reason to keep using the Saturn controller protocol for communicating with the MC Cthulhu, so I started working on alternatives. First I tried to work on SNES code since it has 6 available buttons as well as Start and Select. I got a sketch working pretty well, but there are some bugs with certain button combinations causing the board to freak out and press all buttons simultaniously. I have not yet been able to figure that problem out, so I then tried an existing arduino library for capturing PSX controller inputs, which appears to be completely bug free as far as I have been able to test.

So here is the current status of the mod:
*PSX mode firmware is the most feature complete version and can be downloaded from my Github
*Lag appears to be under 1 frame compared to a directly wired button based on high speed camera captures that I did.
*PCB V0.8 is very refined, and fits comfortably inside Norcomp's 956-015-010R031 Backshell. PCB is on OSHPark
*BOM is also on OSHPark.
*You can use this as an RJ45 to DB15 adapter, or you could use it to adapt actual Saturn, SNES or Playstation controllers to DB15 by soldering the appropriate plug to the adapter.
*Everything is open source so feel free to build your own/play with my code. I may offer assembled cables in the future, but my projects are always free for anyone to use.

Future plans for the mod
*Switchable button maps for NEO-GEO or normal 6 button operation.
*On the fly user configurable buttons (this feature is probably not happening any time soon.)
*Possible support for other controller types. Genesis maybe?
*If Retro Bit ever releases officially licensed Saturn controller extensions maybe they will create a source for high quality Saturn controller sockets, in which case the original concept of a Saturn pad adapter can be realized.

I have tested this with the MC Cthulhu and got great results, however I don't have a Brook Retro board or a PS360+, If you have one of these boards and would like to volunteer to do some testing, PM me and I can see about sending a prototype your way.
plus ça change,
plus c'est la même chose,
The more that things change,
The more they stay the same.- RUSH- Circumstances

I install and sell mods at arthrimus.com | SNES RGB Bypass+Dejitter available now! | Watch me live stream my work on YouTube
LaurenGC
Posts: 2
Joined: Sun Feb 09, 2020 4:28 am

Re: RJ45 to DB15 Controller Adapter for SuperGuns/NEO-GEO

Post by LaurenGC »

Hey I am interested in this. So basically I am looking for connect the Virtua Stick from the Saturn to my NEO-GEO AES. I know about coding, maybe I can help with it :D
Post Reply