Worklog 10+ Console Controller Wired Transceiver PCB Design

bob9595

.
.
Joined
Feb 9, 2026
Messages
12
Likes
13
Hello All,

I’m currently in the planning phase of my first PCB design and wanted to log it here and hopefully receive some feedback along the way :).

The Problem:

I currently have the following consoles that use wired controllers that I have hooked up and in use:

  • Twin Famicom
  • PC-Engine
  • Sega Mega Drive
  • Super Famicom
  • Neo Geo CD
  • PC-FX
  • Sega Saturn
  • PSX
  • N64
  • Dreamcast
  • PS2
  • Gamecube
  • Original Xbox


My current setup for controllers is hand making long extension cables, and running them in some conduit under the floor, and having them pop up in a table. This works fine, but:

  • Creating cables is extremely time consuming (splicing wires sucks)
  • It is extremely messy looking (see picture below)
  • My two 1” diameter conduits are now at full capacity, and my newest edition to the collection (PC-FX) cannot have wires run because of this.

IMG_20260209_220238650_HDR.webp



The solution I have come up with is two transceiver PCBs that can toggle relays on and off to connect the desired controller(s) to a “trunk line” of wires, which then connect to the game console. This is in contrast to the current method of running one cable per controller. Below is a simplified example of what I am trying to accomplish (I have excluded the microcontroller that will determine which relays need flipped, the second PCB connected to the game consoles, and the other 5 pins needed for Fami/Super Fami controllers for brevity):



Example.webp



On the game console end, there will be the same PCB that will flip the appropriate relays on to allow a connection from controller <-> PCB <-> PCB <-> console. Again, the microcontroller determining which console is on and how that signal propagates to these PCBs is omitted. For the “trunk line” wiring, I’m going to be using CAT 6 shielded ethernet cable. I’ve ran some tests at the lengths I need (~20 feet) with various controllers and it seems to work.



In this example, the final product would look like this on the controller side (assuming I only had the Fami and Super Fami, the real thing will have more ports):


スクリーンショット 2026-02-09 230248.webp





I currently have the following female connector footprints in Ki-Cad I’ve found googling around:

  • Twin Famicom
  • PC-Engine
  • Sega Mega Drive
  • Super Famicom
  • Neo Geo CD
  • PSX
  • PS2
And I’m missing:
  • PC-FX
  • Sega Saturn
  • N64
  • Dreamcast
  • PS2
  • Gamecube
  • Original Xbox


I’m also hoping to make a proper case for this thing to 3d print a case for it, but that’s in the far future.

I’ll post updates as I go along, currently just trying to wrap my head around KiCad and get the current controller port footprints I’ve found all lined up. After that I'll bust out the protractors and figure out how to make foot prints for the ports I'm missing.
 
I've got 1 controller port (famicom) added as well as the relays + trunk output port (just going to use a DB-15 connector). I haven't added the controller yet, but I'm using an ESP-32 board for this project (will add the footprint later). The relays I'm using are these: https://www.digikey.com/en/products/detail/omron-electronics-inc-emc-div/G6L-1P-DC3/413440

I'd like some feedback on what could be improved, whats wrong, whats good etc. I'm only ~5 hours into KiCad and PCB design so sorry in advance. Thanks!

GameControllerPCB_Fami_Port.webp
 
Another update post! Routing so many traces is way harder than I imagined, but it gets kind of addicting when you get going. I've got four ports done (Fami, PC-Engine, MegaDrive, Super Fami). Starting on the big one (Neo Geo) now. Looks like I'm going to have to shrink the boards height and increase its width. Also need to line up the ports at the edge of the PCB for proper overhang.

Only 13 more ports to go! Going to stack 2 of these boards on top of each other to get the full 2 or 4 controller count.
1771124932066.webp


1771125021780.webp
 
The project is still ongoing! I decided to ditch everything I had up to this point because I wasn't happy with how I had to route some of the traces, components I picked weren't the best, and most importantly I didn't properly measure out the relation between pin location, end of the PCB, and the end of the connector. That last bit I believe will be key when I go to design a case for this thing. All in all a bunch of things needed reworked, but I gained a lot of knowledge on how KiCad works so it wasn't a waste of time.

On the controller port front, I managed to find two 3d printable files for the PC-FX controller (both male and female!), so I sent those off to JLPCB to get printed. They should hopefully arrive in another week or two. The last two controller ports I absolutely couldn't find were the original xbox and dreamcast ports. I broke down and bought some parts machines off ebay to harvest the controller ports off of. Which is kind of a bummer because I wanted this board to be buildable with off the shelf parts, so maybe I can circle back at some point and look at the feasability of modeling the ports and uploading those.

I'll link below the PC-FX controller files incase anybody wants to use them:

https://www.thingiverse.com/thing:3004420 Male Plug
https://www.thingiverse.com/thing:6158717 Female Plug
 
Another minor update!

My PC-FX controller print should be here in a couple days, and I've got up to the PS1 foot prints aligned and ready to go. Whats left foot print wise are:

N64
Dreamcast
PS2 (this is the same as the PS1, so not much work to be done there)
Gamecube
Xbox

I'm a bit worried about the length of the board, I have it currently maxed out at 500mm, but since I'm having to use stock dreamcast and xbox ports, they are in a longer package than I anticipated. May have to just use the dremel and cut them down to size. Once I get more progress done (or when I get more than 10 posts so I don't get banned again :P) I'll update with a picture of the current PCB.
 
I am very interested in seeing this work
 
Short update, got the dreamcast footprint done! Took about 3 hours but I think its good? Will have to check again in the morning.

With the lengths of the "pre-built" dreamcast and xbox controller ports, I'm definitely going over 500mm in board length. Hopefully that doesn't cause too many issues when I go to produce this thing.
 
Another update!

My 3D printed PC-FX connectors I ordered have arrived and they look great!

I have the gamecube ports and xbox ports left, and was waffling back and forth on whether to harvest the 4 port GC controller connector from a wii (since it has a normal pinout vs the gamecube that has its pins coming out horizontally) but decided I'll just make a breakout board to minimize the parts needed to be harvested.

After deciding that, I've got the gamecube footprint done and now all that is left is the xbox!

It looks like the PCB is going to be ~670 mm long, which is bigger than what I was hoping for but it looks like it can still be manufactured so I guess I'll keep it like that. Hopefully early next week I can print out my PCB design and verify all the footprints I've made/found all line up! After that its back to trace routing and then designing a case for this puppy!
 
Got the xbox footprint done and added! I've printed out (part) of the PCB onto some paper to confirm the connectors will line up properly with the end of the board/pins will line up with the through holes. So far the Dreamcast and PS1 ports look good!

I also got the pins into the pc-fx connector and confirmed they mate properly. Looking for suggestions if I should do anything with an epoxy or glue to hold the pins in with more than friction. The connectors were printed in resin.

If all goes well hopefully I can start routing the traces this week!
 
Small update!

The xbox and PC-FX pins are not lined up properly, but everything else checks out! Going to adjust those this week and get routing! And this will be my 10th post so I can share pictures freely :p
 
Routed the Fami and PC-Engine traces tonight! Compared to my last build, the traces are feeling super spaghetti, so tomorrow I'm planning on cleaning them up. I still need to re-print out the pcb for verifying if my fixes to the xbox and PC-FX alignment issue is resolved, but wanted to take a break from lining those up :p.
 
Man, if this works..............
 
More updates!

After talking int the discord I'll be trying out this chip to connect the ports to the trunk line (instead of using relays, the relays were making the board too wide):


I've also decided to power the controllers themselves off this boards vcc instead of getting the power from the console itself. We're still a ways of from this being done, but every iteration feels more solid than the last!
 
Back
Top