Small enough to fit in your shirt pocket, it can also be placed on a flat surface to monitor the sound levels around it.
An alkaline battery will easily power it 20 or more hours.
Step 1: The Parts Needed
The 'brains' of this project is a LM358 general-purpose op-amp which costs under 30-cents. The first half of the circuit is an amplifier which boosts the 500-micro-volts from an electret mic to about 1-volt. This level is generally called 'Line-level' and can be used to drive our LEDs, an audio amp, or even the input pins of an Arduino processor.
The second half of the op-amp is used as a voltage-to-current converter, which limits the brightness of the LEDs to 10mA or less.
The complete list of parts is below:
LEDs. Any combination can be used, as long as their total forward voltages is less then 8. For example, you can have up to 4 amber LEDs with 1.8v Vf.
Electret microphone - I got mine on eBay for under 25-cent
LM358 - Op-amp (8-pin DIP). Also available on eBay.
2N4401 - NPN general transistor (other audio NPN-types will probably work as well)
10k resistor x 5
2.2k resistor x 1
470k resistor x 1 (Can also be 330k as labeled in the circuit)
100-ohm resistor x 1
9-volt battery and connector
Perf-board and mounting parts.
Total cost: $3 or less.
Step 2: The Schematic
Step 3: Assembly
The first image is the completed board from both sides, followed by an 'X-Ray' image from the solder side.
Step 4: Fire It Up!
Once it's tested and working, you'll find that it's a real conversation piece at your next party or dance.
You can slip it inside a shirt pocket with the perfboard on the outside. The mic will pick up the sound from around you and the LEDs will 'perform' to it.
A final touch - cut short pieces of a clear or translucent drinking straw to fit over the tops of the LEDs. This will spread the light to give you the 'bar of light' effect.
The last image is my test rig for this project.
A video of the Junior Musicator in action here.
Step 5: Adding More Lights (and the Maths)
Each 2N4401 (or BC337) can handle up to 8 'strings' - but you will have to make sure each string is composed of identical LEDs as the first string - then adjust R-bright to 100/n, where n is the number of strings, connected in parallel. The value of R should be 100 * R-bright.
If you have a 9v system, then Start with (V-2)*0.9 = 6.3; Which means we can have 2 Whites OR 3 Reds, And if we have 4 strings of this, then R-bright would be 100/4, or 25-ohms. You can use 22-ohms here, and R should be 22*100, or 2.2k. NOTE: You can have up to 8 string ONLY with the 2 transistors specified. While high-powered devices like the TIP-series will work, they may not have the gain to drive the LEDs fully. If you want to use 2N2222, 2N3906 or similar audio transistors, limit the strings to 4 or less.
One final expansion is to duplicate the entire stage, starting with R, R-bright and the driver Transistor along with the SAME LED arrangement. Connect like the previous Stage, EXCEPT, do not connect R-bright to the input of the op-amp. It is still required but only to make the load identical to the first stage. This way, you can have up to 5 stages in total.
And, if you haven't yet, check out the Next generation of the Musicator! Please vote if you want to see more of the same.