MarkII Synthesizer Module
Complete Instruments Instrument Bodies
Generators Generator Electronics Switching Power Supply
Synthesizers Synthesizer Controls
Amplifiers Loudspeakers Resonances Horns
Special Topics:
Other Oscillator Types:
Low Voltage-CPU (STM32L4)
Synthesizer Code Development
Percussion Circuits
Multivibrators
Low-Power Oscillators #1 Low-Power Oscillators #2
Using the FV-1
On the left side, you can see the basic synthesizer board for the Electric Eel. On the right, you can see a video demonstrating three different synthesizer programs: 1) Classic Squarewave, 2) FM Synthesizer, and 3) Kick drum percussion.
Analog Input #1 = onboard potentiometer
Analog Input #2 = Supply Voltage Level
Analog Inputs #3-#8 connect through a 10-pin header (pinout).
3x5 keyboard array connects through a 10-pin header (pinout).
There are several types of synthesizer module suggested for use with Exertion Instruments.
A Microcontroller Synthesizer
A PSoC Synthesizer
A FET-Based Duffing Oscillator
This page also describes the Synthesizer Expansion Port, into which Keyboards and Knobs are plugged.
A Microcontroller Synthesizer
To see how this synthesizer boards connects to a keyboard controller and a rack of knobs, check out the Controls webpages.
Exertion Instruments use a modular approach to facilitate user development. This page is about one of the most important modules, the synthesizer module. It shows how to build the basic one. This Synthesizer Module utilizes an Atmega32 microcontroller, with 7 controller knobs to vary the instrument's sound.
It takes in the DC voltage from the rectifier and outputs a musical signal to the amplifier module.
Synthesizer Parts List
40-pin socket 517-4840-6000-CP $0.28 http:/mouser.com Enables Processor to be swapped
Main Board $7.50 Lab/You-Do-It Connects all synthesizer parts together
Atmega32 ATMEGA32-16PU-ND $8.17 http://digikey.com Digitally synthesizes music
16 MHz crystal X143-ND $0.40 http://digikey.com Enables processor to run faster
15pf caps BC1034CT-ND $0.11 http://digikey.com Assist Crystal resonator
7805 regulator LM7805CT-ND $0.45 http://digikey.com Protects Processor from overvoltage
4.7uF electrolytic cap P5177-ND $0.08 http://digikey.com Assists voltage regulator
Upload Button P10877S-ND $0.36 http://digikey.com Enables Development Code Upload
10-conductor Rainbow-colored ribbon cable Lab Connects Peripherals to Synthesizer
10-pin Dual Straight .1” Female IDC Header MKC10E-ND $0.40 http://digikey.com Connects Peripherals to Synthesizer
10-pin Dual row Straight .1” Male pins A26535-40-ND $3.37 http://digikey.com Allows Developer Access
5-pin Single right angle .1” Male Header A34264-40-ND $2.21 http://digikey.com Enables Serial Port
10-pos detent potentiomter Nvawter's house Selects Run Mode (diag, percussion, string, etc.)
Quadruple Speaker Terminal 24V001 $0.85 http://www.alltronics.com/ Lets power in from rectifier, Lets sound out to amplifier
slide switch EG1903-ND http://digikey.com
Green LED Lab
220 Ohm resistor
Synthesizer Ex
Synthesizer Expansion Port
This synthesizer has three important ports:
- Keyboard Input
- The 10-pin keyboard input is connected to PC0-PC7. The default software treats it as a 3x5=15 key matrix by enabling one of three bits in PC7-PC5, and reading back bits PC4-PC0. All of the keyboard designs here will use this format. It requires no additional hardware, since pull-up resistors are internal to the microcontroller!
- Sensor/Knob Input
- The 10 pin header supplies Vcc, GND, and access to all eight inputs on the uC's ADC0-ADC7 pins. ADC0 is assigned to one potentiometer on the synthesizer board. ADC1 is assigned to the voltage level in the generator module's capacitors.
- Console/Reprogram
- The reprogram port is intended to be connected to an FT232 serial cable 3volt or 5 volt work just as well. This port allows you to upload new .hex files on the microcontroller. While connected
-
- To enter reprogramming mode,
These are some example synthesizer boards:
Synthesizer Module w/7 knob cont. Interface Terminals: Generator Input, Audio Output
If you are good at synthesizer building and programming, you could make a new module that interfaces with the rest of your system's modules. You only need to follow a few conventions. The interface terminals are shown above. There are two inputs and two outputs. You should connect an AC voltage to the inputs, such as one of the phases of your stepper-motor-generator.
Internally, there are two main components. The generator electronics are on the left, and the microcontroller development board is on the right.
Schematics
The microcontroller portion consists of an Atmega32 microcontroller with a 16 MHz clock and 7805 regulator.
Eagle Files
Would you like to modify or improve the design? Here are the schematic and board files for Eagle. The board is small enough that it works in the free versions of Eagle.
SynthBoard 22.brd * SynthBoard 22.sch
Would you like to print or etch your own circuit boards? These files will help you. They contain PDF and Photoshop files for the printed circuit board image replicated 9 times. 16 of them will fit in a 12" x 12" sheet of copper.
SynthBoard 22.pdf * SynthBoard 22 9 way.psd
Software
This is the software that runs on the Atmega32 (Datasheet) microcontroller. There are two different programs here. One is for melodic instruments, such as the Electric Eel, and one is for drum sounds, like the Exertion Kickdrum.
These are hex images for the Atmega32 Exertion Synthesizer Board!
Synthesizer Software Images Description in spreadsheet
- Pulse Width Module control - hex file. Used at sponsor week and Sweat Lodge 2010
- keyboardRingout.hex
- retrigPWM.hex - experimental. restarts the PWM envelope back to 6.1% on each note on or when 12.2% is reached.
- em.hex - Lights the on-board LED, reads the 2x4 keyboard, and plays one of 25 notes (two full octaves). Used at Tangibles and Embedded Interfaces 2010
- em4.hex - Reads keyboard and plays one of 5 notes. Used at Boston Music Hackday.
- violin.hex - violin keyboard
Full source codes
Fuse Calculator
AVRStudio
(put me here, please)
Mac/OS X Development News
The beloved AVRMacPack has been renamed CrossPack "to avoid conflicts with a trademark of Atmel Corporation"
Download the excellent development package OBDEV CrossPack if you would like to program anything on Atmel microcontrollers, especially electronic instruments. And remember to set the AVRLIB variable like this: export AVRLIB=/opt/local/avr/avrlib/
USB Serial Interface (FTDI FT232)
This is a very useful peripheral for developing synthesizer code.
Driver - For Mac, Linux, and Win32
Where to Buy - Mouser.com About $20
Additional Information - Noah's page
Additional Information #2 - Noah's page
Terminal Program
HyperTerm - (for Win )
ZTerm - (for Mac) A free terminal program used as a debugging console, as well as to upload new code
Realterm - (for Win) Another free terminal program
Synthesis
Other Hardware
I've been looking at other chips to use for synthesizers besides the Atmega32. One interesting family are the Cypress PSoCs. The have programmable analog blocks, as well as programmable digital blocks and some other nice features for this project. Check them out.
Cypress PSoC 1
24-pin PDIP (throughole)
24 MHz
32kB Program Flash
2kB SRAM
Windows only
Can run at 1.0V using built-in switching power supply.
Datasheet
Buy it at Mouser for $9.65.
Other Synthesizer Modules
Synthesizer Module Insides Left: AC Doubler Right: Atmega32 Microcontroller
Rectifiers Amplifiers
Comments (0)
You don't have permission to comment on this page.