MegaGRRL - Portable YM2612 VGM Player

Handheld ESP32-powered VGM player, playing tracks from the Sega Mega Drive/Genesis, Master System, and more!

Public Chat
Similar projects worth following
MegaGRRL is a project to make a portable device capable of playing back VGM files targeting the sound chips used in the Sega Mega Drive/Genesis and Master System. It uses the original chips and has a playback engine focused on accuracy and supporting as many features of the VGM file format as possible, all controlled by an ESP32 running FreeRTOS using the ESP-IDF framework.

Demo video: (Thunder Force IV - Metal Squad)

Currently, the VGM playback core is functional and working well. I'm using a third-party library for some debug output on the LCD, but I've written a new driver that uses DMA, pending writing some UI drawing routines. The hardware is essentially complete, and prototype PCBs have been designed, ordered, and assembled. A design for a 3D-printed enclosure is also underway.


  • MCU: ESP32, specifically the ESP-WROOM-32 module
  • Sound chips: YM2612, SN76489
  • Storage: MicroSD
  • Clock generation: 2x LTC6904
  • Display: ILI9341 320x240
  • Volume control: DS1807S+
  • Headphone amp: TPA6111A2
  • IO expander: MCP23017
  • DC-DC: 2x LM2735
  • Battery charge: MCP73832

  • DAC streams are under control

    natalie10/23/2018 at 10:45 0 comments

    Uploaded two more videos again. This time, using two tracks that make heavy use of the DAC stream control subset of the VGM specification. Enjoy! Links to the artists are in the video descriptions, so go check them out if you like FM synth metal stuff~

  • More videos

    natalie10/20/2018 at 18:01 0 comments

    I put a couple more videos on YouTube today:

View all 2 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

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