/GuitarTuner

tune the each open string of Guitar to standard pitch

Primary LanguageC++GNU General Public License v3.0GPL-3.0

Guitartuner

Logo

A QT gui application that helps you tune your guitar

Youtube     Bilibili

build status

Contents

About

Guitartuner is a easy to run tuning application. It easily helps you tune your guitar with the help of a simple GUI.

Functionality

  • Real-time standard tuning
  • Showing pitch frequency

Hardware

Quick Start

Assembly and Soldering

More details can be found here!

Raspberry pi for wiring

More datails, remember this is mono mic based project.

Installation

Follow the following steps

  1. Install the driver for i2s mic, link, after the wiring section.

  2. Install several dependenceis.

sudo apt-get -y update
sudo apt-get -y upgrade

and then install these modules

  • asound module
  • fftw3 module
  • Qt module
  • iir filter module
sudo apt-get install libasound2-dev python3-pip libboost-all-dev 
sudo apt-get install libfftw3-dev 
sudo apt-get install qtdeclarative5-dev-tools libqwt-qt5-dev qtmultimedia5-dev
  1. Configure dynamic linker run-time bindings
sudo ldconfig
  1. clone this project
git clone https://github.com/LancerMar/GuitarTuner
cd GuitarTuner

Before compiling

you need to use command

arecord -l

to find which card your sensor connected on your raspberry Pi

after that ,you can open the i2s_mems_mic.h find this line

char const* pcm_name = "plughw:1";//sound device name

make sure the number in "plughw:1" is your card number. For example, if your card number is "card 0" , then you should change "plughw:1" to "plughw:0" , in that way, after compiling , the program can run successfully

Run the executable

You can compile the release version of our project by using following command on RaspberryPi

mkdir release
cd release/
cmake -DCMAKE_BUILD_TYPE=Release ..
make

The guitartuner is the excutable file, run it.

./guitartuner

Debug

You can compile the debug version of our project by using following command on RaspberryPi

mkdir debug
cd debug/
cmake -DCMAKE_BUILD_TYPE=Debug ..
make

The guitartuner is the excutable file

You can use

gdb -tui guitartuner

to debug this program

Running Tests

To run the unit tests

make test

Usage

For instructions on how to use the Guitartuner application, see the User Manual.

Documentation

GUITARTUNER DOCUMENTATION

Stretch Goals

  • Electric machine that could tune the guitar automatically
  • More precise pitches detection, remove harmonics