This is a series of blog posts that offers digital or analog circuit challenges as a diversion. You are allowed to use any Micro-controller and language, unless the challenge specifies a specific Micro-controller or language that you are to use. Post your circuit diagram, component list, source code, and describe what tool chain you used, as a comment. Any questions, ask via comment.
Challenge:
Create a circuit, using an Arduino, that determines the past ambient sound level of a room, by training itself continuously, using the last 1 minute of previous sound data. If a sharp increase in the current sound level is detected then an LED is lit during the increase in sound level; when the increase in sound level dissipates back to the previous ambient sound level then the LED should turn off. There should be a pushbutton to reset the training.
Microcontroler: Arduino
Components: Any
Language: Any
Tool Chain: Any