Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

44
Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE

Transcript of Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Page 1: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Digital Guitar EffectsGroup 5

Shaun Caraway, EEMatt Evens, EE

Jan Nevarez, CpE

Page 2: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Motivation and Value of Project

Page 3: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Goals

• Professional grade audio quality (Low noise, high resolution, etc.)

• Able to process a guitar signal in real-time with less than 3 ms of latency

• Simple user interface• Include common effects used by

guitarist. Reverb, distortion, etc.

Page 4: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Specifications

• Less than 3 ms of latency• 16 bit 44.1kHz• Maximum input 2 Vpp• Line level output of 1.228 Vrms• Headphone output impedance less

than 50Ω

Page 5: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Over all System Design

ATMEL ATSAM3X8E WM8731

CODEC

LM1085 3.3V

JTAG INTERFACE

MSP430G2553

ATMEGA328P

LM1085 3.3V

LM1085 5V

JTAG INTERFACE

CONTROLSDISPLAY

I2C (TW)

I2C

(T

W)GPIO

I2C (TW)

SPI

SP

I

Audio Processing Subsystem

User Interface Subsystem

Page 6: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Algorithms

Page 7: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Algorithms

• Delay– Used to create an “echo” type of sound.

» y(n) = x(n) + [x(n – D) + G*y(n – D)]

S Sx(n) y(n)

1

1

Z^-n

Page 8: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Algorithms

• Reverb– Simulates sound being played in a large room or

hallway.– Most intense algorithm. Pushed the limits of the

ATMEL SAM 3X8E – Uses parallel combination of Comb filters in series

with all pass filters.

Page 9: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Algorithms

• Reverb– All Pass Filter

» y(n) = -gx(n) + x(n – D) + gy(n – D)

– Comb Filter» y(n) = x(n – D) + gy(n – D)

– Low Pass Comb Filter» y(n) = x(n – D) – g2x(n – D – 1) + g2y(n – 1) + g1y(n – D)» Where g = g2/(1-g1), with g < 1.0

Page 10: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Algorithms

• Reverb

Pre-Delay LPF1 APF1 APF2

Comb 1

Comb 2

LPFComb 3

LPFComb 4

APF3LPF2S

x(n)

y(n)

Page 11: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Algorithms

• Chorus– Meant to simulate multiple instruments playing

together.– Generally used to “thicken” the sound.

» y(n) = a1x(n) + Gx(n – D(n))

Page 12: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Algorithms

• Compressor– Meant to control the dynamics of incoming signal

» y(n) = x(n) + [x(n – D) + G*y(n – D)]

Page 13: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Algorithms

• Distortion– Used to purposefully distort the incoming guitar

signal. Known as a static wave shapper.

» y(n) = arctan(x(n))

Page 14: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Hardware

Page 15: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

User Interface Subsystem Microprocessors

MSP430G2553IPW28Program Memory 16KB

Speed 16MHz

IO 24

I2C Serial Communication interface Compatible with TW

Operating Voltage 3.3V

ATmega328P AVRProgram Memory 32 Kbytes

Speed 20MHz

IO 23

TW Serial Communication interface Compatible with I2C

SPI Serial Communication

Operating Voltage 5V

Page 16: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

User Interface Subsystem Schematic

Page 17: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

User Interface Subsystem Schematic

V

Page 18: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

User Interface Subsystem PCB

Page 19: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

User Interface Subsystem PCB

MSP430-JTAG connection

I2C Terminal Block

MSP430G2553

ATMEGA328P

Controls Terminal Block

LCD module Terminal Block

Push Button

Voltage Regulators

Page 20: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Audio Processing Subsystem

SAM3X8E Cortex-M3Program Memory 512 Kbytes

Speed 84MHz

I/O Lines 103

2xTW Serial Communication interface Compatible with I2C

SPI Serial Communication

CPU Core ARM

Operating Voltages 3.3 and 1.95 V

Page 21: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Audio Processing Subsystem Schematic

Page 22: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Audio Processing Subsystem Schematic

Page 23: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Audio Processing Subsystem Schematic

Hz

Page 24: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Audio Processing Subsystem PCB

Page 25: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Audio Processing Subsystem PCB

ATMSAM3X8E JTAG-Interface/ Configuration

ATMSAM3X8E Microcontroller

WM8731 Audio CODEC

I2C/TW Terminal Block

Audio Input

Line Output

Headphone Output

Voltage Regulator

Page 26: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Power Requierments

0.491370.1489

0.68637

0.1950.039

Page 27: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Power Requierments

LM1085 LDO regulator series

V in Max 27 volts

V out 3.3, 5 volts

Drop Out Voltage 1.3 volts

I out Max 3 amps

Enercell AC Adapter CAT-NO 273-333

Input 100-240V AC 50/60Hz 0.5Amps

Output 7.5V DC 2 Amps

Page 28: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Original DSP Subsystem

Page 29: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Original User Interface Subsystem PCB

Page 30: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Software

Page 31: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Software Overview

User Interface• Allow for control• Display Menu Options• Signal Interrupts

Audio Processing Software• Model Amplifier• Model Effects• Allow for various

parameter changes

I2C Bus

Page 32: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

User Interface Subsystem

• Written in C language• MSP430 used Energia IDE• ATmega328 used Arduino IDE

• Push buttons generate interrupts• Generates binary coded commands• MSP430 Transmits to the screen controlled by

the ATmega328 and the Audio Processing Subsystem over the I2C bus

Page 33: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

User Interface Subsystem

Codes for the Audio Processing

Codes for the Screen Subsystem

Page 34: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

User Interface Subsystem

void initSetup ()void I2CTransmite()void navigate()void pushButton()void menuSetup()int main()

Main

void SPIConfig()void sendData()int main()

I2C

void init()void interrupt()int main()

Buttons

void initSetup ()void downButton()void upButton()void forwardButton()void backButton()void whatToDo()int main()

Menu

void initSetup ()void changeDisplay()void onRecieve() int main()

LCD Controller

Page 35: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Audio Processing Subsystem

• Writing in C via Atmel studios• Model Amplifiers/Effects• Communicates to the Codec through the SPI

peripheral• Programs the Codec through the I2C bus

• Receives controller codes through I2C bus

Page 36: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Audio Processing Subsystem

void initSetup ()void I2CReceive ()void modelAmplifier()void modelEffects()void SPItransmit()void SPIreceive()int main()

Main

void SPIConfig()void tranSmiteData()void receiveData()int main()

SPIvoid I2CSPConfig() void receiveData()void transmitData()int main()

I2C

void initSetup()void changeGain()void changeBass()void changeMid()void changeVolume()int main()

Amplifiervoid initSetup()void changeGain()Void changeInterval() int main()

Effects

Page 37: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Administrative

Page 38: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Distribution of Responsibilities

Shaun User Interface Hardware

Audio Processing Hardware

Power

Jan User Interface Software

Audio Processing

Software

Audio software Algorithm Simulation

Matt Audio Codec Input

Audio Codec Ouput Algorithms

Page 39: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Project Challenges

• Digital Signal Processing• Doing multiple double and int multiplication and

division• Preventing noise on the distortion effect

• Learning the PCB CAD software• Hardware Debuging Challenges

Page 40: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Project Challenges - User Interface

POWER TRACE

GROUN PIN

VIA TO GROUND

Page 41: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Project Challenges - Audio Processing

JTAG Configuration – According to data sheet

Signal State

FWUP HI

NRSTB HI

JTAGSEL HI

TST LO

JTAG Configuration – WorkingSignal State

FWUP HI

NRSTB HI

JTAGSEL LO

TST LO

JTAGSEL

TST

Page 42: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Project Challenges - Audio Processing

DATA

CLOCK

CUT TRACES

Page 43: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Budget

Page 44: Digital Guitar Effects Group 5 Shaun Caraway, EE Matt Evens, EE Jan Nevarez, CpE.

Questions?