Skip to the content
PCBKitNew board
2 layers10.3 × 23.3 mmMini receiver, the printed circuit board in 3D

Open-source implementation of the Nintendo WaveBird receiver using Silicon Labs Wireless Gecko SoCs

Size
10.3 × 23.3 mm
Copper layers
2
Thickness
1.2 mm
Parts
11
Nets
16
Pads
37
Tracks, vias
54, 32
Pours
2
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
24 Apr 2025
Updated
24 Mar 2026

Overview

Mini receiver is an open-source printed circuit board by loopj, from the loopj/wavephoenix repository on GitHub. It is a 2-layer board of 10.3 × 23.3 mm with 11 parts on 16 nets, routed with 54 tracks and 32 vias.

It is built around the TS-1187A-B-A-B. Its parts include 2 capacitors, 1 resistor, 1 IC, 1 diode and 1 connector. It belongs with the retro computing and games boards of this library.

Main components

1

README

README.md

WavePhoenix

Open-source implementation of the Nintendo WaveBird receiver using Silicon Labs Wireless Gecko SoCs

Discord

WavePhoenix

Motivation

The WaveBird controller is, in my opinion, one of the best controllers ever made. It is wireless, has an insane battery life, and is very comfortable to hold. The WaveBird set a new standard for wireless controllers. It was the first major console controller to use radio frequency (RF) technology, providing a reliable, lag-free connection that didn't require line-of-sight, unlike infrared controllers.

Unfortunately, Nintendo stopped producing the WaveBird more than a decade ago, causing a dwindling supply of controllers and, especially, receivers. Given the decreasing supply of receivers and the increasing resale prices, I decided to design my own from scratch.

Features

The reference implementation of WavePhoenix includes the following features:

  • Full compatibility with the original WaveBird controller
  • One-button virtual pairing, like modern wireless devices
  • Status LED to indicate pairing status and radio activity
  • Over-the-air firmware updates via Bluetooth
  • Open source hardware and firmware
  • 3D printable case

Buying a WavePhoenix

Don't want to build your own? A number of vendors are now selling pre-assembled WavePhoenix receivers!

Building a WavePhoenix

The bare minimum hardware needed to build a WavePhoenix is a EFR32BG22 radio module (such as the RF-BM-BG22C3), a GameCube controller connector, and 3 wires!

Since most people prefer a more streamlined solution, I designed a custom PCB and 3D-printable case called the Mini Receiver.

You can find detailed build instructions in the hardware/mini-receiver directory.

Firmware Components

The firmware for WavePhoenix is composed of the following components:

  • libwavebird - my implementation of Nintendo's WaveBird protocol for Silicon Labs Gecko SoCs
  • libjoybus - my implementation of the Joybus protocol used by N64 and GameCube controllers
  • firmware/app - the main app firmware; a reference implementation of a WaveBird receiver
  • firmware/bootloader - bootloader to provide over-the-air firmware updates via Bluetooth

Worklog

Check out the worklog for a detailed history of the development of the WavePhoenix project.

Special Thanks

  • Sam Edwards for his incredible WaveBird reverse engineering documentation, which was essential in getting this working
  • Jeff Longo - for his detailed GameCube controller protocol documentation
  • Aurelio Mannara - for open sourcing GC+, another great reference for the GameCube controller protocol
  • YveltalGriffin - for help and advice along the way, and helping me figure out those mysterious origin packets
  • piotref1 - for being the very first person to build a WavePhoenix receiver and provide feedback, a true early adopter!
  • Everyone in the incredible BitBuilt community for their support and encouragement throughout this project

License

WavePhoenix is a permissively licensed open source project.

The firmware is licensed under the MIT License.

The hardware is licensed under the Solderpad Hardware License v2.1.

Parts

11
QtyValueFootprintReferences
10.1uFCapacitor_SMD:C_0402_1005MetricC1
10805G (Green)project-footprints:LED0805-R-RDD1
1100RResistor_SMD:R_0402_1005MetricR1
110uFCapacitor_SMD:C_0402_1005MetricC2
1CTestPoint:TestPoint_Pad_D1.0mmTP4
1Conn_01x04_MountingPinConnector_JST:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_HorizontalJ1
1DTestPoint:TestPoint_Pad_D1.0mmTP3
1GTestPoint:TestPoint_Pad_D1.0mmTP1
1TS-1187A-B-A-Bproject-footprints:SW-SMD_4P-L5.1-W5.1-P3.70-LS6.5-TL-2SW1
1VTestPoint:TestPoint_Pad_D1.0mmTP2
1WIFI-SMD_15P-P1.00-L8.0-W8.0-P1.00_RF-BM-BG22C3project-footprints:RF-BM-BG22C3U1

Questions

How big is the Mini receiver PCB?

It measures 10.3 × 23.3 mm and has 2 copper layers, 1.2 mm thick.

What parts does the Mini receiver use?

11 parts, built around the TS-1187A-B-A-B. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Mini receiver KiCad files?

From the loopj/wavephoenix repository on GitHub, at the commit this page was made from: the board is hardware/mini-receiver/KiCad/mini-receiver.kicad_pcb and its schematic hardware/mini-receiver/KiCad/mini-receiver.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Mini receiver design in my own project?

Its repository states no licence, so its author keeps all rights: ask loopj before reusing the design.

Similar boards

  • 2 layers36.2 × 63.1 mmPicoMemcard pico, the printed circuit board in 3D

    PicoMemcard pico

    dangiu/PicoMemcard

    Emulating PSX Memory Card (or controller) using a Raspberry Pi Pico

    8 parts694GPL-3.0
  • 4 layers86 × 34 mmBsl drv v1, the printed circuit board in 3D

    Bsl drv v1

    jackw01/scanlight

    A better light source for scanning color negative film

    157 parts397CERN-OHL-W-2.0
  • 2 layers26.5 × 34.4 mmPicoLoaderNSB, the printed circuit board in 3D

    PicoLoaderNSB

    makeo/PicoLoader

    A cheap and easy to install modchip for the Nintendo GameCube!

    45 parts320GPL-2.0
  • 2 layers66.8 × 34 mmESP8266, the printed circuit board in 3D

    ESP8266

    MaloufSleep/ME-ESP8266

    Malouf Electronics - ESP8266 Dev Board

    127 parts204MIT
  • 2 layers139 × 59 mmEsp32s2-nixiehost, the printed circuit board in 3D

    Esp32s2-nixiehost

    cnlohr/cnixxi

    My experiment with nixie tubes.

    60 parts151MIT
  • 6 layers84 × 98 mmFujiNet-5200-Rev0, the printed circuit board in 3D

    FujiNet-5200-Rev0

    FujiNetWIFI/fujinet-hardware

    Schematics and design files for FujiNet hardware

    145 parts142
  • 4 layers70 × 70 mmAi camera, the printed circuit board in 3D

    Ai camera

    maxlab-io/tokay-lite-pcb

    Tokay AI Camera - ESP32 camera development board

    161 parts130CERN-OHL-P-2.0
  • 2 layers284.7 × 94.2 mmHE60, the printed circuit board in 3D

    HE60

    peppapighs/HE60

    60% Hall-effect keyboard

    332 parts118GPL-3.0