Alex Haydock Saves a Nintendo Wii From the Scrapheap — and Turns It Into a NetBSD Web Server

Some homebrew hackery gives one of Nintendo's most popular console a new purpose in life.

Gareth Halfacree
2 months agoRetro Tech / Upcycling

Security engineer Alex Haydock has set up a server for a new website, which would not normally be worthy of news coverage — if it weren't for the fact it's running on a Nintendo Wii, saved from the scrapheap courtesy of the Swap Shop at the last Electromagnetic Field festival.

"Did you leave your [Nintendo] Wii at the EMF2 024 Swap Shop? If so, it's now hosting my blog," Alex Haydock explains of the project. "For a long time, I’ve enjoyed the idea of running general-purpose operating systems on decidedly not-general-purpose hardware. What a lot of [existing] systems have in common is that they’re now very outdated. Or they're hobbyist ports that someone got running once and where longer-term support never made it upstream."

Having discounted projects including Dreamcast Linux and PSPLinux, for the Sega Dreamcast and Sony PlayStation Portable respectively, for these very reasons, Haydock's interest was piqued by the discovery that NetBSD, well known for its broad support, has an official installer for the Nintendo Wii. "As soon as I discovered this was fully supported and maintained, I knew I had to try deploying an actual production workload on it."

Released in 2006 as the must-have toy, the Nintendo Wii was a games console with an innovative motion control system based on an infrared receiver held in the hand and a connected joystick — the Wii Remote and Nuchuck. Inside the compact housing was an IBM Broadway, a PowerPC G3-based processor running at 729MHz, plus 24MB of high-speed 1T static RAM (SRAM) and 64MB of GDDR4 memory for a total of 88MB.

Those aren't great specifications — despite its overwhelming popularity, the Wii was by far the least powerful of its generation's mainstream consoles — but they're enough. Finding a "sacrificial Wii" that had been left at the Electromagnetic Field Swap Shop, Haydock set about jailbreaking its operating system and setting it up to boot from an SD Card with NetBSD installed. Once installed, there was only one thing to do: turn it into a working web server.

"I have Caddy acting as a reverse proxy to the Wii, handling encryption and cert[ificate] management with ACME," Haydock explains of the final setup. "Importantly, there are no caching options enabled in Caddy. Every request the site serves is being serviced directly by the Wii. I optimised as much as I could, but this page is still almost exactly 1MB when all of the content is loaded.

"The Wii has handled this far better than I expected, honestly," Haydock adds of the performance. "We've settled in to an average rate of approx 10 requests-per-second, down from a peak of 40. Almost all responses are taking less than 0.1 seconds now, though the heatmap suggests it was struggling a bit more when we were up at 40 per-second."

The full write-up is available served from the Wii itself, with more information on performance available on his Mastodon thread.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Get our weekly newsletter when you join Hackster.
Latest articles
Read more
Related articles