Keyboard sketch, deaf, need lights to confirm working

I need some general advice on feasibility, if this is within an amateurs abilities, should i approach this by loudness, or another variable of sound, what software will I need, and what equipment is needed. I have an arduino mega, wifi shield, and the starter kit already.

I want a to set up some sort of microphone that the arduino can read. I would like for the reading to determine which of the four lights turn on based on the sound of the piezo that comes in the The Arduino Starter Kit the tone comes directly from the keyboard sketch that comes pre-loaded in the library automatically.

While I could easily program the lights to come on at the same time the code tells the piezo to produce sound, that would not allow a deaf person to know that the piezo is indeed working, and is hooked up properly.

I've seen a few post in the past where sound identification gets complicated quick due to distance from sound, outside noise, and other factors. I would prefer to keep this simple. The mic would ideally be within 12 inches from the piezo.

Any advice or suggestions will be greatly appreciated.

If this sort of thing was important to deaf people, I would imagine that there are dozens of different units available to do this exact task under $10 on eBay. Have you looked?

So the Arduino is sounding the buzzer and you want some feedback so the Arduino can detect that its buzzer actually produced sound? Why is the microphone not directly underneath the buzzer? This should be pretty simple to set up but you will need a few analog components, like a diode and capacitor, to make a peak hold circuit which will allow the Arduino to read it via analogRead().

Have you looked?

Honestly I haven't. I didn't know what to search for. Do you recommend that I type in "speaker or piezo for deaf people" in the duckduckgo search bar?

detect that its buzzer actually produced sound

well sound itself would probably be easy. I was hoping that it would be able to distinguish the difference in the 5 different tones that are offered on the keyboard sketch so that the light that turns on is dependent on which of the 5 tones is played.

Why is the microphone not directly underneath the buzzer?

the buzzer is attached to a breadboard. The way bread boards are laid out, it didn't cross my mind to put the microphone under the breadboard. I thought i'd just attach the microphone to the breadboard a few spaces over beside the pizeo. So you recommend looking for a dual sided bread board for this project?

like a diode and capacitor, to make a peak hold circuit which will allow the Arduino to read it via analogRead().

I haven't experimented with diodes and capacitors to detect sound readings yet, though I have used diodes to detect light variables like brightness and color.

Adjacent to the piezo will work too.

Detecting frequencies is a bit more complex but I think you've simplified the problem enough to be able to make something reliable with the Arduino. Similar questions to this have been asked on this board many, many times. Search for "audio frequency" or a few other key words and you will initially find a lot of people saying it can't be done but there are some sketches in there that will be useable for you.

Why bother?

If you want to see sound, you can use programs like the one here: http://www.sillanumsoft.org/