Fun Raspberry Pi project: Identify backyard birds 24/7

Have you ever wanted to know what birds you hear at home? You can use BirdNET-Pi on your Raspberry Pi with a small microphone to record and ID birds 24/7. I’ve been curious about this project for a while and decided to take the plunge.

Inside of birdnet pi outdoor box

As an Amazon Associate I may earn from qualifying purchases through links on this page.

BirdNET-Pi logo

This year, I learned about a project called BirdNET-Pi which, when installed, turns your Raspberry Pi into a 24/7 monitoring station. This station records audio constantly and uses BirdNET’s AI model to identify the birds it hears. I also built a digital counter to track the birds that visit my backyard.

BirdNET-Pi is accessible over your local network once set up and gives you a dashboard of recently detected birds. It will show their spectrographs and a photo from Flickr.

An example of statistics the BirdNET-Pi can produce once you’ve had it running for a while.

What’s needed

I grabbed one of my Raspberry Pi 3B+ and started preparing the SD card according to the installation guide (3B+ 0W2 and 4B). The OS was installed smoothly and the Pi powered on, then the BirdNET-Pi software was installed with a single command once I connected to it over SSH.

The microphone for the BirdNET-Pi setup can be a USB mic or a regular one connected to an external USB sound card (a glorified dongle in this case). I opted for the dongle and regular lav mic since both were available with same-day shipping. Thankfully, once I connected it, the BirdNET-Pi started detecting audio right away.

For my initial, hasty BirdNET-Pi build, I plugged the Raspberry Pi next to my back door and ran the microphone wire under the door, and taped it to the exterior house wall. This picks up the sounds from my backyard birds.

From proof-of-concept to a permanent build

Once this proof of concept was done, I moved on to build a more permanent solution. I researched and found this BirdNET-Pi setup from Pixcam that includes an outdoor enclosure. I picked up all the needed items, substituted the Ethernet port for another USB, and began work on building my own outdoor BirdNET.

Items needed for the outdoor enclosure

I removed the Pi’s case and then struggled to install a fan/heat sink due to a missing piece. I improvised my way into getting it securely attached.

Inside of the birdnet outdoor station showing heat sink
The inside of the BirdNet-Pi outdoor enclosure. You can see the black heat sink with the built-in fan. It was a pain to install on the Pi.

The fun part was getting the enclosure ready for the Pi. This box is built to house electronics, so it came with a mesh board to which you can attach various components. I drilled some small holes to help attach the Pi to the board, then moved on to the enclosure itself. The guide I followed recommended drilling the holes with some fancy drill bit I didn’t have so I used the largest one I had to start and struggled my way into getting it the right size. Repeat this arduous process for the second hole.

Bottom of the outdoor birdnet enclosure
The bottom side of the enclosure. It offers a USB port on the outside on the right and a USB port inside on the left. The idea to flip the left cable the other way ended up being both necessary and beneficial for my setup.

With the box prepped, I screwed in the mesh board, plugged in all the wires, printed cute labels, and admired the work.

Inside of birdnet pi outdoor box
My best attempt at cable management. Doesn’t need to be pretty!
Outside of birdnet pi enclosure
The front side of the BirdNET-Pi enclosure. It didn’t need a label, but I have a label maker so why not?
Bottom and side of birdnet pi enclosure
It’s all ready to be plugged in.

The final install

Then I mounted the enclosure near an outdoor outlet next to the backdoor.

BirdNet pi installed outside
The outdoor enclosure’s final location.

I plugged it in and, success, it worked! The only issue I ran into post-installation was I noticed the USB microphone picking up interference. To fix this, I plugged in my previous sound card dongle and 3.5mm lavalier mic and it solved the problem.

Spectrograms and recordings arrive

Here is a clip of a Killdeer the Raspberry Pi captured along with the spectrogram it generated:

Killdeer calls out in the night.
Killdeer spectrogram from birdnet-pi
See the Killdeer call between 4-5kHz.

Check out this live dashboard I built. It pulls in live recent detections and leverages the BirdWeather API to request the data.

birdnet pi logo

My BirdNET-Pi Station live stats

Birds acoustically detected in the past 24 hours

0
total detections

101952 lifetime detections since 12/22/22

My BirdNET-Pi station listens and analyzes 24/7 the birds that visit my yard. Each detection is automatically logged and submitted to BirdWeather.com. The live stats above reflect recent species and the frequency detected.

15 thoughts on “Fun Raspberry Pi project: Identify backyard birds 24/7”

    • I wish! That’s what I did before I got the outdoor enclosure. I hid the Pi in a closet and snaked the lav under my backdoor to get the mic outside. It worked but wasn’t ideal. If I had a better option, that would definitely be preferred!

      Reply
  1. So just wondering Jeffery I also live in Central TX, even with the fan and heatsink aren’t you concerned about the Pi overheating during the summer?

    Reply
  2. Jeffrey so my set up has been running for a month or so now and all is great, thanks again for the How- to. I do have a question, Do you have any Idea if you could or is there a way to run an array of microphones instead of just the one? Thanks

    Reply
    • The only way I know how is via RTSP video streams. If you have security cameras with that on the property you can input those urls into the settings and it will analyze both streams.

      Reply
      • Wait, I haven’t gotten all the way into this yet, so I’m sorry if the answer to this Q would become obvious once I finally run the software, but if I have multiple IP cameras on my network am I able to pull audio from the microphone from each of them via the RTSP output?

        Meaning I don’t actually need a usb mic?

        I will add those IP cameras typically have a ton of audio gain and no wind buffer, so I suspect they won’t be amazing. Any thoughts on that aspect?

        Reply
  3. Wow, this is an amazing project. Awaiting parts and pieces to build this thanks for the detailed write up.

    One question you may be able to help me with, as I’m much better at the building side than any programming (I can flash a Pi but then it gets murky)… I saw a fork of BirdNet-Pi called BattyBirdNET-Pi and was wondering if one RPi could run both with 2 separate mic’s to have the best of both worlds. Fun daytime bird stats and utilize the device for some night time discovery.

    Reply
    • Hi Rick, thanks for checking it out!

      One idea for you to keep in mind as these projects continue to grow is to install Docker on your Pi. Make sure to use the 32-bit or 64-bit guide accordingly. The benefit of docker is you can install and run multiple apps at once. Often these open source have easy scripts to install via Docker. I’ve been using a fork of BirdNET-Pi which has a nicer interface and can run in Docker.

      BattyBirdNET-Pi doesn’t seem to support Docker yet, but it may become an option in the future. That project is SO cool and now I want to do it too! I had no idea it existed!

      Here’s another longshot idea that depends on your setup: BirdNET-Pi supports RTSP streams from security cameras, so, if you happen to have any wired cameras running at home, you could run the bird or batty software on an indoor computer and use the IP address to a camera within earshot of the birds outside. My BirdNET-go instance has been running great for a few months listening to one of my backyard camera feeds.

      Reply
      • Thanks Jeff this is very helpful!

        So glad I was able to point in the direction of something new!

        I haven’t built anything yet, awaiting parts but using yours as a template. I just figured that if the box is built and implemented why not have it do both with the same hardware…..need to save on costs somewhere.

        Thanks again and welcome to the new rabbit hole.

        Reply

Leave a Comment