How To Install The Homebrew Channel To Nintendo Wii

My wife’s Wii has been languishing on a shelf for the past several years, so I wanted to breathe a little life back into it. Ever since the NES Classic launched a wave of “mini” self-contained consoles, I wanted to extend that kind of convenience to all the consoles in our collection. There’s a much different experience playing a game on something resembling the original hardware than there is using an emulator on a PC, but I wanted to be able to do it without the wear and tear on optical drives or having to worry about damaged discs. So, I decided to install a USB loader on the Wii in order to be able to play those discs from backups stored on a hard drive and keep the originals in their cases for posterity!

Installing The Wii Homebrew Channel using str2hax

There are several different ways to install The Homebrew Channel on the Nintendo Wii, but this guide will be using str2hax since I don’t have an SD card available at the moment. (I’ll fix that soon.)

In the Wii settings menu, click on “Internet”, then “Connection Settings”, then your current connection.

From there, select “Change Settings” and skip forward until you reach the DNS settings (“Auto-Obtain DNS”) menu. Select “No” and then click “Advanced Settings”. Type in 18.188.135.9 as the primary and secondary DNS. Press “OK” and perform the connection test. If the connection was successful, you can click “No” to skip the system update.

Go back to Internet settings, then click “User Agreements”, then “Yes”. The system will appear to freeze for a couple of minutes. This is normal. In about 1.5-2 minutes, you will get a screen featuring a pixelated Rainbow Dash taking a nap. Welcome to the HackMii installer. Click “I ACCEPT” and wait for the installer to download.

After another few minutes, you will get a warning screen declaring that the software you are using is to be distributed free of charge and is not allowed to be exchanged for money. Thirty seconds later, “Press 1 to continue” will flash on the screen. Press 1 to continue.

On the Hackmii installer main menu, highlight “Install the Homebrew Channel” using the D pad, and press A to select. Select “Continue” once the installation is finished. At this point, I would install BootMii, but my SD card was having problems. I opted to skip this step and revisit it later once I knew my SD card worked, so for now, select “Exit”. (BootMii can be installed by launching the Hackmii Installer from The Homebrew Channel.)

Install Priiloader for brick protection

Since BootMii didn’t want to install yet, I opted to install Priiloader to have a level of brick protection. This application is a custom bootloader that allows you to select how you want the Wii to boot (either to stock system menu or to any number of bootable apps you can install). It also allows you to run recovery discs in case of a bricked system, so it’s pretty invaluable when embarking on this hackery nonsense. The trick to using any old SD card is making sure that you do a full (overwrite) format as FAT32. Once that’s formatted, you can download the Priiloader installer from GitHub, unzip the archive, and drop the “apps” folder into the root of your SD card.

A note about the Wii SD card

Homebrew apps on the Wii SD card live in a folder called “apps” in the root directory. Inside the “apps” folder, each app will have its own folder, and each app folder will contain a “boot.dol” or “boot.elf” file, an “icon.png” file, and a “meta.xml” file. If you’re having trouble with any Homebrew apps, check to make sure all these conditions are met.

Install Priiloader through The Homebrew Channel

Insert the SD card into the slot on the front of the Wii and launch The Homebrew Channel from the system menu. Click the Priiloader Installer and follow the directions on the screen. Once you return to The Homebrew Channel, power off the Wii.

Configure Priiloader

To boot into Priiloader, hold the RESET button while powering on the Wii. Once Priiloader loads, you can release RESET. For the initial configuration, highlight “System Menu Hacks” with the D-pad and select with A. For the initial configuration, enable “Region Free EVERYTHING”, “Block Disc Updates”, “Block Online Updates”, “Auto-Press A at Health Screen”, and “Replace Health Screen with Backmenu”. Save your settings, the press B to return to the main menu. Highlight “System Menu” to boot to the Wii home screen.

How To Install USB Loader GX on Wii

Now that we have The Homebrew Channel available to us, we can install a few niceties that can breathe a little life back into the unsupported mid-aughts console. First among these, we’ll need the ability to run custom firmware for the Wii (referred to as IOS). To do this, we’ll need the dx2 cIOS Installer. Download the application, unzip the archive, and place it in the apps folder of the SD card. Once the SD card is in the Wii, you can run the installer from The Homebrew Channel.

Install custom firmware on the Wii

Once the application loads, press A to continue, then match the settings as seen below:

Select cIOS: v10 beta52 d2x-v10-beta52

Select cIOS base: 57

Select cIOS slot: 249

Select cIOS version: 65535

Press A twice to install, then press A again to install the next cIOS:

Select cIOS: v10 beta52 d2x-v10-beta52

Select cIOS base: 56

Select cIOS slot: 250

Select cIOS version: 65535

Again, press A twice to install, then press A again to install the final cIOS needed:

Select cIOS: v10 beta52 d2x-v10-beta52

Select cIOS base: 38

Select cIOS slot: 251

Select cIOS version: 65535

Press A twice to install, then B to exit once completed.

Install USB Loader GX through Homebrew Browser

Download Homebrew Browser and place on the SD card like with the previous apps. Back on the Wii, launch The Homebrew Channel and select Homebrew Browser. At the very least, you’ll want to install USB Loader GX, Wii Mod Lite, and Nintendont. USB Loader GX is a full-fledged system menu replacement for Wii (and can be launched at boot through Priiloader) that will launch backup titles from a USB hard drive as well as install games to the hard drive. Wii Mod Lite will let you install custom channels to the system menu. Nintendont works inside USB Loader GX to handle launching GameCube games. Both apps are listed under the “Utilities” heading and should be at the very top (sort by popularity). Once the apps are installed, you can exit the Homebrew Browser.

A few notes about using USB Loader GX

USB Loader GX can be launched from the Homebrew Channel or through Priiloader. To launch from Priiloader, you’ll have to point the “Installed File” setting to the application and set the auto boot to “Installed File”.

The loader takes a few seconds longer than the stock Wii system menu to load because it’s checking for a USB hard drive. Also: make sure to use a USB hard drive. Flash drives tend to not work with USB Loader GX.

If a game does not load from the hard drive, try using a different cIOS. Select the problematic game, then click “Settings”. Click “Game Load”, then “Game IOS”. Enter the IOS you wish to try (249, 250, or 251), then click “OK”. Return to the banner screen and attempt to load the game. If the game doesn’t load, rinse and repeat. GBATemp has a pretty extensive compatibility list available here.

Installing USB Loader GX as a channel

If you prefer to keep the stock system menu on the Wii, you can still easily load USB Loader GX as a channel (saving you the step of having to go through The Homebrew Channel to launch). To do this, you’ll need to install the forwarder WAD. Download the WAD from the website and drop it in a folder called “wads” on your SD card. From The Homebrew Channel, launch Wii Mod Lite. Use the D-pad to select “WAD Manager”, then navigate to the wads folder on the SD card. Highlight the WAD file that you want to install and press A twice to install. Once installed, use the HOME button to return to the system menu. USB Loader GX will now appear as a channel!

Restoring Wii Online Services With RiiConnect24 and Wiimmfi

There is something kinda fun about those early internet apps that landed on the Wii. They’re definitely not worth anything more than historical curiosity at this point, but I think they’re still worth having around for play with. Then again, I like to use a 40-year-old luggable to play games on because it’s interesting, so maybe I’m not the best judge of this.

Restore online services with RiiConnect24

First, hit up the RiiConnect24 GitHub and download the latest version of the WAD patcher. It’s a pretty straightforward endeavor from there to just run the batch or sh file (depending on your OS flavor preference). Just follow the directions and be patient.

Once the patcher has done its job, return your SD card to the Wii and launch Wii Mod Lite from the Homebrew Channel. Like we did with the USB Loader GX channel WAD, select the files you want to install, then press A twice to install the batch. One thing to note: there may be an update to one of the service channels listed in the batch with the base channel WAD. Do NOT attempt to install the update WAD with the batch as it will likely fail. Exclude the update, install the batch, then install the update WAD. If you forget, you’ll need to uninstall both the update and the base WAD, then install one at a time.

Patching Wii Mail

From the Homebrew Channel, launch the RiiConnect24 Mail Patcher. Follow the instructions on screen, then press HOME when it’s finished. You’ve got mail!

Connecting to the new servers

Just like we did for str2hax, we’ll need to change the Wii’s DNS servers. Go to Wii Settings, Internet, and Connection Settings, then scroll to the “Auto-Obtain DNS” page. Select “No” then “Advanced Options” and enter 164.132.44.106 as the primary DNS and 1.1.1.1 as the secondary DNS.

Click “Confirm” and “Save” then “OK” to perform the connection test. Of course, don’t update the Wii.

Return to the Settings menu, and select “WiiConnect24” to make sure that “WiiConnect24” and “Standby Connection” are both enabled.

Finally, return to the “Internet” section and read/agree to the User Agreement.

Enable Wiimmfi for online play

Since Nintendo shuttered the Nintendo Wi-Fi Connection, officially-sanctioned online play has been dead. However, thanks to dedicated fans of the system, robust online play still exists on Wiimmfi’s private servers. You’ll need to enable these in a few different places:

For disc-based games, you’ll need the Priiloader patch. Launch Priiloader by holding RESET and powering on the Wii. Select “System Menu Hacks” and enable “Wiimmfi Patch v4”. Save settings and exit.

For games loaded from hard drive, USB Loader GX has support for Wiimmfi built in. The global loader options will have a selection for “Private Server” that can be set to Wiimmfi. Save those settings and USB Loader GX will patch each game when it runs!

For WiiWare titles, you can use the RiiConnect24 WAD patcher as described above, then reinstall the patched WAD with Wii Mod Lite.

How To Install Android Apps On Windows 11 Without Amazon

Microsoft has really leaned into the whole open source world since Staya Nadella took over in 2014, and that’s been pretty wonderful if you ask me. I am completely enamored with their use of GitHub for developing Windows modules, and especially with the Windows Subsystem for Linux that lets me run all my favorite Linux tools right from the convenience of Windows Terminal (which is also pretty awesome, by the way). While Apple has doubled-down on the closed-off, walled-garden ecosystem that they’ve been working on since the debut of the iPhone, Microsoft has gone in the opposite direction (to great benefit), embracing the same kinds of interoperability with Android devices through the Your Phone app. The only piece of the puzzle that’s been missing is the ability to run Android apps directly on the desktop which is where the new Windows Subsystem for Android comes in. Unfortunately, the system is immediately hobbled by having only the Amazon app store available, so we’ll need a way to get any and all apps (and app stores) installed. I generally prefer starting from the Google Play store (which has its own caveats, of course), so we’ll need to go through an alternative installation process to set up WSA rather than the straightforward installation via the Microsoft Store.

This tutorial is based on work previously put together by the WSA Community on GitHub with my own commentary to clarify or expand on the subject matter.

Install Windows Subsystem for Android and Windows Subsystem for Linux from the Microsoft Store

The first step in getting the Google version of WSA is to install the stock version (with Amazon) from the Microsoft Store. There are several dependencies that WSA requires, so this is the quickest and easiest way to have them installed on your machine. Once WSA is installed, you can skip signing into the Amazon App Store and uninstall the stock WSA.

To compile a custom version of WSA, we’re going to need a few tools that run exclusively in Linux (Android being based on the Linux kernel, but you knew that). Grab your preferred flavor from the Microsoft Store. I’m using Ubuntu because that’s the one I’m most familiar with (being my daily driver for half a decade). Once you have WSL installed, open a PowerShell terminal and type wsl --list --verbose to verify that your distro is running WSL version 2. If, for whatever reason, your distro is running WSL version 1, you’ll need to stop the WSL with wsl --shutdown and type the following command:

wsl --set-version <distro name> 2 where <distro name> is the name of your distro as listed when you ran the –list command earlier. This will take just a few moments, and you’ll be ready to continue!

Install Linux packages

If you’ve already set up your Linux distro as a tab in Windows Terminal, good on you! Open that tab and get ready to Bash. For the rest of you, start your distro by invoking the following in a PowerShell terminal:

wsl -d <distro name>

Now you’ve got your Linux distro up and running, so the following commands will be entered at the $ prompt (instead of the Windows > prompt):
sudo apt update
sudo apt install unzip lzip

Prepare Installation Folder

Back in Windows Explorer, create a folder at C:\WSA. This is going to be the working folder for our installation. Now, we need to download the installation package. However, since we’re going to be modifying the package, we can’t just grab it from the Microsoft Store (that’s what we did earlier). You’re also going to want to install a Zip archive manager like 7Zip or PeaZip.

Download the WSA installation package

We’re going to use a link generator service to get the installation package from the Microsoft Store’s repository. Navigate to https://store.rg-adguard.net and enter the following settings before clicking the check mark:

ProductID: 9P3395VX91NR

RP: Fast

You’ll be presented with a list of all the files related to that Product ID, but we’re looking for the *.msixbundle file extension associated with WindowsSubsystemForAndroid. The file should measure around 1.3GB. Download the package file to your C:\WSA folder and open it with your Zip manager. You’re going to see a lot of files with the *.msix extension, but sort them by size to find the biggest files. Find the one that matches your OS architecture (for example, WsaPackage_X.X.XXXXX.X_x64_Release-Nightly.msix for a 64-bit Windows) and extract it.

Now, extract the contents of the *.msix file to a new folder within C:\WSA. Locate and delete the following:

“AppxBlockMap.xml”

“AppxSignature.p7x”

“[Content_Types].xml”

and delete the “AppxMetadata” folder.

Download OpenGApps

Navigate to https://opengapps.org/ and download the Android 11.0 Pico variant for your architecture.

Save the Zip file in the C:\WSA folder, but don’t extract it.

Clone the GitHub Repo and Populate Directories

Fire up your WSL distro and mount your C:\WSA directrory so you can clone the WSAGAScript repo by running the following at your WSL ($) prompt:
cd /mnt/c/WSA
git clone https://github.com/WSA-Community/WSAGAScript

(NOTE: If this repository fails, I have a fork at https://github.com/airbornesurfer/WSAGAScript)

In Windows Explorer, go back to your extracted WsaPackage folder (the one you deleted files from earlier) and copy the following files into the C:\WSA\WSAGAScript#IMAGES folder:

product.img

system.img

system_ext.img

vendor.img

Lastly, copy the GApps Zip file downloaded earlier into C:\WSA\WSAGAScript#GAPPS (again, do not extract it).

Create the New Installation Package

Check the “VARIABLES.sh” file to verify that your architecture is set correctly, then set the permissions for the scripts that will create the new installation images. From your WSL terminal (you should still be in mnt/c/WSA/WSAGAScript), invoke the following command:

chmod +x *.sh

You can verify the scripts are now executable by invoking ls -l and checking that the *.sh files show “-rwxrwxrwx”. If all is set, then execute the scripts by invoking the following:

./extract_gapps_pico.sh
sudo ./extend_and_mount_images.sh
sudo ./apply.sh
sudo ./unmount_images.sh

Once complete, move the *.img files from the C:\WSA\WSAGAScript#IMAGES folder back to the WsaPackage folder you previously copied them from.

Register the New Installation Package and Install

Open Windows Developer Settings (search “Developer Settings” from the Start Menu) and enable Developer Mode. Close Windows Terminal and open a new PowerShell Terminal as Administrator, then invoke the following command: Add-AppxPackage -Register <path-to-extracted-msix>\AppxManifest.xml where <path-to-extracted-msix> is the path to the WsaPackage folder inside C:\WSA.

WSA will now install with GApps. Once complete, sign into the Google Play Store and install “Android System WebView” to make sure your apps don’t crash.

2014 Mazda CX-5 Maintenance

The Mazda dealership wanted about $1000 to change the oil, the air filters, the spark plugs, and clean the corrosion off the battery terminals. I laughed and declared that I, too, own a set of wrenches!

I must note that I do prefer Mazda doing the oil change. It saves me time and effort, and I don’t have to worry about being under the car if the ground starts shaking. Yes, please, put the car on a lift, check the brakes, top off the fluids, and do your factory walkaround while I get some paid work done! I’m just not going to pay you a premium to do easy maintenance work. Don’t get fleeced by the dealership, and save your mechanic’s time and expertise for the big jobs!

How To Change Spark Plugs

The 2014-2020 Mazda Skyactiv engines feature a plug-on-coil design that makes changing plugs incredibly simple. Just remove each coil pack but removing the retaining nut with an 8mm socket and lifting the coil pack off the plug well. Use a 14mm deep socket on an extension to reach the plug and unscrew it from the cylinder, then replace the old plugs with new NGK Iridium IX plugs. (As best I can tell, the OEM Mazda plugs are NGK Iridium plugs). Carefully reseat the coil packs on the plugs and replace the retaining nuts.

How To Change The Engine Air Filter

Find the air box (in this car, it’s at the front of the engine compartment on the driver’s side) and unclip the retaining clips to open. Remove the old filter and replace it with the new one (making sure the air is flowing in the correct direction). Reseat the air box lid and replace the clips.

How To Change The Cabin Air Filter

The cabin air filter is almost universally located behind the glove compartment. Open the glove compartment and squeeze inward on the sides to remove. Locate the cabin air filter, then simply remove and replace. Gently replace the glove box, making sure the hinges are aligned.

How To Clean Battery Terminals

I didn’t make a video for this part of the project because it seemed too much a waste of my time and yours. Auto parts stores sell an aerosol battery terminal cleaner that reacts with acid to neutralize it. Follow the directions on the can, then rinse away (in a manner conforming to local EPA regulations–don’t let it wash into a waterway). Just be sure that your cells aren’t exposed or you could neutralize all the electrolyte in the battery, rendering it intert.