Low Noise Floor Microphone

[Matt] likes to make videos (and he’s pretty good at it judging by the quality of his videos). But video isn’t much without audio. Handheld recorders with small built-in microphones have a fairly high noise floor so [Matt] has a Rode NT1-A — a pricey but very quiet microphone. However, for field work, it isn’t handy since it requires a power supply and preamp to go along with it.

low-noise-floor-binaural-microphoneAnother problem is that for stereo recording you need two and because they are quiet, they tend to pick up handling noise so you probably need to mount them on tripods. That’s all too much to carry around, especially on a hike. So [Matt] cannibalized two microphones. He repackaged them in a shock mount (made from a bird feeder and elastic), and added a battery pack and a custom preamp. The shock mount eliminates the handling noise and the custom PC boards mean you don’t have to carry a lot of extra gear.

The end result (see the video below) looks like someone made a purse out of a tribble, but it does sound good. If you hang on through most of the video (of fast forward to about 7:25), you can hear the microphones picking up thunderstorms, the ocean, the wind, and even [Matt’s] heartbeat.

Continue reading “Low Noise Floor Microphone”

Filtering Noisy Data With An Arduino

One of the first frustrating situations a beginning microcontroller programmer will come across is the issue of debouncing switches. Microcontrollers are faster than switches, and the switch has yet to be built that can change state in zero time like they can on paper. This hurdle is easily overcome, but soon we are all faced with another issue: filtering noise from an analog signal. Luckily [Paul Martinsen] has put together a primer of three different ways to use an Arduino to filter signals.

The first (and fastest, simplest, etc.) way to filter an analog signal is to sample a bunch of times and then average all of the samples together. This will eliminate most outliers and chatter without losing much of the information. From there, the tutorial moves on to programming a running average to help increase the sample time (but consume much more memory). Finally, [Paul] takes a look at exponential filters, which are recursive, use less memory, and can be tweaked to respond to changes in different ways.

[Paul] discusses all of the perks and downsides of each method and provides examples for each as well. It’s worth checking out, whether you’re a seasoned veteran who might glean some nuance or you’re a beginner who hasn’t even encountered this problem yet. And if you’re still working on debouncing a digital input, we have you covered there, too.