How to Design an Affordable Synthesizer

This post is by Mason Elms, a student of Mechanical Engineering and Applied Mechanics, writing about his team’s project for the Senior Design Competition.

Alternative Audio Processing began with the idea of creating an affordable yet powerful hardware synthesizer, a device that would allow producers on a budget to enjoy intuitive physical control while providing a back-end that would earn our product a spot in any producer’s arsenal. By taking advantage of the NVIDIA Jetson Nano’s low cost and shared GPU/CPU memory, we hoped to implement an essentially limitless additive synthesizer engine and a phase vocoder plugin. The additive synthesizer would allow the user to create virtually any sound by combining harmonics of sine waves in the frequency domain, with controls for up to four voices, a variable-waveform low-frequency oscillator, and a versatile filter. The phase vocoder would allow for real-time pitch correction and harmonization with incoming midi chords.

With the onset of COVID-19, our team was unable to rely on necessary outsourced components to develop a hardware product, so we pivoted to developing a software application that would mimic the intended interface while running the same engine code on the Jetson Nano. With the support of the ESE Department, we were able to begin developing our application using Roli’s JUCE libraries in the midst of the shelter-at-home order. We ended up with a GUI interface that allowed for the harmonic control of four voices, LFO modulation, and ADSR envelope control, built using JUCE on the Jetson Nano. While we weren’t able to fully debug our software before our demo day, we are proud of the progress we made in our week of work, and happy to end our year of Senior Design with a product. You can check out our demo video below (by teammate Nikil Ragav) and you’ll find more detail about our project on DevPost.