Worklog Pears' N64 Portable

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
Hi Everyone!

I'm making an N64 portable as my first non-kit portable and hope to use it as a nice learning experience for improving my Fusion360 skills and possibly even pick up some knowledge for making custom PCBs way down the line. I'm going to start super simple and hopefully revise the design over time to become more advanced.

Parts / Specs List
⦁ N64 with Expansion Pak
⦁ BB 5" 640x480 Screen
⦁ U-AMP
⦁ N64 PMS
⦁ USB-C ZY12PDN Board from Amazon
⦁ N64RGB Advanced
⦁ 4x 18650 (1s4p)
⦁ Orange Tacts
⦁ Original Buttons
⦁ GameCube Joystick
⦁ G-Boy/G-Wii Speakers
⦁ 1x Everdrive64 X7
⦁ Arduino Nano (using jtryba's project on Github, big thanks for the help fixing compaitibility!)

Since I plan to use this project as a learning experience and a chance to enhance my abilities, I already have multiple revisions in mind.

Version 1.0 - The Monstrosity
⦁ Big and blocky case
⦁ Non-bent cart slot and expansion pak

Version 2.0 -
⦁ Improved case, still big
⦁ Still no bend

Version 3.0 -
⦁ Bent cart slot

Version 4.0 -
⦁ Bent Expansion Pak
⦁ Internal EverDrive64 X7

Version ?? - The Dream
⦁ Basically exactly what printsmith3d has planned.
printsmith's plans, Gman's N64SP, Nold's Last64, and Downing's N64 are what inspired me to get into making an N64 portable

I've already done a ton of work designing the front half of the case, including a test print of the whole front face:
IMG_1649.JPEG
The design is very much inspired by the G-Wii and Downing's N64.

Since that test I've made some adjustments and added mounts for the U-AMP, USB-C board, and audio jack. Here's how the inside of the case currently looks, there's going to be a lot of screw posts because I want to avoid any glue at all since I'll be refining the design over time and will need to remove things:
Inside Face.PNG

Next on my list is to finish the front half of the case by adding volume and power buttons, the Arduino mount, some posts for screwing the two halves together, and the PMS mount.

I also plan to trim my board sometime this weekend:
IMG_1650.JPEG

I'll try to update this log every so often with my progress, thanks for checking it out!
 

E64

.
Joined
Nov 15, 2016
Messages
125
Likes
99
Portables
2
Hi Everyone!

I'm making an N64 portable as my first non-kit portable and hope to use it as a nice learning experience for improving my Fusion360 skills and possibly even pick up some knowledge for making custom PCBs way down the line. I'm going to start super simple and hopefully revise the design over time to become more advanced.

Parts / Specs List
⦁ N64 with Expansion Pak
⦁ BB 5" 640x480 Screen
⦁ U-AMP
⦁ N64 PMS
⦁ USB-C ZY12PDN Board from Amazon
⦁ N64RGB Advanced
⦁ 4x 18650 (1s4p)
⦁ Orange Tacts
⦁ Original Buttons
⦁ GameCube Joystick
⦁ G-Boy/G-Wii Speakers
⦁ 1x Everdrive64 X7
⦁ Arduino Nano (using jtryba's project on Github, big thanks for the help fixing compaitibility!)

Since I plan to use this project as a learning experience and a chance to enhance my abilities, I already have multiple revisions in mind.

Version 1.0 - The Monstrosity
⦁ Big and blocky case
⦁ Non-bent cart slot and expansion pak

Version 2.0 -
⦁ Improved case, still big
⦁ Still no bend

Version 3.0 -
⦁ Bent cart slot

Version 4.0 -
⦁ Bent Expansion Pak
⦁ Internal EverDrive64 X7

Version ?? - The Dream
⦁ Basically exactly what printsmith3d has planned.
printsmith's plans, Gman's N64SP, Nold's Last64, and Downing's N64 are what inspired me to get into making an N64 portable

I've already done a ton of work designing the front half of the case, including a test print of the whole front face:
The design is very much inspired by the G-Wii and Downing's N64.

Since that test I've made some adjustments and added mounts for the U-AMP, USB-C board, and audio jack. Here's how the inside of the case currently looks, there's going to be a lot of screw posts because I want to avoid any glue at all since I'll be refining the design over time and will need to remove things:

Next on my list is to finish the front half of the case by adding volume and power buttons, the Arduino mount, some posts for screwing the two halves together, and the PMS mount.

I also plan to trim my board sometime this weekend:

I'll try to update this log every so often with my progress, thanks for checking it out!
You'll need a different revision of the n64 board if you want to trim it that small
 

Gman

RTFDS
Staff member
.
.
.
.
.
Joined
Feb 25, 2016
Messages
1,434
Likes
2,871
You'll need a different revision of the n64 board if you want to trim it that small
what? the trim he outlined is valid. Besides all the N64 revisions can be trimmed virtually the same. I actually prefer the lower revs because you can ram swap them.
 

E64

.
Joined
Nov 15, 2016
Messages
125
Likes
99
Portables
2
what? the trim he outlined is valid. Besides all the N64 revisions can be trimmed virtually the same. I actually prefer the lower revs because you can ram swap them.
Really i haven't seen anyone do it on a later revs I know about the earlier revs
 

Gman

RTFDS
Staff member
.
.
.
.
.
Joined
Feb 25, 2016
Messages
1,434
Likes
2,871
Really i haven't seen anyone do it on a later revs I know about the earlier revs
The earlier revs are more common to come across but the revisions only have small differences and they can be trimmed almost exactly the same.
 
  • Like
Reactions: E64

E64

.
Joined
Nov 15, 2016
Messages
125
Likes
99
Portables
2
The earlier revs are more common to come across but the revisions only have small differences and they can be trimmed almost exactly the same.
Nice and how can one get video input?
Is it possible to get composite or will we have to use a ultra vga for that
 

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
The earlier revs are more common to come across but the revisions only have small differences and they can be trimmed almost exactly the same.
Thanks Gman for confirming! I actually checked in the Discord and by reading around, so I'm glad my research wasn't incorrect.

In the meantime, I've trimmed and sanded up to 1000. I have outlined the 3.3v lines I need to add back in based on viewing others' logs. I actually get continuity on all but the bottom one, but since there's only a very skinny connection left to the right trace I think it's probably good to wire it up anyway. The trace second from the left looks a bit different than some of the other revisions, so maybe it's not entirely necessary to wire that one up?
IMG_1654.JPEG
InkedIMG_1655_LI.jpg
 

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
Managed to test out my trim and it worked first try, no PIF resistor needed!

Also did my first test print of the full front half, minus a few components, and it came out pretty well. I also made a little tray for the N64 motherboard to sit in, that I plan to use to mount it to the case.
IMG_1659.jpeg

Next up I have to integrate the Arduino holder into the front half, as well as a hold down for the back of the USB-C board to keep it from sliding backwards. I'll probably do a final test print tomorrow evening to check out all my adjustments and additions.
 

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
Brief update, I tried super hard to get this completed over the past weekend but ran into some snags with the controller.

Everything except the controller is working fine including the U-AMP and N64RGB Advanced (which looks amazing). For some reason the sketch that works on my Uno is not working properly on any of my Nanos, first and third-party. In the Everdrive menu there's no response from the inputs, but sometimes it sends a combination that causes the previously loaded game to start and does the same if the Arduino is reset.

IMG_1674.jpeg

The crazy wiring will be cleaned up, I just left them super long for testing before screwing everything together and trimming for final locations.

Worst case, I could probably just stick an Uno in the back half, as my first revision has a lot of unused space. I'll post back here if I make any progress in troubleshooting the issue.

Edit:

30 minutes later and I have the issue identified, but not the solution. Some quick googling helped me find out that pin 13 has an LED and resistor attached to it and is pulling the voltage low, causing the button to be always pressed. I confirmed this by changing the button for pin 13 from Start to Down, and immediately see the list of games on the Everdrive being scrolled. This also explains why the start button wasn't working for me, and why the usual start screens on Wipeout64 fly by (facepalm)...

Edit 2:

Got the issue resolved by just removing the LED and resistor since I don't need to see it anyway... Now I just need to figure out why my X-Axis isn't working on the joystick and I can work on closing everything up!
 
Last edited:

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
Got the joystick issue worked out and the whole thing closed up one night this week and finally am getting around to sharing some pictures of the completed unit.

IMG_1680.JPEG
IMG_1681.JPEG
IMG_1682.JPEG
IMG_1683.JPEG
IMG_1686.JPEG

I'm very happy with how it came out, since this is my first self-modeled portable. It's pretty chonky, but is surprisingly comfortable to hold for me.

Some improvements I already have in mind for a Version 2.0 are related to the rear buttons. They're totally fine as is, but I want something more stabilized or hinged and want to see if I can rearrange two of the batteries so that the buttons can sit a little bit lower.

I'll try and snag some nudes when I open it back up later this weekend, but it's not super pretty. I played OOT for about an hour and a half and it overheated, I think because the PMS temperature sensor triggered, so I ordered some beefier heat sinks to try and cool it with. If it still overheats with the new heat sinks, I'll look into getting a small fan for some active cooling. I also snapped one of the battery clip holders because it was modeled a bit too thin, so I'll be printing a new rear half to be replaced at the same time.

Oh yeah and I think I have the Green and Blue LED leads wired up wrong, so I'll be fixing that too :D
 

Attachments

StonedEdge

a.k.a. ClonedEdge
.
.
Joined
Nov 16, 2018
Messages
362
Likes
1,482
Location
Japan, Tokyo
Portables
2
Wow, amazing work and really nice internals for your first portable! Can't wait to try my hand at an N64 portable really soon as well. N64 Advanced looks great too.
 

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
Wow, time flies, cannot believe it's been three years since I created this. Lots of life changes and jumping around hobbies and I'm back and feeling very committed to advancing my knowledge to improve my N64 in ways I didn't think I'd ever be capable of.

The first thing I want to tackle is improving the controller of the portable. The Arduino controls actually worked great and were very reliable, but I really want to learn to design my own PCBs in order to use the official CNT-NUS chip with some of the FM18W08-SG chips I've had laying around for a few years. I started learning how to use KiCad and created some simple boards just to hold the tact switches I originally used for the buttons. They worked but I wanted to try something a bit harder, so I created new revisions of the boards to utilize the original membranes from the N64 controller while also making good use of space and mounting the CNT-NUS and F-RAM chips to the make controller PCB. I was lazy and used an autorouter just to get the boards in to JLC and to me for testing, but luckily was able to get it working.

I've now updated my main board again to shrink the footprint a bit for space savings and tried my hand at manually routing all the traces. I tried re-creating a pad design similar to the N64, but I'm really not sure the best way to create the footprint. Currently it's just a bunch of custom shape primitives to make the pad. I also initially had a circle on the Mask layer to jut expose a portion of the pad, but the weird ground fill triggers a DRC error.
1696295597185.png

1696295677201.png

I'm still extremely new to KiCad so there's definitely some improvements I can make, going to review everything for some days before I finalize and send the design off to JLC for production. If anyone has any input, feel free to let me know, I'm very open to any advice!

My intent is to connect this board to the joystick board with an FFC to keep internals somewhat clean, not sure if this poses any issue for the joystick converter. I'm intending to use the attiny24a variant since it's open, but I'm unsure if running the signals for that over the FFC is likely to cause issues. I need to do some testing with the joystick board I have currently as I haven't been able to get it functioning.

Once I get my PCBs finalized I intend to rework the case a lot and possibly even shrink my trim to save space internally, but one thing at a time for now.
 

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
First update since committing to a new revision, I have received and tested my custom controller PCBs!

This is my first time making PCBs with KiCad, extremely happy I was able to make something functional. I was struggling to get the ATtiny24A joystick conversion working so instead I took a chance and tried using this older but functional converter using a PIC16F616:
Github Link
Google Code Archive

My next step is reworking the front case design a bit for these new boards and also modeling some new buttons instead of re-using the original N64 buttons which are contoured to the controller design.

Pics below, ignore the flux, haven't gotten around to a full scrub yet, just was testing functionality :D

IMG_3702.png

IMG_3695.png

IMG_3697.png

IMG_3698.png
 

CrazyGadget

Crazy Helpful, CrazyGadget
.
Joined
Jun 6, 2020
Messages
600
Likes
832
Portables
???
Dude this is AWESOME! This is exactly what I had in mind when brainstorming a controller PCB for my portable-to-be. I love how everything is integrated either on the main board or through a simple FFC; so little manual wiring! I'm definitely going to take some design cues from this, very inspiring!
 

Nold

real emulation, no hardware
Staff member
.
.
2021 1st Place Winner
Joined
Jul 16, 2017
Messages
443
Likes
1,608
Location
EU
Portables
5 + 1*π
nice, i dig those buttons, how do you like them?
 

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
Dude this is AWESOME! This is exactly what I had in mind when brainstorming a controller PCB for my portable-to-be. I love how everything is integrated either on the main board or through a simple FFC; so little manual wiring! I'm definitely going to take some design cues from this, very inspiring!
Thank you, it means a lot! I'm considering adding FFCs for the d-pad and rear buttons as well since I actually have the joystick upside-down and have to re-do the board anyway :XD:. My goal was to reduce the amount of spaghetti running through the case while also learning a new skill.

nice, i dig those buttons, how do you like them?
Thanks! To be honest I'm not sure how I feel about them yet, I'm going to print up some buttons and a little test piece of the case to see how I feel with everything together. I'm coming from using the orange tacts so it's a big difference, but I like how low profile these buttons are.
 

Pears

.
Joined
May 31, 2020
Messages
12
Likes
41
Location
Pennsylvania, USA
Small update for today. I printed a test jig for the controller PCB and some simple buttons. Realized I have the A and B buttons too close together if I want to use buttons similarly sized to the originals. The spacing was retained from when I initially planned to use the original membrane from the controller. I'll update the design a bit to separate them more and send the new revision over with the joystick PCB.

IMG_3708.png


I'm actually liking these buttons, but I think I'll experiment with making a second version of the board that uses orange tacts that have the legs snipped back to make them into SMD buttons. I want to avoid through-hole buttons since they'll require me to add some more spacing for the controller chip on the back.

IMG_3709.png


I also made some buttons that I'll be sending off for JLC to print. Still need to make a d-pad, but I intend for many more future orders with JLC, so no rush:
1698964346461.png
 
Top