Introduction: NES in a Cartridge

Picture of NES in a Cartridge

If you liked this instructable, consider checking out my new website

     Have your ever seen any of "Ben Hecks" portable console builds? Well if you haven't, he often uses these Chinese Famicom clone consoles. These cloned consoles are often times refered to as NOAC's, meaning NES On A Chip. They are called this because they are a fully functional Nintendo Entertainment System literally on one chip. The best part about the NOAC is that they include a 60 pin famicom game port, which in our case can easily be converted over to a 72 pin NES game port.
     I originally got this idea from Kotomi (link below), and figured i would try to do the same thing. My plan was to use the original NES controllers, instead of the cheap super joy ones, which is what i believe Kotomi used. Kotomi's system also incorporated the original Famicom connector instead of the NES connector. In order to use the NES controllers, I would have to convert the NES controller's shift register data into the NOAC's controller chips. So... what better way to do it than with an Arduino!!!!

Step 1: Materials

Picture of Materials

One of the toughest things to find is the Chinese Power player unit (or Super joy thingy), which ever system you find, they all should work about the same. I was lucky enough to find mine at good will for 6 bucks... can't beat that. Any ways, if you can't find one locally then check on ebay. The only problem is that if you buy one off ebay then it will run you around 20 bucks. All the rest of the stuff you can get either from Radioshack, or once again on ebay. In my case I bought the 72 pin connector and the ports separate, however you would probably be better off just buying a broken NES. My only problem was that I was kinda pressed for time, and couldn't find one FOR CHEAP!!!!

1. Power Player Unit (or similar)
2. NES 72 pin connector
3. 2 NES controller ports
4. An NES game that will serve as the case
5. An atmega168 (arduino chip)
6. Texas Instrument TLC5940 (you can get these as samples from their site... their free)
7. Some basic parts such as switches, leds, along with a 7805 voltage regulator
8. PCB making stuff (I used the toner transfer method)
9. Basic knowledge of soldering and electronics
10. And most definitely a dremel tool with some bits and cut off discs
11. A multimeter is probably a good idea as well, because you will need it for troubleshooting

Step 2: Disassembly

Picture of Disassembly

     After you've played around a little with your Power Player, and got a kick out of some of the things they've put on it..... sadly it is time to take it apart. Hopefully it won't be too long until you will being playing games on it once again though.
     So once its all apart, start off by locating where the power inputs are. Something that I like to do is to take a picture of the board (or scan), and put it into photoshop and color in the traces according to their use. It's a helpful tip that I like doing, because sometimes when your cutting up a board, you will forget what things went where and things just get crazy.
     Once you've found the power connections, I would test to see what voltage the unit runs one. Most commonly it's going to be 5 volts, but just check to make sure. In my case the wall adapter was ouputing 13 volts, but there was a 5 volt regulating circuit on the controller PCB.
     The next thing you want to check on, is there or not the player buttons have a common connection. Most of the time they will use ground as the common, but I've seen others. In my case it was ground, which works out perfectly because the TLC5940 outputs only grounded signals to achieve PWM.

Step 3: Testing the Button Simulator

This step isn't necessary, but it would definetly be a good idea to do it. So first I would download the attached zip file. It contains the Arduino sketch, as well as all the TLC5940 driver files.

Connect the TLC5940 as follows. I got this from the basic use sketch that comes with the library.
Arduino             TLC5940
13                      25
11                      26
10                      23
9                        24
3                        18
+5v                    19 & 21
GND                 22 & 27
GND   -WW-    20 (2K resistor goes from pin 20 to ground)

NES Port:
For this part, I just cut the wires on my stock NES controller port and wired them up according to this diagram.
| 1     \
| 2   5 |
| 3   6 |
| 4   7 |
1 = GND
2 = CLK
3 = Latch
4 = Data_Out
5 = +5VDC
6 = N/A
7 = N/A

Power Player:
Now solder some leads on to the button pads of your controller, make sure it's the NON common side of the pads.
Next, you can connect the leads up accordingly.
NES button                 TLC5940
Player One:
A                                  OUTPUT 0
B                                  OUTPUT 1
Select                         OUTPUT 2
Start                            OUTPUT 3
UP                               OUTPUT 4
DOWN                        OUTPUT 5
LEFT                           OUTPUT 6
RIGHT                         OUTPUT 7
Player Two:
A                                  OUTPUT 8
B                                  OUTPUT 9
Select                         OUTPUT 10
Start                            OUTPUT 11
UP                               OUTPUT 12
DOWN                        OUTPUT 13
LEFT                           OUTPUT 14
RIGHT                        OUTPUT 15

Finally, connect the system up to the TV, making sure that the arduino and the Power Player share the same power supply or their grounds are connected. Go ahead and test it out. If everything works good, then great! If not, then try to trouble shoot the problem.

Troubleshooting Tips:
1.     Test each output with an LED, connecting the long leg to +voltage, and the short leg to the TLC5940 output pins. If they don't work, then check the wiring of the TLC5940
2.     If all the LED's turn on when you press a button, then check the wiring on the controller port. This will occur when there are some wires switched around.
3.     Also make sure that your Power Player, or Super Joy, or other thing works off of common ground system. Meaning that when the buttons are pressed on the system, they short out to ground.

Step 4: Making the Controller Board

Picture of Making the Controller Board

     For this step, I'm not going to go through all the steps on how to make a PCB, but there are plenty of tutorials out there. So download my design, which was made using diptrace. You can download a freeware version of diptrace from their site. It's a very good PCB design program. Once the board is made, solder all the parts on.
Download the freeware version:
16MHz crystall
2k Ohm resistor
28 pin ic socket

      Once it's all put together, it is time to cut up the Power Player boards. Start by locating the glob top where all the button inputs go into. Then take your dremel tool with a cut off disc, and cut it right out of the board. In my case, I think I made the board a bit small, so I ended up making the player 2 board a bit larger. The problem with making it so small is that when you attach wires, they tend to rip the traces right off the board. This happened to me about 3 or 4 times with player 1, it came to the point where i actually had to chizel a little bit of the black glob away, just to get more copper to solder onto.
     Now that the glob top is seperated from the PCB, it is now time to  scrape the solder mask off of the necassary copper traces. Use your diagram that you made, or however you chose to remember the pinouts to solder the correct wires to the PCB. Use the diagram ive uploaded to connect the wires. Repeat this same process for player 2.

Step 5: Making the Game Port Connector

Picture of Making the Game Port Connector

1.     Start off by taking a dremel with the cut off disc, and completely cut the connector in half.
2.     Then using the same cut off disc, shave the mounting bracket off each side.
3.     Then if you choose, you can use some sand paper to smooth it over.
4.     Attach wires on each pin that is required by Ben's diagram, which i have attached. (i like using old IDE cables from computers, because they are relatively small guage, and they bend nicely)
5.     Next, you have to desolder the crappy Famicom connector from the NOAC.
6.     Reconnect all the wires that go to their respective spots on the NOAC.
7.     Try it out! put a game in the system, and if it works great. If not make sure that CHR A10 and CHR A11 are flipped.

Step 6: Making the Case

Picture of Making the Case

     This step is kinda of a free for all, meaning that you can go about doing it which ever way you want. The way I cut the parts was I would use a cut off disc/dental bur to cut off big pieces. Then i would use the needle files to smooth out the edges. This is relatively time consuming process, but it produces a nice piece of work.

Step 7: Putting It All Together

Picture of Putting It All Together

     The first thing that i had to do was to find a good spot for the power switch, and the led. So i found a good spot that had space where there weren't any electronics. Once that was in, I hot glued the power jack, and soldered the voltage regulator onto it. I then connected the regulator output to the switch, and the led.
     The hardest part was to fit the cartridge port in the case. In order to do this I had to hot glue and somewhat put the case together, then i put a game in the port and held it where i wanted it to be. This technique worked good, but had to be done quickly before the glue cooled. Once that was in, I was on the home stretch.
     The next part was to put the CPU right between the connector and controller ports, and tack that down with some hot glue. Next i hot glued the controller ports in, along with the AV outputs. Now I had to find a good place to connect the power to, so i chose one of the controller ports. I soldered the power off the switch to the positive on the controller, and the negative does the same. The only thing left to do was to fit the controller board in, and screw the case closed.
     The controller board fit right between the ports, and the power switch (intentionally). Making sure as to not crimp any wires, I screwed the case together. DONE!!!!! Finally, I could run over to the TV and test it out.... works like a charm!

Step 8: Conclusion

     This project was definitely rushed due to the dead line of the Epilog challenge contest. However, I did my best to take my time, and complete it in steps. That is the most important thing with building stuff like, to always take it steps, making sure to test it along the way. I plan on making more console mods, and portable units, however the only thing that limits me is that I can never get a nice case to put it in. If I won this Epilog Zing laser cutter, I would explode with new ideas, from making cases for portable NES systems, to making side lit LED signs. I'm already designing a new Atari 2600 mini arcade machine, and plan on making the arcade machine out of laser cut acrylic. I'm hoping for the best. Good luck to everyone, and may the best Instructable win!


t.snow.k907 (author)2017-10-25

I kniw this is a few years late. But the Nes Classic Edition came out (been out...) and is HDMI and is powered by a micro usb. Is there anyway to 'add' the 'features' to this mod?

mathewcraig (author)2016-07-14

Impressive dude,

tomhung (author)2014-10-09

Those stand alone Super Mario Bros. (not combined with duck hunt) should not be destroyed like that! I hear they are super rare!

GrantS9 (author)tomhung2015-10-24

and here I sit with 2 gold Legend of Zelda copies.

M1k3ol (author)GrantS92016-04-12

T'was the one with more units sold ever of all the franchise, the golden Zelda 1 is the most common

JoeyC23 (author)tomhung2015-11-24

They came with the Nintendo Entertainment System for a while. I doubt they're that rare.

jonoghue (author)tomhung2014-10-18

are you kidding? those are worth like 5 bucks! i have one myself!

GrantS9 (author)2015-10-24

Do you by any chance do conversions for others? essentially, if they were to pay for any hardware required for the process? I kinda wanted to convert a gold Legend of Zelda copy, seeing as I have 2 of them.

IronSpartan114 (author)2015-02-15

ok what's the deal with the TLC5940 driver files, all you do is mention that they are there but in no way say how they are used or installed onto the chip, do I just print them off and rub them on the chip, or maybe take a usb cable and cut it open and attach the wires to the chip then plug it into the computer and try to install it that way, or maybe I could call up professor Xavier and have him use his psychic powers to install them. ??????????????????????????????????????????????

tlc5940 is one of the IC's used in the build.

davidbarcomb (author)2014-12-02

Very nice project. Thanks for the instructable

william.tablada (author)2014-11-06

another thing can the power joy, the console inside the controller, work as the clone or does it have to be a specific nes clone.

jonoghue (author)william.tablada2014-11-07

by power joy, do you mean the one that looks like a nintendo 64 controller? i used one of those and it worked perfectly, and without using any kind of button simulator. feel free to PM me if you need help

juddkiley (author)jonoghue2014-11-22

Hey mate, do you know how to hook up a controller port 1 for a new controller to a power joy that your talking about?

juddkiley (author)juddkiley2014-11-22

Sorry meant NES dam auto correct

EdgeVi (author)2014-11-08

Do you happen to know what could be an alternative for the power player?

william.tablada (author)2014-11-05

so can we use the atmega328 or atmega168 only also will the atmega168-20pu work?

mechagen (author)2014-10-01

Okay I have a question for you, dany32412, would a Power Joy Game Unit (like this one work as the NOAC? Also, do you know of any PCB printing services that are cheap but effective?

mechagen (author)mechagen2014-10-01

Okay another question for you is the UA7805 what I want for the Voltage Regulator?

HarryLaine (author)2014-08-04

i love video games :)

andrea biffi (author)2014-08-02

wow that is GREAT! well done!

McTawishMehmetali (author)2014-08-02

new game console coming soong ea building....

nintenbro64 (author)2014-08-02

I want it!!! Great job

dackermans84 (author)2014-08-02

looks absolutely cool! very nicely done

jpalmer-rye iii (author)2014-08-01

dont personally have the talent but one word epic

broccali (author)2014-08-01


Martinfort92 (author)2014-08-01

I would destroy something doing this.. but would totally buy one. *wink wink*

cboudreaux3 (author)2014-06-15

Instead of cutting the NES connector in half, couldn't you just take the NES connector from a Game Genie and attatch it to the final board?

ehabcharek (author)2013-08-26

@nerd7473 I asked on this site. Sorry for the late reply, I don't check my email very often :P
during that period though, I found a website that also shows the pinouts of the Super Joy 3! The only problem is that they aren't the same. Now I don't know which one to trust XD

P.S. it's not letting me reply for some reason :c

ehabcharek (author)2013-08-17

I'm sorry for this noob question, but why do you have to make the controller board? can't you just connect the pins of the controller ports to the NOAC board according to the image provided below and let the IC in the controller itself do the processing?

also, how do you program the arduino chips? I'm assuming that you need an arduino for that, right? I've never used one, so.. :P

nerd7473 (author)ehabcharek2013-08-23

I have no Idea have you asked this question in Google or on this site?

wes2103 (author)2013-06-12

Do you ever play it

celrod3 (author)2013-03-11

Which TLC5940 sample do I need to get there are many?
Please respond!

dany32412 (author)celrod32013-03-11

The TLC5940NT will do fine. Notice the package type "PDIP" this is the familiar "spider" looking chip. The dip package makes it a lot easier to solder to compared to QFNs or TSSOPs.

GenesisMaster (author)2012-12-03

One certainly stupid question: do we have to program the ATmega328? If so, what program do we have to up load in it?

dany32412 (author)GenesisMaster2012-12-03

I've updated step 3 to include a zip folder with all the sketch files, as well as library files. Just open up the Arduino IDE, and write the .ino sketch file to the arduino (atmega328)

GenesisMaster (author)2012-11-28

Thanks for the advice, it works. But I still have two questions:
1) Do we need a special machine to create a PCB? If so, where to find one? Is it expensive?
2) Will this Micro NES work with an ATmega328 instead of a ATmega168?

GenesisMaster (author)2012-11-25

Because I couldn't open The DipTrace file (it was like corrupted), I tried to make one myself with the pictures of the PCB you made. Here's the results (white: top tracks/red: bottom tracks):

Did I have placed the bottom tracks correctly?

dany32412 (author)GenesisMaster2012-11-26

All looks good, except the white tracks are what should be on the bottom, and the red are the jumper wires (top side). I hate the instructable's file uploader, it doesn't seem to allow users to download very effectivly. Try right clicking the file, and renaming it with a ".dip" file extension. Not sure if that works, but worth a try.

ARIrish (author)2011-03-25

This is great, but isn't the game slot likely to get even more dusty and jammed up than it was on the original console? I mean that thing is just baring itself to the elements, right there.

Still though, I'd love one of these. Next step: a SNES inside a SNES cartridge...

Spokehedz (author)ARIrish2011-03-25

The thing that failed on the OG NES was the connector because you had to load it like the VCR's of the day. It was this movement that lead to many of the OG NES failing.

The top-loader NES was released near the end of the console's life, and it uses almost the exact same connector as this one does here--and it works better than any OG NES ever.

I suspect that having access to the terminals will make cleaning easier.

ARIrish (author)Spokehedz2011-03-25

Cleaning will be easier, certainly, but the connectors are directly open to the air, so all sorts of rubbish can get in there, meaning cleaning will be more necessary. The top-loading model has a plastic... what would you call that, 'trapdoor' mechanism, meaning when there's no game in it, it's covered up.

dany32412 (author)ARIrish2012-11-26

I supose as console size goes down, time spent cleaning goes up.

TheWaddleWaaddle (author)ARIrish2011-03-26

Or even better...a PS3 in a PS3 cartridge. XP


PS3 cartridge?

haha, that would be intense

jwoo2023 (author)jake walker2011-04-20

even better a 3DS in a lego brick!

The nerdling (author)jwoo20232011-05-03


jwoo2023 (author)jake walker2011-04-20

screen is hologram!

AndrewAlexanderRocha (author)2012-07-15

Very cool, I was wondering if you can use an nes controller extension cable as a port and somehow rewire it...

About This Instructable




More by dany32412:NES in a CartridgeHomemade Notebook DividersArduino Christmas Light Controller
Add instructable to: