Project “Synthavr” – A Self-contained Retro Music Studio.
Pronounced : Synth-a-ver
This project will be a "self-contained" multi-track synthesizer and music composing system made from 8 Bit AVRs and 1980's era semiconductors.
Self-contained means that all music will be composed on the system, including the mathematically produced synthesized instruments made by using the WaveLab application that will be part of the Operating System.
I am undertaking this massive project for two reasons...
1) I really want a complete self-contained retro-style music studio that combines the power of the Fairlight CMI with the unique sounds of earlier analog synths. So why not just use Renoise or Presonus? Simple... see reason number two.
2) I want to challenge myself to build the entire system using only 8 Bit AVR Microcontrollers and 80's era components such as 74 series gates and basic SRAM. The system will be prototyped on a breadboard and then later hand wired, so all parts must be through hole format.
Expanding on the above, here are the rules I have set for this project...
- Only 8 Bit AVRs in DIP packages may be used.
- All other ICs will be basic 80's era gates, opamps and SRAM.
- Self-contained means no connection to modern equipment.
- The OS will run from an AVR and bitbang the VGA display.
- No samples will be used, all sounds are computed by the OS.
- 8+1 channels of sound, each with multiple instruments and FX.
- Multiple analog FX per channel that are controlled by DACs.
- The final project to be hand wired on massive perf boards.
To expand on the first few rules, parts (thru hole) that are allowed will be; standard SRAM, 7400 series logic, common op amps, DAC technology that was available in the 80's, and the usual common semiconductors.
Equal effort will be put into the final hardware, which should look as good (and retro) as it sounds. An enclosure with a glass front will reveal the massive hand wired board and the user interface will have the feel of 1970's modular synths.
- 8 Identical fully independent sound channels
- Each channel can play one instrument but define multiples
- Atmega324 for each channel with common Command Bus
- 512K Scratch RAM for wave file instrument creation
- 12 Bit DAC output / up to 100KHz sample rate
- Real-time DSP effects done in AVR code
- Internal FX : volume, distortion, echo, etc
- External FX : Buchla style low pass with resonance
- 640x480 Dual Buffer VGA Video system bitbanged by AVR
- 80x60 text with 640x480 bitmaps in 64 colors
- User interface will be buttons and analog knobs
- OS runs WaveLab and Composer apps directly from AVR
- Common Command Bus between OS and all independent channels
- Graphical display of instrument wave files being created
- Multiple layers of mathematical operations on wave files
- Final instruments are stored as operations not samples
- Seamless wave looping and unlimited point envelopes
- Live preview of samples and unlimited undo changes
- 8 standard tracker like channels and one solo channel
- Each track maintains its own song memory in SRAM
- Edit or live compose any track while others playback
- Standard track input using keyboard or editor
- Tracker functions will be similar to Amiga OctaMED
- Unique solo instrument with Theramin like analog qualities
- Solo instrument is recorded via multiple ADC inputs
- Global & Patchable mechanical spring reverb unit
- SPO256 Speech Synthesizer with VCO for pitch control
- Metronome for recording live tracks
Now that I have carved up a set of rules and a list of features, the prototyping shall begin on a set of massive breadboards.
Looking forward to discussion this project with fellow Freaks!
Photos, Videos and Source Code to come.