Meggy Synth

A sketch which turns a Meggy Jr RGB into a simple step-based synthesizer.

Description

This sketch allows you to write and play songs on the Meggy Jr. RGB. To write a song the pitch and duration of each note is selected, with pitches available ranging over three octaves, and durations ranging from whole notes to thirty-second notes. Songs can be saved to and loaded from EEPROM so you can power off the device and keep your work.

The current version of the sketch can be downloaded below.

Design

The song writing interface is segmented into two views, a pitch view and a duration view.

Pitch View

This is the default view when the sketch is started. Each row of pixels represents a note with A on the bottom, up through to G second from the top, and a 'rest' or silent note on the top row. The octave of the note is represented by its colour. The low octave is green, middle octave is yellow, and high octave is red. Sharps are represented by dim pixels while naturals are bright.

Duration View

The duration view shows the length of each note with whole notes on the bottom row, up to thirty-second notes third from the top. The second row from the top shows if the note is part of a slur, and the top row marks the end of the song. Notes are represented by bright pixels while dotted notes are represented by dim pixels.

Demonstration

In Memoriam

This sketch was written as a gift to my close friend, Mikael Chan to thank him for being best man at my wedding. Sadly Mikael passed away before I was able to present this sketch to him.

More Information

AttachmentSize
MeggySynth.pde13.83 KB
MeggySynth.xls50.5 KB

Comments

Thank you, Sean. You are a

Thank you, Sean. You are a blessing.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.