Ultrasonic Sensor as Air Leak Detector?

I picked up an ultrasonic range finder and was hoping I could repurpose it for making a compressed air leak detector.

I did a simple sketch with Serial.println(pulseIn(pingPin, HIGH)); and blasted some compressed air at it, but the trace simply indicates “0” at the default 1 second interval.

I believe these ultrasonic sensor’s frequency response centers around 40kHz and I believe the turbulence from an air leak expresses itself in that range. If this had worked, I was going to make a band-pass filter and frequency divider to get an audible signal.

Should this work and I’m simply doing something wrong, -or- barking up the wrong tree?


You will probably need an amplifier, to bring the piezo output up to something detectable by the Arduino.

Ya bud, exactly. hooked the PicoScope up to the signal pin. 20mV at rest, only 100mV when I hit it with compressed air at 4 inches.

I should have known, not my 1st time with piezo crystals.

Thanks, Carl

Don't know where you got your theory of air leak having a frequency of 40KHz. Please read some basic tutorial on sonic rangers. They send a few pulses and then hear back, already with amplifier on board. The choice of 40KHz simply avoids interference from other noise/sound sources. The only reason the ranger can hear its echo is that some solid enough object reflects or scatters the pulses strongly enough for the ranger to hear. Your compressed air provides no change of density that the sound needs for reflection. Why not trying a barometer or something that tells pressure fluctuation? It's cheaper or just as cheap as a sonic ranger.