2010-08-11

Drop-in replacement PCB

for Nintendo Controller (model 004)

A dear friend of mine has passed away.
We'd often made potentially career ending bets that I'd do some incredible thing (instead of the conservative assigned duty) and my friend would keep admin off of me long enough for me to pull it off.
I've felt fustrated not being able to celebrate completion of the last bet, esp. with ideas for the next.

But this has given me food for thought whilst I wait for parts to arrive for my other projects. I've made many similar (though less damning) bets with other friends, and I'd hate to see them gone before I've finished.


This PCB is for one of my friends who is a NES freak.

This (surviving) friend has [reportedly 1 dozen of the] 'original' controllers that are so badly worn that even the repeated application of a chemtronics.comrubber key repair kit does no good since it the PCB and/or the plastic caps that have completely worn away.

For a laptop I bet that I would produce a replacement controller from a broken NES controller. This controller would either precisely match the original and use the same case, or it would be clever and be far more ergonomically correct.

I got the laptop within a week but my friend has never sent me a broken controller. I have never had a NES myself. And years later, I've now decided to search the internet and see if I can find the information I need to make a replacement PCB for the NES controler.


Search results:
NES ControllerI first tried working from the photo on slagcoin.com but was disappointed by the insufficient 0.05" resolution I'd achieved in the result. I believe that I miscalculated the trapezoidal transformation.

Rather than repeat the process I searched again using a number of premutations and eventually found an x-ray on flickr.com that was perfect; No distortion, square and true. All I had to do was measure and scale.

The result:
  • A drop in replacement PCB that is within 0.025" of the original model-004 (rev.11) NES controller PCB using the original components.
  • Tact (10xx) switches have been drawn to allow replacement in controllers where the button/key caps have worn out.
  • Combs instead of panels to improve the useful life of the membrane switch, and minimize alignment issues.
  • The header has been changed from rev.11's {GND,CLK} to rev.5's {GND,VCC}.
  • 'Umbrellas' have been drawn under the resistors to prevent the ground mask from raining on the use of printed resistors.

Since I have no 4021 I am unable to build this circuit today (without ordering parts). The CMOS 40xx series of IC has been displaced by the TTL 74xx series. If I needed to I would need to make an extra a 74xx design based on what parts I have on hand. This extra design would also make sense if my friend has lost the original PCB or wants to make a spare.

A 74xx redesign:
  • The original printed M5923 resistors have been replaced with common throughhole 207's. These are grouped where the original 4021 was for stylistic reasons.
  • The original 4021 has been replaced with a surface-mount 74HC165 (since that is what I have on hand).
  • A transistor replaces the header and inverts P/S to output SH/LD because the 74165 loads on high unlike the 4012 that loads on low. (see nxp.com datasheets HEF4021B.pdf, 74HCt165)
  • All resistors can be 10k (though not optimum for the transistor inverter/NOT gate).

Modifications not implemented:
  • 40xx instead of 10xx switch because the larger 40xx would break compatibility with the original layout unless I were to intersect the pads, which would then make assembly very difficult.
  • Use of a resistor array instead of discrete components because I'd be inclined to use a single surface mount IC, and evidently a pitch of 0.012" is too small for most people to assemble by hand.
  • LEDs that are activated by button presses because I do not have a NES to test if this works.
  • Turbo/pulser because adding a single IC programmible division counter or frequency generator w/ selector switches would require my (not an electronics hobyist) friend to handle too many pieces, and would require modification of the original case.


1 comment:

luftek said...

Hi there, good work! Could I get a pcb design file (is it in eagle?). thank you, Ziga

Post a Comment