Reverse Engineering Nintendo LABO Waveform Cards

Use an oscilloscope emulator, a handful of audio samples, and a 3D-printer to create Waveform Cards for use with Nintendo's ToyCon Piano

Similar projects worth following
Nintendo LABO's ToyCon Piano uses an infrared camera to digitize physical "Waveform Cards" into usable synthesized instruments.

Seeking to push the contraption to its limits, I designed and 3D-printed 18 custom Waveform Cards based on common periodic waveforms (square, sawtooth, sine...) and several more based on samples of real life instruments (Organ, Celesta, Clarinet...).

So you bought your first Nintendo LABO kit, carefully folded each cardboard key and button into shape, and now you have... a toy piano?

I guess that's cool... but what else can it do?

With a little patience and a 3D-printer, you can capture any periodic waveform in a waveform card, scan it into Nintendo LABO, then use your new instrument to create music.

I started by making cards based on simple waveforms such as pulse, triangle, and sine waves, but then realized I might be able to capture other instruments - a pipe organ and a clarinet for example.

Determined to push things even further, and seeking to bring the whole "Nintendo" thing home, I sampled instruments from various Super Nintendo games and used them to make 4 more cards.

And, for whatever reason, I couldn't stop there.
I decided to make 5 more cards based on the 5 vowel sounds.
By layering these sounds, I was able to (very roughly) approximate human speech.

3D-printable .STL files as well as laser-cuttable .SVG files for all 18 cards are available in the download section of this page.

Waveform Card Pack

STLs/SVGs for Waveform Card Pack 1 (12.5% Pulse, 25% Pulse, 50% Pulse, Celesta, Clarinet, Organ, Sawtooth, Sine, Triangle)

x-zip-compressed - 452.75 kB - 10/05/2018 at 22:29


Waveform Card Pack

STLs/SVGs for Waveform Card Pack 2 (Choir Ah, Choir Ee, Choir Eh, Choir Oh, Choir Ooh, F-Zero Gnarly Bass, Kirby's DL3 Synth Bass, Kirby's DL3 Tuba, Super Mario RPG Reed)

x-zip-compressed - 1.18 MB - 10/05/2018 at 22:29


  • Extrusion Confusion

    Hunter Irving10/06/2018 at 04:41 0 comments

    On my first waveform card video, a viewer asked if the 3D-printed cards explicitly had to be white to be recognized by the Switch's infrared camera. To me, this seemed like a definite "no" - the camera was just detecting the card's shape, and it couldn't even see light in the visible spectrum.

    To answer their question (and to spice things up a little bit - those white cards were starting to look a little drab), I decided to print the cards for this second video using red and yellow filament.

    ...but when I looked at the cards through the Switch's infrared camera, I noticed that they were letting a lot of light through, and images looked a little "muddier" as a result.

    Here's one of the original white cards seen through a yellow card.

    In the end, I decided to go with white filament for these 9 new cards, which seemed to produce marginally crisper reads.

    Luckily, I had just barely enough white filament left on hand to make it happen.

  • An Original Song (That You Can Download For Free)

    Hunter Irving10/06/2018 at 04:17 0 comments

    Here it is, the hit single that's rising in international pop charts, Hunter Irving's "I Like You".

    Created entirely using Nintendo LABO and custom 3D-printed Waveform Cards.

  • On Speech Synthesis Using Composited Periodic Waveforms

    Hunter Irving10/06/2018 at 04:15 0 comments

    Four minutes and fifty-nine seconds into my second LABO video, I hit on a popular question that many viewers seemed to have:

    Would it be possible to create a Waveform Card that approximates human speech?

    To begin with, this felt like a solid "no" to me - if you've ever watched human speech on an oscilloscope, you know that the waveform produced is far from periodic.

    However, I noticed that the five vowel sounds ("Ah", "Ee", "Eh", "Ooh", and "Oh") did produce roughly periodic waveforms when spoken alone.

    I made 5 more cards using samples from FL Studio's built-in speech synthesizer, and the results (even when digitized by the Switch's low-resolution infrared camera) were fairly impressive.

    In a fervent, last-ditch effort to make speech synthesis on Nintendo LABO ToyCon Piano happen, I spent a while layering component vowel sounds in an attempt to approximate human speech.

    The results weren't perfect, but with subtitles, I think you can hear what I was going for.

    ("I Like You" breaks down to "Ah-Ee Ah-Ee-(staccato "Eh" to make a "K" sound) "Eh"-(that blends into)-"Ooh")

    I tried.

    - Hunter

  • On the Joys of Open-Source

    Hunter Irving10/06/2018 at 03:44 0 comments

    When I made the files for this project available on, I had no idea so many people would find them useful.

    I guessed that most who downloaded them would use the provided STL files to make 3D-printed cards as I had, but it seems that the SVGs I included turned out to be much more popular:

    Reddit user compacta_d used a Kongsberg cutting table to cut these cards from E flute corrugated.

    Reddit user AchillesPDX used a hobby laser cutter to cut these cards from cardboard.

    Bigtime YouTube channel Melody Geeks even used a few of them in some of their LABO cover videos.

    Knowing that other people were able to gain something from my project is a pretty great feeling.

    Look forward to more open-source projects from me in the future!

    - Hunter

View all 4 project logs

  • 1
    Ride the Wave

    Once you've found a sound you'd like to sample, pump it through an oscilloscope emulator for visualization (I like Soundcard Scope).

    LABO treats each waveform it reads as a periodic wave, so your waveform needs to remain roughly unchanged between periods.
  • 2
    A Clean Slate

    A "blank waveform card" template (.SVG) is provided with Waveform Card Pack 1 (see download section).
    Use this to carve out the shape of your chosen wave (Inkscape is my vector graphics editor of choice).

  • 3
    Carve it Out

    Using boolean operations, remove negative space until you're left with a positive "top" to your waveform card.

    If you put your mind to it, you can make a lot of different cards.

View all 5 instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates