The creator of this project has several problems recognizing wich music tune she's hearing when playing music. That's how the idea of this project was born: How if I had some devide that could light a colour for me, everytime I play music?
Very similar to a digital tuner, but instead of showing you a letter, this shows you a colour that is easy for you to associate with the tune. Every kid gets taught music with colours in early school, if it's a nice method for them, sure it's nice for you!
Step 1: Materials
For this Prototype, we will need:
- Arduino UNO
- Long Wire (20)
- Microphone (Hopefully high Quality, the success of the project depends pretty much on this)
- Transparent Led lights (12)
- Protoboard (I used 2, but it is possible to only use 1)
- Extern Battery
- Arduino - Computer Wire
- Papers in different colours
Hopefully colours you associate with music notes, in my case the following:
blue (C, C#)
red (D, D#)
orange (F, F#)
red (G, G#)
purple (A, A#)
light blue (B)
Step 2: Load the Arduino Instructions From Your Computer to the Card
Download Arduino for free and install it in your PC.
Once you have the programm, download the documents below and load the arduino file from your computer to the arduino card (You will need an arduino-pc loading wire for that)
I uploaded 3 files for you here:
- The arduino codes in a block file, in case you want to copy/paste it
- The arduino codes inside an arduino file (so you just need to open and load it)
- A frecuency detector library I found on the internet (It is needed for the arduino file to work)
(The arduino file is programmed to light every led once, when you turn it on. This is only to let you know every led is working, and to let you know it is ready to work)
For making the arduino file, I considered the following frequencys intervals for every tune:
C = 32-33 / 63-67 / 126-133 / 255-265 / 515-530 / 1020-1060 / 2000-2100 / 4000-4200 /
C# = 33-35 / 67-70 / 135-140 / 268-285 / 540-560 / 1100-1150 / 2200-2250 / 4200-4460 /
D = 36-37 / 71-74 / 143-149 / 289-295 / 570-595 / 1160-1185 / 2260-2360 / 4500-4800 /
D# = 38-39 / 75-79 / 152-158 / 305-316 / 600-630 / 1200-1260 / 2400-2500 / 4900-5100 /
E = 40-42 / 80-84 / 160-169 / 320-335 / 640-660 / 1270-1340 / 2550-2680 / 5150-5300 /
F = 20-22 / 42-45 / 170-180 / 340-350 / 665-700 / 1345-1400 / 2680-2800 / 5400-5600 /
F# = 22-24 / 45-47 / 181-190 / 350-370 / 710-750 / 1400-1530 / 2800-3050 / 5600-610 /
G = 24-25 / 47-50 / 190-205 / 370-400 / 750-800 / 1530-1600 / 3050-3200 / 6100-6300 /
G# = 25-26 / 50-53 / 205-215 / 400-420 / 800-840 / 1600- 1700 / 3200-3450 /
A = 26-28 / 53-56 / 215-225 / 420-450 / 840-900 / 1700-1800 / 3450-3550 /
A# = 28-30 / 56-59 / 115-120 / 225-240 / 450-480 / 900-950 / 1800-1900 / 3550-3800 /
B = 30-31 / 59-62 / 120-130 / 240-255 / 480-515 / 950-1020 / 1900-2000 / 3800-4000 /
Step 3: Connecting Wires
Connect everything as it shows in the picture. I also tagged every led light with the sound frecuency it is supposed to light with from C to B.
Step 4: Recomendations for Upgrading This Project
The key for succes in this project, lays in the quality of the microphone you use.
In my case, the microphone I used was not able to recognice guitar sound, my voice, or piano music, but it was able to recognice different frecuencys if I played them through an app in my phone, and if my phone was really close to the microphone.
Even though I couldn't achieve my final purpose (playing piano with this device telling me wich tune I was playing) I think this instructable can be very usefull for someone trying to do something similar, with more advanced tools. I really hope this instructable serves as a base for more advanced projects!