borti4938 / n64rgb_pcb

GNU General Public License v3.0
9 stars 3 forks source link

N64RGBv2.1 (PCB)

This repository contains all you need files to build your own DIY N64RGBv2.1 board. Firmware is supplied in another repository.

Please don't ask me for selling a modding. I either sell some prototypes on some forums marketplaces (which is very unlikely) or I don't have any of the boards. This is a complete DIY modding project. Everybody is on his own here.

WARNING: This is an advanced DIY project if you do everything on your own. You need decent soldering skills. The CPLD and the video DAC have 0.5mm fine pitched pins. On the board there are some SMD1206 resistor and ferrite bead arrays. However, there are some awesome shops out there selling the boards for a great price.

Table of Contents

Checklist: How to build the project

Assembly

If you have all components available, you can start assembly your board. The documentation provides assembly sheets (top and bottom, which you can print out. Together with the BOM it is just a matter of time and effort to assembly everything. Alternatively you can also use the interactive BOM.

Please note that the assembly (and component sourcing) depends on which kind of CPLD family you use. Supported are Max II and Max V CLPDs.

If you populate J3, which is the JTAG connector, please short the pins such that they are flush at the bottom side. This reduces the risk to short on of these pins with the heat sink (where the PCB will be mounted).

Using non-clean flux (rosin based) is obviously recommended. Even though it is "non-clean" I recommend cleaning everything afterwards (just for the visual finish).

Please double check everything for shorts once you finished your work. Very important is that the power supply trace do not short to GND.

Installation

Note that installation pictures partially show the N64Advanced board. Pad design and installation is equivalent.

1. Open the console

(image by Zerberus (circuit-board.de user))

2. Optional Steps

2.1 Preparation of Top RF Shield

This step is optional. It helps a) to reduce mechanical stress on the flex cable (if used) and b) ensures maximal distance between digital signals (installation wires or flex cable) and analog signals (MultiOut).

Some explanation on this optional step

Later, the data lines as well as the clock will be routed close to the MultiOut. The distance between both is a crucial issue as your wires act as interferer. Hence, having the tap bended might be ok, but it is better to cut some piece of the RF shield away to further increase the distance between MultiOut and data lines

GND insulation on the MultiOut

To have a better return path for the digital video lines defined, you may insulate GND from the MultiOut. This step is only recommended if you have a noisy picture. It comes with the drawback that a) you have a lot of more effort during installation and b) having a longer return path for the analog audio output as well as for S-Video and Composite Video as GND is later routed over the modding board.

3. Solder Work

You have the options to either install everything with casual installation wires or using flex cables. This is just a trade-off between personal installation effort and price. Personally, I recommend using the flex cable.

Sections 3.1 and 3.2 assume that you want to use the controller functions, so controller 1 will be connected. However, this is optional, yet at the flex install the controller pad of the flex cable must not be left open! Please also note section 3.3, where the installation of mechanical switches is described.

3.1 Using the Flex Cable

To use this option, you have to have the flex cables as shown at hand. Note that the picture shows older prototype version.

3.1.1 Digital inputs

Start with the digital side:

Note: when using the flex of version earlier than v2022xxyy you need to cut the RF shield near the MultiOut as shown in 2.1

3.1.2 Analog outputs

Next up is the analog video flex which will be connected to the MultiOut. Before you start here, make yourself clear where you want to route sync to. This depends on whether you want to use sync on luma or sync on composite sync (raw sync) cable.

3.2 Using Wires

First you need to work out the digital video signals as well as reset and controller 1. Most of the signals needed has to be taken from video processor output; the RCP-NUS. Next to the RCP-NUS is the video encoder, where several types are used during the variety of N64 designs. The pinouts are given below. Basically, we need D0-D6, /DSYNC and /CLK (or VCLK or CLOCK) for the modding board.

(RCP-NUS picture by Marshall; Encoder picture by Viletim)

Next to the video signals, you will need to get power (3.3V and GND), reset and controller 1. This means you need in total 13 wires. If you use a ribbon cable, I recommend you to use either a 15 conductor cable (double 3.3V and GND) or a 11 conductor cable and separate 3.3V and GND wires.

Next you can prepare wires for the analog video. Connect several wires to the MultiOut. Before you start here, make yourself clear where you want to route sync to. This depends on whether you want to use a sync on composite video, a sync on luma or a sync on composite sync (raw sync) cable.

You have the option to use the Filter AddOn board here. Note that the filter is optionally included in on the flex cable setup.

If you use the filter board, you clearly have to solder the filter board first and connect the wire to the pads of the filter board as marked on the silk screen.

3.3 Mechanical switch

You can install mechanical switches to toggle VI-DeBlur on and off and also 16bit mode on and off. At least I recommend installing a mechanical switch for the VI-DeBlur function.

Source a on/on or on/off switch like this one. If you source the switch as linked you can use this 3D mount for a clean installation.

Connect the switch to J11.1 (VI-DeBlur) and/or to J11.2 (16bit mode) in a way such that the switch leaves the jumper open in one position and closes it at the other position.

4. Mount the N64 Advanced Modding PCB

The PCB is designed to fit on the heat sink of the N64. There is a large via on the PCB where a M3 screw passes through. Mount the PCB using a M3 screw of length 10mm or 12mm, a set of washers and a nut. Be careful with the JTAG connector J3 and ensure that the pins do not short to the heatsink!

If you want to use the heat sink shield as an additional secure GND connection, you can also apply some solder to the mounting via.

If everything is mounted and secured, the PCB should sit like that.

5. Finish the Work

Before continuing you can assemble the RF shield and heat sink back to the N64 mainboard. In that way everything is secured in place where it belongs to. Of course, if you use an installation with wires, make sure that you know which wire is for what. On my ealrier installs I used some wire marker.

5.1 With Flex Cable

Bend the flex cables gently at the shaded areas. In that way you should be able to allign both flex cables at the N64RGBv2.1 modding board. Solder the flex cables at their places. (Please note subsection 5.3 - CSYNC).

Connect an extra GND wire as shown in 5.3.

5.2 With Wires

Just connect every wire at its place. The silk screen shows you where everything goes to. (Please note subsection 5.3 - CSYNC). Note that the picture shows an older version of the N64 Advanced. Newer versions have reset and controller at the left-hand side.

Connect an extra GND wire as shown in 5.4.

5.3 CSYNC

You have the option to connect /CS or /CS (75ohm). I recommend using /CS (75ohm) except if you have a true TTL sink, which is usually not the case! In virtually 99% of all setups connecting the sync wire to /CS (75ohm) is the way to go.

On installations with the flex cables follows that you must close SJ3 bottom on the flex. Please note the Jumper Setup section to correctly setup the sync level.

5.4 Extra GND Wire

Connect an extra GND wire to the heat sink screw. This improves return path properties of the digital video lines.

Jumper Setup

Jumpers with three pads have J1#.1 and J1#.2, where .1 is marked with an arrow. Closing either jumper means that a short to the middle pad is needed.

J11 (VI-DeBlur and 16bit mode)

This jumper can act as a power cycle default. You can also switch the state of the jumper using a mechanical switch to toggle the functions during runtime.

J11.1
J11.2

J12 (IGR function control)

J12.1 (VI-DeBlur and 16bit mode)
J12.2 (in game reset)

J2 (Filter setup)

Needs filter add on to be installed.

J21 (Sync on Green)

J31 (CSYNC level @ /CS (75ohm) pad)

J3

J3 is the JTAG connector.

Cable Setup

Signal Pin MultiOut Pin SCART Ref. GND in SCART Cinch Plug Note
Red / Pr 1 15 13 Red plug Using a 220uF cap in series is possible, yet not required
Green / Y 2 11 9 Green plug Using a 220uF cap in series is possible, yet not required
Blue / Pb 4 7 5 Blue plug Using a 220uF cap in series is possible, yet not required
Sync 3, 7 or 9 20 17 not needed Pin: See installation, Cable: see notes below
GND 5, 6 4,5,9,13,17,18,21 Outer ring of each plug Pin 21 @ SCART: outer shield
+5V 10 16 18 not needed SCART: use a 180ohm resistor in series
Audio left 11 6 4 Red plug
Audio right 12 2 4 White plug

Notes on Sync:

RGB cables:

PAL RGB cables (SNES PAL):

RGsB Cables (Cinch):

With the given table you should be able to build your own component cable (passing RGB) or to build an adapter (see pictures below) Unfortunately, there are no cables / adapter to buy. Only chance is to buy a Wii component cable and use a MultiOut adapter (SNES/N64/GC style to Wii style).