I'm in the process of building a VU tower with an addressable LED strip and a microphone. I had the micorophone connected to an analog in pin on the arduino but I noticed something weird when the wire came loos from the microphone... the loose wire acted like a proximity sensor! Somehow the loose wire was giving data to the Arduino based off of how close objects were to the wire. Just for the sake of curiosity, does anyone know why this is happening?
Here's a link to a video to demonstrate:
Analog input pin has very high resistance, acts like an antenna, picking up any nearby electrical fields. Has been discussed in the forum many times.
It sounds like you accidentally built yourself a Theremin.
wvmarle... that's the first thing that came to mind when i noticed it happening lol
It is exactly how a Theremin works: detecting minute disruptions of electrical fields. It's also how a capacitive sensor works.
Basically CMOS inputs are insulated by a layer of quartz (the gate oxide) from the circuit, so tend
to make very good electroscopes (input resistance > 10^13 ohms). Most devices have protection
diodes which have some leakage current (input resistance ~ 10^10 ohms at room temp, 10^8 ohms
at high temps).
An electroscope is normally a high voltage device for measuring electrostatic fields, but any voltage
sensor that takes no current is by definition an electroscope.
You don't normally realise that good insulators are commonly carrying charges of 100's of volts on
their surfaces routinely (esp in dry weather). A CMOS input can see that - try waving a piece of plastic near one.