Making a simple bat detector

Hello,

I'm currently working on a project that involves me making a small and simple bat detector using the Arduino.

Basically, what I'm attempting to do is have a device that can be placed outside, which records sounds at the Ultrasonic frequency range, this is then recorded to a MIcro USB device in the .wav format. It does not really need to do any complex processing, if any at all. Just the basic requirements of recording. I've been looking at getting this shield from Adafruit:

http://www.adafruit.com/products/1381#Description

Would this therefore be compatible in recording at the frequency that I want? Also, there is another problem in choosing the right microphone/sensor in order to record at such frequencies. I don't want to use a USB microphone, I know there are such products out there, instead what I want to do is actually create this onto a bread-board where hopefully, in the future this can be soldiered permanently. In the mean time, this is just for prototyping purposes.

Does anyone have any recommendations? Both of the shield from Adafruits and the sensor that I should/could use.

Thanks =)

Most microphones won't pick up bat calls very well (if at all) and if you do manage to capture something then the Ogg Vorbis compression used to record it on this shield will surly not encode bat frequencies. You really need a frequency divider, time expansion circuit to make it audible. See here

Hey,

Thanks for the reply. Could you recommend to me any shields for the Arduino that might be of use to me? I don't really want to have to engineer my own; since this is only a small part time project of mine. (I'm basically writing the software to work with this to analyse the prototype)

There are ones already out there on the market: http://www.engineeringshock.com/store/p136/40kHz_Ultrasonic_Transducer_Transmitter_DIY_Kit_with_Custom_PCB.html

Which these do claim to have interfaces to work with the Arduino. But, I wanted to create something similar but onto the breadboard which can then record the bats. The frequency of the bats are between 41kHz and 64kHz

Thanks

The frequency of the bats are between 41kHz and 64kHz

No.

Their hearing range varies by species; at the lowest it can be 1 kHz for some species and for other species the highest reaches up to 200 kHz.

From

The frequencies used by M. mystacinus for echolocation lie between 34–102 kHz, have most energy at 53 kHz and have an average duration of 3.0 ms

Taken from: http://en.wikipedia.org/wiki/Whiskered_bat

It's bat wars then.

So, then the values the frequency ranges from are stated to be as low as 10 kHz to as high as 120 kHz.

http://hypertextbook.com/facts/1998/JuanCancel.shtml

The point is that you need to sample at twice the highest frequency and then you need lots of memory to store it in. An SD card will not be fast enough to write data into with a Uno, you will have to use a Due to stand any chance.

These people do good kits:- http://www.magenta2000.co.uk/ They use a heterodyne technique to put the bat range into human hearing range. You could then record that.

Hey,

Thanks for the reply. But, even with a Duo, where would I be able to find the hardware (Sensor/Microphone, ADC) to be able to record at such high frequencies?

Hi,

The problem is - I don't really want to use a third party product. I actually want to create a prototype using breadboards which I can then test.

Phorce: The problem is - I don't really want to use a third party product. I actually want to create a prototype using breadboards which I can then test.

This is at odds with what you said earlier:-

Could you recommend to me any shields for the Arduino that might be of use to me? I don't really want to have to engineer my own;

Hey,

So basically. I don't want a finished product. So a product like this: (http://www.adafruit.com/products/1381#Technical_Details) could be useful, since I can apply this to a breadboard and connect the sensors, however many sensors I want/need.. Rather than having a pre-built complete bat detector..

Does that make more sense to you? :)

I.e. Could this work? http://www.engineeringshock.com/store/p136/40kHz_Ultrasonic_Transducer_Transmitter_DIY_Kit_with_Custom_PCB.html

They do say it has compatibility with Arduino

Could this work? http://www.engineeringshock.com/store/p136/40kHz_Ultrasonic_Transducer_Transmitter_DIY_Kit_with_Custom_PCB.html
They do say it has compatibility with Arduino

Yes but it is an ultrasonic transmitter not a reliever. All the arduino can do with it is turn it on and off.

Do you actually want to record the ultrasonic bat sounds or would a heterodyne sound that you can here be sufficient for your needs?
In other words what to you want from this detector, just the presence of bats or an analysis of the sound they produce?

Hey,

I basically need to record the bat noises into an audible format to which I can play back and listen to it (so basically convert it to an audible sound that humans can hear) thus meaning I can analyse the data. At the present moment we are using a standard detector that can listen to the bat sounds and output these into audible sounds that humans can hear.

I was basically told this:

Most simple bat detectors I’ve seen use a binary counter chip to divide the audio frequency by 16. This shifts the calls into the audible range, but destroys all pitch and volume variation

This would be sufficient enough for the project, however, I will still need to record at the given frequency in order to be able to divide the frequency by 16 thus producing an audible sound.

If, the shield what I posted in my first link would be sufficient enough to sample at such frequencies then I could use this because of the capabilities of SD storage. But I will only be able to sample at (24 kHz) and not the measure that I need.

I only need this to record one species of bats, no more species have to be detected. It’s just a matter of recording the echolocation/social calls and converting these into a human audible format.

Also, not on a Duo, I realise the potential and the characteristics the Duo has, but I would like to use a SD card.
Thanks!

I will still need to record at the given frequency in order to be able to divide the frequency by 16 thus producing an audible sound.

No, you can do the division before you record. Basically what you here by a division or heterodyne is a series of clicks. If you record the full sound and slow it down about 10 times you will here a series of gliding tones from a high frequency to a low one. However the problem is that to record 1 second of sound at a sample rate of 100KHz with 12 bits per sample you will need about 150K of memory.

You can not write into SD memory at that speed with an Arduino Uno. Therefore you have to use a external ram chip to do this. The next problem is that you can not use the internal A/D converter at that sort of speed, about 20K samples per second is the best you can do. You could go faster by lowering the number of bits per sample but not to anything approaching 100KHz. Therefore you would have to run an external A/D chip.

Once you have the samples in memory you can play them back at any speed time stretching and down shifting the frequency as you go.

Okay! So let's assume for a second that it was possible to record the samples to the SD card available, that would be problem 1 solved.

Where on this earth could/would I find a ADC capable of reaching such speeds? Also, the Microphone needed in order to pick these kinds of sounds up? I mean.. Are there such products out there without having to spend a massive amount of money doing so?

I mean, this is sounding like it could potentially take up a lot of time, if this is the case, I might just go down the road of recoding "human hearing sounds" with the Codec shield in order to demonstrate the working software.

Where do you think I should go from here, in terms of finding everything that I need?

So let's assume for a second that it was possible to record the samples to the SD card available, that would be problem 1 solved.

Yes you can solve all you other problems like that. Where does it get you?

Where on this earth could/would I find a ADC capable of reaching such speeds?

From most distributors, 100KHz is not a very fast A/D. Try a AD7822 for a start.

the Microphone needed in order to pick these kinds of sounds up?

Yes you get one in that low cost Magenta bat detector kit I linked. You can throw away the rest of the kit and use the microphone and input amplifier.

I mean, this is sounding like it could potentially take up a lot of time,

Yes the title of the post says "simple" bat detector but your requirements are not for a simple one.

Where do you think I should go from here, in terms of finding everything that I need

Start googling bat detector schematics.

Grumpy_Mike:

Where do you think I should go from here, in terms of finding everything that I need

Start googling bat detector schematics.

Here looks a good place to start. Also look here and maybe here.

An excellent ultrasonic microphone can be salvaged from old Polaroid cameras that use ultrasonic ranging to focus. I sometimes find these at thrift stores for around US $1, but you can buy them on ebay, e.g. http://www.ebay.com/itm/Vintage-Poloroid-Sun660-Sun-660-Auto-Focus-Autofocus-Instant-Camera-TESTED-/191030531616?pt=US_Vintage_Cameras&hash=item2c7a4e9620

The microphone has a quite uniform response from 20 kHz to over 100 kHz, but requires a high voltage (100 - 300 V, extremely low current) power supply for proper biasing.

Phorce: Okay! So let's assume for a second that it was possible to record the samples to the SD card available, that would be problem 1 solved.

Where on this earth could/would I find a ADC capable of reaching such speeds? Also, the Microphone needed in order to pick these kinds of sounds up? I mean.. Are there such products out there without having to spend a massive amount of money doing so?

I mean, this is sounding like it could potentially take up a lot of time, if this is the case, I might just go down the road of recoding "human hearing sounds" with the Codec shield in order to demonstrate the working software.

Where do you think I should go from here, in terms of finding everything that I need?

Take a look at my website for inspiration...http://www.afraidofsunlight.co.uk/weather/index.php?page=bat :)

This is my first post here, so hello to each of you. I'm rather interested too in building such a device :) Unfortunately, I don't have time for it right now, but I'll share some ideas (I hope useful).

I've just bought a device called Ardubat which is a frequency division analyzer + logger. Aimed at low-cost, built on Arduino Uno. You may find some useful information on their author's websites. Unfortunately, I have to wait for spring to test mine...

Nevertheless, the microphone is a low-cost solution and not the best of its kind for time expansion or any recording. Budget is clearly higher but I'm convinced too that something still "affordable" can be done in 2014. So, you may instead find a MEMS microphone (you have plenty "breakout boards") which seems much more responsive above 40KHz.

About digitizing a sound sample and play it slowed down, you may try the Arduino Due, which can sample at higher frequencies (certainly 100KHz, hope 200KHz for Nyquist requirements) AND play "natural" sound with its digital to (really) analog converters.

If you rather go for an heterodyne setup, it can generate a 100KHz sinus wave (or square wave).

For "sampling down" for direct listening, you can: - use Fourier transform and shift everything down - fast option, rather near frequency division: average every block of 10Hz ?