Detect Migrating Birds with a Plastic Dish and a Cheap Microphone
spectrum.ieee.org
spectrum.ieee.org
But it it's not 100% accurate and currently focuses on birds from Canada, the US, and Europe.
Battery and sound card and preamplifier outdoors to then run a USB cable out to it seems like a bit of a faff.
(If you can count on it being next to a house where you can run a USB cable, you could also just power it off USB and skip the battery, right? So the battery must be designed in for a reason.)
The mic is a condenser mic, so a pre-amp is needed, XLR or not.
Cheap mics tend to be single-ended things without the balancing transformer or amplifier, so that would all be extra cost. XLR connectors and cables are more expensive. You'd want to go into some audio interface with XLR jacks which is also more expensive.
https://github.com/hcfman/sbts-aru
It's using a cheap (0.40c) sound card, but personally I choose to have high quality mics (primo em272 mic capsules, used in high quality parabolic systems.
However, there's nothing to stop you using < 10.00 euro microphones.
https://acousticnature.com/journal/how-to-make-diy-microphon...
Also, it passes all the audio through real time jackd, so while it's writing files you can also have an addition consumer running a real time matchin algorithm on it. If you use a Pi 4 or 5 you would be able to also do that at the same time on the same Pi as is recording.
But it works.
The pi supply hat also has that probably and no one has fixed it in a couple of years.
GP said "cheap MCU" - which I agree with. Ambiq MCUs use 1mA while active, but most ARM M0+ cores (RP2040, STM32) are going to be sub-50mA generally.
Spin a $2 4L PCB with all the POE circuitry (and receptacle), MEMS microphone IC, and MCU onboard.
This whole thing should cost <$25 total.
But along the way, I added a GPS to keep the time accurate and then with the sub-microsecond time accuracy I thought of sound localization. So I developed it further into a sound localizing recorder with in principle enough time accuracy to localize bats that are close even.
With the power of a pi and sub-microsecond clock timing, coupled with a linkage into jackd that can support multiple consumers, you can both record and still have enough CPU to on principle perform real time bird recognition and localization. That is not going to be possible on a microcontroller.
With this project I have been able to localize explosions to less than 20m accuracy from microphones located more than 3km away. Again not something possible on microcontrollers.
The setup of the author is at his own home. Which means that in principle he’s not constrained by power. With that’s setup by adding icecast2 and darkice. Whilst still recording and not needing a big host host computer. Likely even better with go2rtc. Next on my list to try.
Either way, galvanically isolating 5W isn't too terribly hard either.
Do you have any recommended links to that galvanic isolation I could look at ? I’m encouraged by your view on this.
https://www.analog.com/en/products/adum6000.html
Things like this are a fancy way to go about it - otherwise very-filtered flyback will probably get you where you need to be.
https://thepihut.com/products/power-filter-board-for-raspber...
The chip you point to suggests a much simpler approach. Is it really that simple? There are a great many more bits on the board I point to. Why would they take a hard way if one simple chip can do it ?
The ADUM isolator I linked as well as flyback converters use transformers to provide a high-voltage isolation barrier between the source and device being supplied.
Transformers are generally larger, more expensive, and less efficient than non-isolated DC circuits.
The POE supply itself is isolated (with a transformer) and doesn't need to be noisy necessarily - but if you want even more quiet, another level of isolation can't hurt.
The point being that if I had take a potentially easy way of just recording directly from the device to write the files, then I would not easily at the same time be able to perform real time analysis of the stream. So the way I've done it you can indeed do this.
Note, with manual examination of the sound files with raven lite, I'm able to reliably determine the start time of a sound to less than a millisecond of error (Jitter in the pipeline, otherwise it would be a lot more accurate).
Making it entirely possibly to locate the position of bat calls in real time to quite a good degree of accuracy if you wanted.
If you want to pay more you can also get Pettersen ultrasonic microphones. These have a USB microphone and will also work with my sbts-aru recorder. Which means you could in principle also geolocate where the bats are.
See - https://zachpoff.com/resources/cheap-microphones-for-ultraso...
Reading wikipedia "Bats emit calls from about 12 kHz to 160 kHz, but the upper frequencies in this range are rapidly absorbed in air.", so I guess the Primo wouldn't be suitable for the higher bat freqs.