Bad Apple!! color VFD ver.

Bad Apple!! on the Noritake itron GU20X8-301 3-color VFD module

Similar projects worth following
New display device, gotta get Bad Apple playing on it, you know the drill...

This is the famous Touhou Bad Apple!! PV running on a Noritake itron GU20X8-301 color VFD module and an Arduino Mega. An SD card stores 30 FPS video and 16 kHz PCM audio. With a slight modification to its connector shell, the VFD module plugs directly onto the large header on the Mega board, with only a few extra wires needed to provide power and audio output.

Demo video:

The VFD module is a 20x8 matrix of pairs of blue and red subpixels. I treat the display as being 16 pixels high and divide the blue and red subpixels between even and odd lines of video, which gives a bit more detail than you'd normally get from an 8-pixel high display. Video ends up being displayed in a 2:1 aspect ratio block in the center of the display - it's not exactly 4:3 but it's close enough, easy to convert, and fast!

The Arduino Mega was chosen for this project because the VFD module can be plugged directly onto the large pinheader (a slight modification to the VFD's connector shell is required). 8K of RAM is enough for video and audio buffers and it's fast enough to handle 30 FPS video and 16 kHz PCM audio. Higher audio rates may be achieved through using ADPCM compression or code optimization - it was a bit hairy at 24 kHz so I brought it back down to 16, although I didn't test if the bottleneck is CPU time or SD card read speed.

In my photos you will see I'm using an ethernet module stacked on top of the Mega - this is purely as a convenient way to connect an SD card (the ethernet module has a slot on board). The ethernet functions of the module are not used at all.

  • 1 × Arduino Mega 2560 board
  • 1 × Noritake itron GU20X8-301 VFD module
  • 1 × SD card breakout or shield

  • 1
    Modify the VFD module's connector shell

    The VFD module's connector is smaller than the pinheader on the Mega, and the plastic shell would prevent it from seating.

    Carefully cut or file away the short sides of the connector shell as seen below. Be careful when doing so - the VFD has very fine construction inside and the physical shock from a pair of wire cutters could damage it.

  • 2
    Plug the module onto the Mega

    Seat the module onto the Mega's large pinheader. Pin 1 on the module's connector should go to digital 23 on the Mega. Proper positioning is important and getting it wrong could result in a dead VFD, Mega, or PC.

  • 3
    Connect an SD card

    Connect an SD card to the Mega. I had an ethernet shield handy which happened to have an SD card slot on it, but any breakout should work fine.

View all 8 instructions

Enjoy this project?



GB wrote 06/29/2019 at 22:01 point

I just made it without the audio. Very cool display. Thanks for sharing (:

  Are you sure? yes | no

c0de wrote 03/23/2019 at 07:15 point

Awesome! I got one of these myself pretty recently.
FYI, it can be pretty bad for the cathode wires to be visibly glowing red. It significantly reduces the lifespan of your display through heat stress on the cathodes or even over expose of the phosphors (DC power especially since it will be an uneven burn)

  Are you sure? yes | no

natalie wrote 03/23/2019 at 18:29 point

I think the camera just picks it up when the display is dark. It's not really visible to my naked eye. All the voltages are generated by the module itself, I just give it 5V

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

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