Skip to content
Free delivery, every order. Want a bulk deal or can't find what you need? Email support@pmdway.com now!
Free delivery, every order. Want a bulk deal or can't find what you need? Email support@pmdway.com now!
Use an Arduino touchscreen to draw the waveforms that you’d like your synth to produce

Use an Arduino touchscreen to draw the waveforms that you’d like your synth to produce

from arduino.cc

Ordinarily, producing complex waveforms on microcontrollers requires precise adjustments within code in order to work, and this can become quite tedious. Additionally, having to wire up physical inputs such as potentiometers for quick tuning adds a lot of sprawl to a project.

This is partially what inspired Kevin, who runs the DIY Electromusic website, to construct a small, Arduino-based device that allows users to sketch the waveform they want outputted via PWM.

The main components of this project are the ILI9488 TFT shield that fits onto an Arduino Uno, along with an amplifier/speaker and an optional output filtering circuit to clean up the audio. Kevin’s unit takes in a MIDI note on the Uno’s RX pin and passes it through a wavetable function that applies the currently displayed waveform on the screen to the note being requested.

Kevin also made a slight modification to the previously mentioned project by replacing the wavetable with a series of five sliders that correspond to various parameters for a MIDI granular synthesizer. His analog version had five large potentiometers that plugged into the analog input pins on an Uno, but this newer version greatly cleaned things up and gives more room for experimentation.

To read more about these innovative audio control projects, you can view them on Kevin’s website here and see a quick demo below.

Finally - to keep up to date with interesting news, offers and new products - interact with us on facebook, instagram, and twitter.

Previous article This large-format laser cutter was built from scratch for just $700

Leave a comment

Comments must be approved before appearing

* Required fields