Noise meter

Morgan Johnson

Overview

Below is an image of my project: Noise Detector. Which takes the level of noise in the environment around the device and tells you the level of loudness that it has captured. Green means that the level of noise if safe or not very loud. If the level of noise is a little loud and could be distracting the light will be orange. The last level is red indicating that the level of noise around you is very loud, and possibly harmful for your ears.

Hardware

Schematic Assembly

In this project I used a 32 Bit Freescale KL02 microcontroller (MCU Kinetics L Series) that uses an ARM Core Processor to run the device and its input/output functions. I used a small PUI audio analog microphone to capture the noise level for the device. Also two potentiometers to set the noise thresholds on the device, allowing myself decide the level of loudness that should be set for the device (The two potentiometers can be readjusted as well). This will allow the device to see what level of loudness was captured and display it convert it to an LED light. The LED is from KingBright and it has two LED’s, Red or Green, it can also display both at the same time. In addition there is a small switch on the device to turn it on and off, which is powered by two AAA batteries.

Software

To power on the device there is a slider set up to Pin 1, with a simple on off logic. The microphone capturing the noise levels is set up to Pin 7 and is setup for input. The noise level that was captured from the microphone is then placed into channel 10 and is then converted to a digital value for comparison by using the microcontrollers ADC. The two channels that are selected for comparison is channel 9 for lower threshold noise level, and channel 8 for upper threshold noise level.

Using an if/else statement we compare the current noise level at channel 10 to both the upper and lower thresholds in channels 9 and 8. If the current noise level was less than the lower threshold then we would write 1 to Port 5 for the Green LED and 0 to port 6 for the Red LED only displaying the Green LED. If the current noise level was greater than the upper threshold, then we would write 0 to Port 5 for the Green LED and 1 to port 6 for the Red LED only displaying the Red LED. Else the LED would be Orange by writing 1 to both port 5 and 6. This process will go on and repeat itself every 100ms till the device is powered on.

Final Thoughts

I am very happy with this device and its functionality, I also can change the level of thresholds which is great if I am in different environments and it does not affect my coding either. I hope to learn more about microcontrollers and their use in real life scenarios as they become increasingly more popular and more affordable.

Being told that I am talking too loud or if my roommates and I are playing video games or listening to music, this device can be used to monitor the level of noise that we make and adjust our volume accordingly before disturbing others.

Downloads


Last modified:Mon, Jan 23, 2023.

00074