I'm using a array of hydrophones to localize an underwater pinger (37.5 kHz and 45 kHz) and I'm thinking of using LM567 tone decoder as a frequency filter. The other option is to design a custom bandpass RC/RLC filter.

  1. What are the pros and cons of both options?
  2. What order and type of bandpass filter should be built and why?

Edit: this will be deployed on an AUV with limited space. Planning to use a Teensy 3.6 ARM board for pinger localization algorithm.

  • \$\begingroup\$ How can you design anything without a worst test criteria, i.e. a design spec. What is the unconditioned signal level and SNR, what is the noise BW, frequency shift from Doppler, desired output analog envelope? digital? what threshold? dynamic range? What filter BW would be ideal? what group delay distortion is too much? \$\endgroup\$ Aug 1, 2019 at 16:47
  • 1
    \$\begingroup\$ you have no hope with an LM567 of any decent imaging and even less chance of success without specs for everything that matters. \$\endgroup\$ Aug 1, 2019 at 17:13
  • \$\begingroup\$ Well, lm567 works at your frequency ranges. Your freq ratios are 20% apart. The '567 is susceptible to voltage, temperature, R n C variations. It's pll based and widest b/w is 14% of f0. So it might actually be feasible if you control all the variations possible. Sounds cheap enough to try out! Give it a test run..Be aware that output of '567 is digital yes/ no. \$\endgroup\$ Aug 2, 2019 at 16:55

1 Answer 1


Neither options seem very reasonable in 2019.

  • the RLC is unnecessarily bad a filter, unless you do many stages, which becomes very complicated,
  • tone detection is very sensitive to more than one tone being present, so not usually an option for audio / hydrophones.

You'd want to do your localization in digital anyway, so do the filtering in digital, too.

You don't need very much bandwidth by modern standards. In fact, this would be pretty trivial to build with but a cheap soundcard (e.g. the one integrated in your PC/Laptop/shmartphone) with few external components.

You'd want to use your sound card to sample the hydrophones. Now, sadly, soundcards are meant for humanly audible sound, so you can't use them to pick up 37.5 kHz (or even higher) directly.

What's easily possible, however, is frequency-mixing your 37.5 kHz and 45 kHz down to lower frequencies that you can, in fact, easily pick up with a sound card. Then, in software, throw some bandpass filters at the problem – software bandpass filters can be arbitrarily steep (given that audio sampling rate signal processing doesn't pose a serious load for any modern smart phone or PC).

So, what you'd want to do is

  1. Generate a tone at frequency f (we call that local oscillator, LO), so that both |37.5 kHz - f| and |45 kHz -f| are within what your soundcard can record. Notice the absolute value there!
  2. Use that tone to mix down your very coarsely (e.g. single-stage RLC filtered) filtered hydrophone signal.
  3. Digitize the mixing results with your sound card, and build digital filters to select |37.5 kHz - f| and |45 kHz - f| as narrowly as you want, to maximize SNR.

Tadah, you've just built a superheterodyne receiver for hydrophones, with IF filtering implemented in software, where filters are free and trivial to construct precisely, and for location purposes very importantly, with linear phase and thus defined group delay. That's not even possible with RC/LC/RLC, mathematically!

A down-mixer is just any nonlinear device (e.g. a diode) that you feed with the sum of the LO and the high-frequency signal. Then, the result is low-pass filtered (single-stage RC filter), to eradicate all the harmonics you don't want.

If you're able to do a bit of digital design yourself: get a microcontroller with as many ADC channels as you need. You can do bandpass subsampling to directly mix down the signals with (multiples of) the sampling frequency. That would still require you to do a very rough analog bandpass filter, but definitely minimize the complexity of your design.

  • 1
    \$\begingroup\$ Yeah, that sounds like that would be one way to go, except I'm deploying this on an AUV, so I won't really have a sound card around 😅 I'll be using a Teensy 3.6 ARM board, and with the limited space in the vehicle, I won't have space to put a sound card as well 😅 \$\endgroup\$
    – Sandesh
    Aug 1, 2019 at 15:49
  • 2
    \$\begingroup\$ ah nice, but the teensy is plenty powerful enough to directly subsample! \$\endgroup\$ Aug 1, 2019 at 15:52
  • 1
    \$\begingroup\$ like, seriously, this is what the microcontroller on the teensy was designed to do. You can even sample at a rate that's definitely high enough to directly capture 45 kHz: Just add a RC filter that cuts off above 45 kHz, let your ADC run at > 90 kHz (for example 100 kHz), and do the band-pass filtering in teensy firmware. All you need in analog hardware are per hydrophone channel: \$\endgroup\$ Aug 1, 2019 at 15:54
  • 1
    \$\begingroup\$ 1 hydrophone + 1 RC filter (that's 1 R and 1 C) + opamp channel as amplifier \$\endgroup\$ Aug 1, 2019 at 15:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.