Worklog Portable 1: a SWiiTCH Wrendition

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
1. The Online Recipe Preamble

I want to say it was about 2 years ago when I saw the G-Boy going around on youtube, and thought "hey, I have a wii!" which at the time was collecting dust in the basement. So, I did the softmods, bought a 128GB micro/SD card, and then... it sat for another year, loaded with USBloaderGX, and a full library of games. Then this year, after bringing it back to college with me, I did a little more passive reading. I found the Ashida kits, the GC Nano, the Wii Micro, and several other really cool projects, which inspired me to start doing research in earnest. This was also the semester that I took Circuit Analysis, which helped me understand more about how the wii worked, and how these projects came about by reading worklogs, examining the Compendium, and more. From here I started planning the features I wanted my own portable to have, and putting together a BOM. Coincidentally, as the price on the BOM continued to climb, I learned of a kickbox program- basically funding from my university to pursue a project or innovative idea. Still waiting to hear back on that application, but I'm optimistic that it could mitigate a good chunk of the cost, and be a valuable resource in conjunction with the BitBuilt forums and discord community, which have already answered so many questions. I'll be unable to start ordering/trimming/printing anything until early January, so am currently confined to constructing 3D models in Solidworks based on spec sheets from the internet.

With all of that said, while it is an ambitious project with all the bells and whistles, I'm optimistic about the outcome and excited to get started.

Thanks in advance to @YveltalGriffin, @CrazyGadget, @Y2K, and everyone else who humored my discord questions.

Thanks also in advance to several inspirations:
BocuD's Swiitch 2.5 (I promise I didn't steal the name, but BocuD did do it first)
G-Man's G-Wii
curtismods DMG-Boy HDMI w/ Dock


2. Desired Features (Portable):
  • OMGWTF or LMAOv2 trim with bluetooth and MX relocations (and NAND if applicable), U10 emulated on PMS
  • 5" IPS display/driver, GC+2, PMS 2, PMS-PD 3, RVL AMP, joycon stick breakouts, *maybe* NAND relocation flexPCB, all from 4LT
  • Joycon sticks (with gates) (originally hoped for halls, but only analog works with 3v3 logic - thanks to those who pointed it out before purchasing)
  • Joycon replacement buttons/dpad over squishies (to be purchased from YveltalGriffin)
  • dual action tacts for triggers (also from YveltalGriffin)
  • probably small generic clickies for Z/Z2
  • 4x 18650s (~3400mAh)
  • 3 switches: internal display on/off, integrated gcc on/off, audio switch (manually routes audio to headphone jack, which will also be duped to the dock port)
  • buttons for pwr, reset, sync, start, vol+/-, display (menu, +, -, source)
  • Wii AV out port (but custom wiring- more on this below)

3. Desired Features (Dock):
  • 4x gcc ports (+ BlueRetro integration)
  • analog2hdmi for HDMI out (with audio!) (Electron Shepherd)
  • above wired to male Wii AV connector with custom pinout (4x gcc, R/L audio, RGBHV video, 3v3, 5v, gnd x2, - uses 15 of 16 pins)
  • USB-C port for PD in (passthrough cable to the PMS-PD)
  • Infrareds for wiimotes

4. In Progress/Completed (all currently 3D modeling):
  • abxy/dpad button brackets
  • collected/created models for everything from 4LT (display, driver, GC+2, PMS 2, PMS-PD 3, RVL AMP)
  • 18650s (cylinders go crazy)
  • Top portion of the case to directly mount display, abxy/dpad, sticks, misc buttons, Z/Z2.

5. To Do:
  • Everything else

6. Planned Documentation:
  • .zip with all of my 3D models
  • Links to as many resources used as possible (forum posts, datasheets, videos, etc)
  • Master spreadsheet with BOM/links/price estimate
  • .zip of all WIP pictures, chronological
  • Plenty of progress posts :)
 

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
I write with good news - the project application has officially been accepted, and come early January I will have $300 to spend on this project before dipping into my own pockets!

In the mean time, I've been busy modeling as many components as I can into the case, building from the top down and keeping it as thin as possible.Current thickness of the top case is ~16mm, though I'm hoping I can reduce this. The display driver board has become more of an issue that I expected, in that it's sheer size and limited placement is my current biggest constraint in placing everything else. Currently brainstorming solutions and/or alternatives, but if anyone has an RVL-DD that they're looking to get rid of, lmk!

Some pics below of current progress and layout:
Screenshot 2023-12-21 013645.png

Screenshot 2023-12-21 013513.png

Screenshot 2023-12-21 013230.png
 

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
Update, 01/18/24 (at ~3am, the best time for updates):

A couple of changes to the initial features:

1) DS Lite buttons/membranes/PCB's will be used instead of squishies and joycon buttons. Not only are there more resources online for modeling, they are a little bit cheaper and fit the Wii-esque aesthetic better than the Joycons. They're also thinner than using squishies+buttons+brackets! This also means I won't be buying squishies at all, given that I only really needed them for abxy/dpad.

2) Drop in replacement Hall sticks for joycon sticks! Retroid Pocket 3/3+ hall sticks work on 3v3 logic, so are usable with GC+2. So much thanks to @thedrew for that little nugget of knowledge in his PriiMiium V1 worklog.

3) As far as the display driver goes, I may be able to just trim it so it can fit vertically. That remains to be seen until I can take some measurements and follow some traces when I get the board itself, but I'd need to trim a total of 14mm to do so. Most of this could likely be taken from the connector sides, given that I'll be soldering directly to the pads anyways.

4) Speaking of the display, it was pointed out to me (I forget by who) that Electron Shepherd has a VGA switch, which would remove one more switch from the shell!

5) The idea of integrating a Wiimote for use with some of the gimmicky bits of New(er) Super Mario Bros Wii and other games that use the tilt controls really caught my eye in @JacksonS's Wii SP 2.0. It would mean learning how to trim a wiimote, which could either be fun or absolute hell, even with what resources I could find (which I will link if/when I explore that idea a bit further). This may also be unnecessary in the very near future, given a pending rewrite of GC2Wiimote... so as of yet undecided.

6) Undervolting is a thing that I might do! Would require lots of stability tests with something like an RVL-PSU or PSU-Plus, but my goal would be to mod the PMS-2, again drawing inspiration from the PriiMiium V1.


Other updates:

- Shoulder buttons and triggers are incredibly difficult to model/conceptualize for me, any and all advice or links to worklogs or whatever would be so appreciated I'm struggling.

- I successfully modded my wii sensor bar with a USB-A cable! It was actually quite simple, steps/pics below. Let me know if I should copy this to the Guide Hub.
1) open the sensor bar by unscrewing the 6 tri-wing screws (4 visible, 1 under each pad on the outer ends).

2) There are apparently different revisions with different numbers of LED's, so be sure to check all of these values with a multimeter before continuing.
- Check that there are 5 LED's on each side of the sensor bar.
- Check Vf of each LED: ~1.06v (can often be measured with the diode setting, which is sometimes combined with the continuity setting on your multimeter)
- Check resistors: ~24 ohms each

1705564665721.jpeg


3) Remove 2 of the 5 LED's from each side, leaving 3 per side (6 total). Bridge the vias for the removed LED's only.

1705564688194.jpeg
1705564720651.jpeg


4) Replace the 24 ohm resistors with 33 ohm resistors. You might be able to get away with the lower value 24 ohm resistors, but I was working with a trial and error model working down from higher resistor values and found 33 ohms worked just fine - and with a higher resistance (and therefore lower current) the LED's are likely to last longer.

5) Use any usb 1.0-2.0 cable (or make your own!) and wire the red and black wires to the +/- terminals pictured below - they are labeled, so double check before soldering! (They're only on one side, not both PCB's). The data lines can remain disconnected, just make sure they aren't shorting anything!

1705564767018.jpeg


6) Reassemble, plug in, and use as normal!

1705565433605.jpeg

- Other misc. pics of updated 3D models below. Added buttons/dpad, changed speaker through holes from hexagonal to 2 rows, edited standoffs/brackets. Struggling with shoulder buttons, as mentioned above :/
1705565114608.png
1705565136647.png

1705565165240.png
1705565239006.png
 
Last edited:

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
Update, 01/20/24: a (mostly) successful trimming start!

Most of today was spent working on my first ever OMGWTF trim, which went pretty well. A slight adjustment removes the audio amp as well, which isn't really used regardless. Unfortunately I was unable to test, given that I don't have any 34awg wire to wire the relocated u10 to the gpu pin. Resistances look good tho.

IMG_1787.jpg
IMG_1788.jpg

IMG_1789.jpg
IMG_1790.jpg

1705811499427.png



Also managed to successfully remove the sensor bar port from the AV out port to be used as the dock connector later:

1705811396991.jpeg
1705810471818.jpeg
1705811384443.jpeg


I may have unfortunately trimmed to close to the components on the underside of the MX chip, though hopefully the only replacement I need to do is R60 which is a 1k Ohm resistor. If I got too close to diode D31, @loopj has very kindly provided the forward voltage measurement (217mV).

And finally, tomorrows to-do list, and a pic of All the Bits: OMGWTF trim, bluetooth module, MX chip, AV out (dock connector), and the 128gb microSD card I'm using for this build.
To Do:
[X] Check MX chip, fix if needed As suspected, can just add a 1k resistor between B+ and D31
[ ] Superglue swiitch-side connector/PCB for added support
[X] Get those damn GCC ports off to reuse in the dock Took me 45 min but i got there
[X] Trim/drill/mark WiiHDMI pcb for use on dock-side connector, mark swiitch-side connector (double-check continuities)
[X] Grab an ESP-32 for BlueRetro; start brainstorming dock construction
[X] Check for some 18650's, which I may not have to buy! womp womp i gotta buy em
[ ] Set up lab station: get the digital multimeter, figure out if i can control the 4 individual bench PSU's over USB (they have ports), bring over iron/tips/hot air/magnifier/22AWG wire/Box O' Stuff from the hub
[X] Grab the composite-accepting display from an undisclosed equipment closet for testing (eventually)
[X] Order from Amazon: 34AWG wire, DSL buttons
[X] Order retroid pocket sticks. Found some potentially good knockoffs on AliExpress, ordered for half the price :)
1705810715816.jpeg
 
Last edited:

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
Update 02/02/2024: Lots of changes made!

First and foremost, adjusted case design below. I realized that my first few case iterations were very wide and very short... so I present v2.0!

1706850846692.png
1706850881046.png
1706851002489.png


More normal proportions, but a much tighter workspace as well... Which is where KiCad comes in! I've successfully conceptualized one PCB with kicad, but of course scrapped that case design, so will be doing it again. However, implementing custom PCB's (~4 of them) and ribbon cables will not only make the assembly as a whole much easier, it'll look nicer too! More info to come on those, but for now, the outdated one:

1706851172618.png
1706851192703.png
1706851211392.png


Also, a huge thanks to @YveltalGriffin (once again) for lots of circuit help - I'm going to attempt an internal wiimote (trimmed) that is configured to be used sideways with tilt-controlled games like NSMBW, Newer SMBW, Kirby, etc., and with that, a circuit to allow joystick or inputs instead of just the dpad for "wiimote mode!" Thanks to @JacksonS as well for pioneering much of the info that I've used so far to guide my own examination of the wiimote.

Other misc. good news:
- 4LT order is here! Thanks to all 4LT staff!!
- Dual tacts and AVEflex boards are here from Yveltal! Thanks to Yveltal once again, and surely more in the future :)
- Joysticks, 34awg wire, esp32 (for blueretro), battery holder, and a couple other random parts have been procured
- 34awg wire has allowed me to finish the u10 relocation, but I can't test yet as I still need lab access (for psu's)
- While the original orientation for the display driver board is unfortunately not going to work, it shouldn't be a huge deal
- The original Wii heatsink should be useable, if trimmed properly. I have ideas that I have to flesh out a little more with that

Until next time!
 

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
Update 04/03/2024: Final Designs, Completed Models, Optimizations and Adjustments

It's definitely been a while, but I have been busy I promise. Pretty much everything is detailed below.

Thanks to:
- @DeadTreeCarcasses for posting a .step version of an omgwtf trim
- @YveltalGriffin for circuit help, specifically on the hot plug detect for headphone sense spoofing
- @Y2K for dual tact 3D model
- @VoxelTek for updated 4LT footprints and 3D models
- @Gman for usb-c receptacle PN, added to VoxelTek's PD3 model

Completed:
- 3D models (primarily bottom half of the shell and triggers, with a few brackets here and there)
- PCB designs (ordered, waiting on arrival)
- MX/Bluetooth relocations
- Trimmed wii heatsink to fit in the portable design
- Scrapped internal wiimote, due to time and space constraints

List of final features:
- suite of 4LT boards, including: GC+2, PMS2, PD-3, RVL-AMP, 5" IPS display & driver
- DSL buttons and dpad
- Hall effect joysticks (thanks to @thedrew for finding those)
- Custom PCB's, mostly for ease of assembly and access, with only ribbon cables crossing halves in the case
- External buttons for power/reset/sync, vol+/-, screen OSD
- Wii AV out port for a dock, with custom pinout including 4x GCC data lines, RGBHV, AR/AL, 5v, 3v3, 2x GND

[X] Remove USB-C chamfer
[X] Add screw holes in bottom shell
[X] Implement clips where screws not possible
[X] Double check/move Wii mounting points
[X] Bodge a bracket for my weird OMGWTF trim (I cut off a mounting hole I could and should have kept)
[ ] Inset OSD buttons further if possible
[ ] battery clips/contacts - order/implement in model

[X] Find a place for the LED (opposite the Start button would look best but require crossing wires, unless i tap into the extra NC lines on the GC+2 pcb's FCC...)
[ ] Maybe add a "mode" switch to toggle to composite? theres a good place for it bottom right.... we'll see
[ ] Adjust case files for printability and ease of assembly
[X] Re-order a speaker (broke one)
[X] Edit heatsink solution, make a little thinner (got a small copper sheet for free)
[ ] Put it all together!
[X] Bodge SYNC - switch connects to GND, needs 3v3
[X] ground the MX chip
[X] Re-check resistances
[ ] Test **USE COMPOSITE, ENABLE VGA**
[ ] Troubleshoot. Probably a lot.

Before I release kicad and stl/step files for this build I plan to go back through and organize everything a little more efficiently, but for now here's some pics:

image.png
image1.png
image2.png
image3.png
image4.png
1712175451109.png
1712175516808.png
1712175548075.png
 
Last edited:
Joined
Oct 27, 2022
Messages
79
Likes
61
Update 04/03/2024: Final Designs, Completed Models, Optimizations and Adjustments

It's definitely been a while, but I have been busy I promise. Pretty much everything is detailed below.
This is so sick seeing everything come together. Thank you for the help yesterday as well!
 
Joined
Sep 27, 2016
Messages
423
Likes
916
Love all the 3D modeling! I don't have the patience for that myself lol
 

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
Love all the 3D modeling! I don't have the patience for that myself lol
lol yeah it can definitely get super tedious, but the most complicated models are mostly downloaded. Soooooo much outsourcing. GrabCAD, Digikey, the forums, etc. and of course the .step exports from kicad for the PCB's. Definitely worth it tho imo :)
 

Wrn_

.
Joined
Jan 13, 2023
Messages
14
Likes
27
Update 04/17/24: Beginning Assembly, Planning a Revision

Short post, mostly for my own reference in the future, but here's a bunch of pics of things getting assembled, and then a checklist/wishlist of things to include or change in a potential revision

IMG_2173.JPG
IMG_2180.jpg
IMG_2182.jpg
IMG_2198.jpg
IMG_2201.jpg
IMG_2202.jpg
IMG_2203.jpg
IMG_2204.jpg
IMG_2207.jpg



- use better zifs for fcc's, the ones i picked suck and have hidden gnd pads that you have to solder with hot air from the opposite side to avoid melting the connector
- redo the bottom PCB at least: make it a 4 layer, maybe use both sides for connectivity/IO to make use of the real estate, flip fcc's for accessibility, fix needed bodges, implement extras like powerstrip and periphlex for plug-and-play wii connectivity, use MXhound, maybe a ribbon/flex for video (wii/driver/pcb) as well... unless DD...........
- also for this pcb, consider using both sides more fully for extra room a more compact footprint
- and finally use a proper switching IC for all of the HPD features (gcc ports, dock vs integrated AV, etc)
- make sure i get the proper copper finish on the button contacts, add pads for vol +/- on the RVL-AMP board. soldering to fcc pins sucks.
- implement LED pads/pcb placement by the dpad, use those nc pins to run it through the ribbon
- implement mode switch for composite/vga (room on bottom right)
- simplify the case design - there's way to many brackets, lips, clips, etc. that could be consolidated and better constructed the second time around, maybe with a slightly taller design for more room around the batteries/triggers. Also the case having to be split so unevenly to accommodate all the ports is a little weird, that could be done better.
- make some actual mounts for the driver board, right now the plan is to just kinda throw it in there. might be easiest to make another flex or use joined parallel shielded cable to run the video signals for that. unless DD...........
- maybe do a transparent resin case - modeling with the shell in "transparent" mode looks really cool, itd be awesome to have that in the build. If doing this, definitely get some cool art on the back of the bottom PCB.
- battery clips
- use better buttons for bumpers, using the Wii ones is cool and kinda novel but there's definitely other small clicky buttons you can get for dirt cheap that would be easier and more consistent to find. Could also use these for other interface buttons if they have a smaller footprint.
- use tacts, not membranes
- use a standard heatsink, trimming the wii heatsink is a lot of effort for a part thats less than $5 USD
- adjust dock solution - straight digital hdmi out would be a step up with fujiflex or electronAVE, would then need a separate 4pin connector for the GCC ports (e.g. usb) but would be better video output. as much as i love the look and robustness of the av out port its just a lot of space for not a lot of pins. could still do something unique tho, maybe usb-c + hdmi + pogo for the gcc pins or something.

TL;DR:
Lots of cleanup, lots of community projects to add, this could eventually make for a decent kit if i pull through with the revisions. In the mean time, once this project is done i'm gonna take a break and go mod my iPod.
 
Last edited:
Top