This is a musical instrument synthethizer with 3 oscillators (polyphony = 3) and respond to MIDI notes, it uses the Tone function and generating SQUARE WAVE by the 3 internal timers. MIDI data received over the DIN connector (UART MIDI 5 pin, not USB)... It is simple but it is possible to play music with it. Up to 3 musical notes can be played simultaneously, so it is possible to play chords on it. Also, it can reproduce MIDI songs from a PC, via USB to MIDI converter. In other way it works like a classic SN76489 sound chip emulation.
This Arduino synth uses the Tone function to use the internal timers (Arduino Nano has 3 timers) to generate square wave. MIDI data infomation is sent over the DIN connector (5 pin, not USB) to the RX Pin 1 of Arduino.
It is possible to connect an effects pedal (guitar) to the sound output and make the synth sounds much more interesting and professional, adding delay, chorus, phaser, flanger, reverb distortion, etc. I use the effects pedal Zoom model MS-70CDR, I get wonderful and killer effects in stereo.
About the MIDI keyboard controller:To play this syntetizer it is necessary to use a MIDI controller with keys with MIDI output via DIN 5 pin connector, for example the Behringer UMX610 or any other keyboard that has this type of MIDI output.
Also is possible to play MIDI files from a computer (PC/MAC), using this synth as a MIDI sound generator. I show it in below video. In this setup, I use a MIDI Player (Vanbasco's Karaoke) running on PC and a "USB to MIDI" converter that sends the data to Arduino RX pin via a Optocopler (4N25). The audio is generated internally on arduino and output on pins D11, D5 and D3, and then are mixed and sent to the audio recorder.
It's possible to recreate the sound of video games from the 80's!
Wiring diagram (schematics):Here is the link to download the complete project, including the main sketch, libraries and the wiring diagram: click here
This video shows the Synth MiniSy in operation:
Comments