| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

Synthesizer Module

Page history last edited by Noah Vawter 5 years, 9 months ago

 

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.

 

 

          YouTube plugin error

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).

 


 

 

Special Topics:                                            Web-Based Synthesizer Editor for Exertion Instruments            Synthesizer Controls 

 

                 

 

 


 


 

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:

 

 

  1. Keyboard Input
    1. 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!
  2. Sensor/Knob Input
    1. 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. 
  3. Console/Reprogram
    1. 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
  4.  
    1. 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.