Skip to main content
Version: ACS CC

Guitar Tuner

A tuning device for electric and acoustic guitar

info

Author: Ianis-Gabriel Armencea

GitHub Project Link: repository

Description​

This guitar tuner helps you tune your guitar into standard tuning (EADGBe). It uses a microphone (with a built in amplifier) which listens to the guitar chord being played and identifies if it is too flat or too sharp from the reference frequency. It displays the current note on the oled display.

Motivation​

Being a guitar player myself i thought it would be a fun idea to integrate a hobby into a school project. Also, if the project turns out well i will be using the device myself to tune my guitar before playing.

Architecture​

Diagram​

alt text

Log​

Week 5 - 11 May​

Purchased the components

Week 12-18 May​

Assembled the project

Week 19-25 May​

Research on FFT

Working on software

Hardware​

  1. Raspberry Pi Pico 2W: The microcontroller responsible for computing and processing the data and for communicating with all of the components.
  2. MAX4466: The microphone used to detect the sound coming from the guitar. Comes with a built-in amplifier so it can detect quieter sounds.
  3. LEDs: Used to guide the guitar player by indicating whether the note is too sharp, too flat or in perfect pitch.
  4. Button: Used for switching between the notes in the E-standard tuning.
  5. OLED display: Displays the current note that is being tuned to.

Schematics​

alt text alt text alt text alt text

Bill of Materials​

DeviceUsagePrice
Raspberry Pi Pico 2WThe microcontroller40 RON
MAX4466Mic with amplifier built-in15 RON
ButtonChanging note1 RON
OLED Display 0.96"Displaying notes50 RON
Resistor kitFiltering15 RON
BreadboardComponent connections5 RON
Jumper wires setConnections8 RON
Micro-usb cablePower4 RON
LEDNote flat, sharp or perfect pitch0.39 RON

Software​

LibraryDescriptionUsage
embassyFramework for embedded programmingWriting embedded Rust applications for microcontrollers
microfftLibrary for computing fast fourier transforms on embedded systemsConverting audio signal to frequency
ssd1306Display driverDisplay text on screen
num_complexRepresents complex numbersUsed for fft calculations
embedded_graphicsLibrary for displayUsed to draw text on display

Fast Fourier Transform

PWM & ADC