Step 3: Wiring the schematic
For the SD card, I used a microSD card with a converter that made it into a full sized SD card. I soldered pins onto the converter making it possible to plug it into a breadboard. However you do it, make sure you take note of the pin numbers on the card and wire them correctly.
The pushbutton and switch are not required. If you don't have any handy just use hook up wires that you connect to ground when you want to "push" them, and unplug them when you're done. We will be using the pullups built into the arduino, so none are needed externally.
Note that the grounds from both the arduino and the NES are tied together. Also that the 4021 IC gets power from the NES, not the arduino.
If you are modifying this to work on another device, the NES LATCH signal MUST go into an interrupt input. Also the SD card must be connected connected to the SPI interface. For more information that, read here, namely the "Physical Connections" section, and substitute your correct pin numbers. Also note that I left pins 0 and 1 on the arduino disconnected. These are for TX/RD to the computer, and will need to be disconnected every time when programming the device, so I worked around them completely.
Remove these ads by
Signing Up





































Visit Our Store »
Go Pro Today »




I switched to using the 4021 after my order for them came in since it is the chip the controller actually uses. I don't think using the shiftout will work on the arduino due to the speed required. The latch pulse arrives every so often, slow enough for the arduino to handle, but after it arrives the 4021 is clocked 7-8 times extremely quickly, faster than the arduino can likely handle.