Cricket Pi

The Story ...

My 5-year old sister has just started violin lessons, and very often, I have to accompany my sister. While I consider that to be interesting, it is not fun when I have to do that thirty times in a row. Also, with only two years of violin lessons behind me, I’m not the perfect Mr. Accompanist.

However, all the MIDI players we could find aren’t that helpful, so we resorted to using Youtube. That worked, but then sound quality and flexibility for speed (0.5 speed was too slow and 0.75 was too fast) became a problem. The electric piano is better, since it has a good sound quality, but then there is the problem when it's playing an accompaniment and one makes a mistake on even a single note - the electric piano has absolutely no sympathy when it comes to errors (a.k.a. there is no "pause" button, only a "restart" one).

The Making ...

After all that talk about music, you probably have guessed that Cricket Pi is a MIDI player. However, it is much more than that. It's voice-controllable with playback, tempo, and volume control. Along with features including metronome and alarm clock (to remind you when to practice), Cricket is a cute and amazing "little" accompanist for violin students.

Cricket Pi consists of a Raspberry Pi with voice control engine, a GUI with visual feedback, and a MIDI player with speakers.

The Source Code ...

The Planning ...

Currently, the entire program is prototyped on Scratch. This means that Cricket has a limited capability. For example, the voice engine can only use Loudness values, which makes it rather insensitive, and the hand-crafted MIDI player lags in the beginning of a piece and speeds up too much in the end. We plan to have a working Pi on Python (with an actual MIDI player) before September. Here is the current status and future plan:

    • June 21st, 2017: Initial idea brainstorming.
    • July 1st, 2017: (Scratch) Simple voice recognition.
    • July 12th, 2017: (Scratch) Music player with speed and volume control.
    • July 17th, 2017: (Scratch) User interface with visual effects.
    • July 21st, 2017: Finished initial integration test on the Raspberry Pi 3.
    • July 23rd, 2017: Submitted proposal to Maker Faire NYC 2017.
    • July 27th, 2017: Proposal accepted!
    • August 15th, 2017: (Python) Finished MIDI playback and control.
    • August 26th, 2017: (Python) Finished GUI design.
    • September 12th, 2017: (Python) Finish the voice control.
    • September 17th, 2017: (Python) Finish integration test on the Raspberry Pi 3.
    • September 21st, 2017: Final tweaking and code freeze.
    • September 22-24, 2017: Maker Faire in NYC! Looking forward to meeting with you at my booth located at Zone 3 in Maker Pavilion.

The Maker ...

Jieruei Chang has had a long interest in robotics and programming ever since his dad gave him a Lego WeDo set when he was five. Now, six years later, he is the creator of dozens of Scratch games, a partially self-taught artist, the owner of a six-propeller drone, three violins, and a genuine Venus Flytrap.