NES/SNES Controller/Audio Pmod

Thanks to @lawrie we now have NES running on the iCEBreaker. I think it would be really good to have a single Pmod that allows us to easily plug in NES Controllers and get Audio out of the iCEBreaker.

Main requirements:

  • 2 x NES controller connections
  • 1 Audio jack for audio out

Optional requirements:

  • Also compatible with SNES controllers
  • Additional inputs to select ROMs

What else would you like to see on here. Do you have a napkin schematic already of how you would wire this up?

Cheers,
Piotr

1 Like

It would be cool if this supported SNES controllers as well since they are basically the same protocol (SNES just has a larger shift register). I was wondering if something like the attached sketch would be feasible for a dual-purpose footprint. Unfortunately the pin spacing is very slightly different[1] for the 4 pins that are shared on the footprint - 4mm on SNES vs 0.16" = 4.064mm for NES. But it is such a small amount I wonder if a bit of extra tolerance on the hole sizes would be enough to make it work. The other complication is that right-angle connectors might save board space and be more practical but the hole spacing on a NES connector with 2 rows is less likely to be standard. Also, the two pins marked NC are actually used by some accessories[2], but with audio plus two controllers we would only have three spare pins so perhaps we could just connect the extra pins on the P1 port.

edit: corrected the comments about how many pins we have spare

[1] based on these drawings:
https://www.raphnet-tech.com/products/nes_controller_connector/index.php
https://www.raphnet-tech.com/products/snes_controller_connector/index.php
[2] https://www.beardypig.com/2015/12/11/nes-zapper-experiments-1/

I’m curious if there was any progress on this? A single NES or Super NES PMOD with audio out would be a perfect fit for my project.

I have the early stages of a custom 16bit ish game console up and running. 4 scrolling layers minus the sprites which are coming soon. Testing it with the actual Nintendo controllers would be really cool, more fun the controlling it over the UART :slightly_smiling_face:

I was just thinking about this yesterday! :smiley:

I think I will work on that Pmod as part of my KiCad Let’s play stream series. So yes there will be some progress very soon.

I hope I will get to this after I am done with the iCEBreaker-bitsy V0.3a work.

Cheers,
Piotr

1 Like

To keep folks up to date. I am through the first round of prototypes for the gamepad & audio Pmod.

The whole process was documented during twitch streams. You can find the archives here:

And finally the working system with @lawrie NES core: https://www.twitch.tv/videos/619520374

The design files of the current prototype version are on the icebreaker-pmod github page.

Regarding future changes. You might have seen during the streams, I was concerned that we might need to add an amplifier to the audio circuit. So far the circuit we have seems to work fine with 33Ohm headphones, speaker amplifiers and audio capture devices. So I don’t think we need to do that.

There are still two things I would like to work on:

  • Add the data line pulldown footprints. (I have soldered them between the connector pins on the prototypes) They will provide a defined 0 state if a gamepad is not plugged in.
  • Find ways to shrink the board size and make automatic assembly easier.
  • Create a gamepad Pod for the NES controller connectors.

If you are interested in a set of boards from the next prototype run let me know in this thread. Make sure to list which boards you want and how many, so I can order the correct amount of parts and boards in the next round:

  • Gamepad & Audio Pmod
  • Molex SL Connector Pod
  • NES Connector Pod
  • SNES Connector Pod

As always thanks to all of you for your input and help! :smiley:

Cheers,
Piotr

I am interested in the Pmod and the NES and SNES connector pods. Probably two of each.

What is the Molex SL Connector Pod used for?

I’d be interested in one of each of the Gamepad & Audio Pmod and SNES connector pods.