Troubleshooting

Common problems and how to fix them

Start here before opening an issue — most problems fall into a handful of categories, and a surprising share of the strange ones are solved by restarting the core services.

Try this first. Go to Settings → Services → Restart Core Services. It resolves a genuinely large fraction of odd behaviour, and it's fast and safe.

Detection problems

No detections at all

Work through it in this order:

  1. Restart core services from Settings → Services.
  2. Open the Live page and look at the spectrogram. If it's flat and silent, this is an audio capture problem, not an identification problem — skip to the microphone section below.
  3. Check your latitude and longitude under Settings → Settings → Location & Weather. With coordinates left at 0.000, range filtering has no idea where you are and can suppress the species that actually live around you.
  4. Check Settings → Station Doctor, which tests the recording and analysis services directly and offers one-click fixes.
Detections stopped suddenly after working fine

Usually a service that died rather than anything to do with the model. Restart core services, then check Station Doctor. A full disk can also stop recording — see the storage section.

Too many false positives

Some misidentification is inherent to acoustic ID, but you have three levers:

  • Review them. The Review queue surfaces uncertain detections with comparison clips. Marking one as a false positive removes it from species counts, insights, and eBird exports.
  • Set your coordinates. Range filtering suppresses species that don't occur near you, which eliminates a whole class of nonsense results.
  • Use the exclude list. For a species that's persistently wrong at your station, add it under Settings → Excluded Species List.

Raising the confidence threshold also works, but costs you real detections — try the above first.

It keeps detecting human speech or music

BirdNET-Pi ships with a human-voice filter: when the model hears speech near a detection, that detection is discarded rather than saved. Raising its threshold helps in environments with conversation, television, or radio nearby. Adjust it under Settings → Settings → Advanced Settings — the Privacy section on the Settings page describes the filter and shows its current value, but the control itself lives under Advanced Settings.

Access problems

birdnetpi.local won't load

That hostname depends on mDNS, which plenty of networks and devices simply don't resolve — Windows and some Android versions are common offenders. Use the Pi's IP address instead. Find it in your router's device list, or over SSH:

hostname -I

Then browse to http://192.168.x.x with that address. Consider giving the Pi a DHCP reservation so it stays put.

I don't know the login

The default username is birdnet and the password is empty until you set one. If you set a password and lost it, you can change it over SSH from the configuration file on the Pi.

Installation problems

The installer failed partway through

Check the install log first — it's in your home directory, named installation-YYYY-MM-DD.txt. The real error is usually near the end, and it's what anyone helping you will ask for.

By far the most common cause is a 32-bit OS. Confirm with:

uname -m

You want aarch64. If you see armv7l, you're on 32-bit and need to reimage with a 64-bit image.

Can I install alongside my existing web server?

Not supported. BirdNET-Pi expects to own the web server configuration on the machine, and installing over an existing stack causes conflicts that are painful to unpick. Use a dedicated Pi, or open a discussion about your setup.

Is a Raspberry Pi 3B+ or Zero 2 W good enough?

For detection, yes — with RaspiOS-ARM64-Lite specifically. But the analytics and insights pages do real work across your full history, and on those boards they get slow as data accumulates. A Pi 4B, 400, or 5 is strongly recommended if you plan to actually use the reporting features.

Microphone and audio

My USB microphone isn't detected

Over SSH, check that the system can see it:

arecord -l

If nothing is listed, it's a hardware or power issue: try a different USB port, avoid unpowered hubs, and reboot with the microphone already plugged in. If it is listed but you get no audio, check the input level under Settings — some USB microphones default to very low gain.

Recordings are noisy or distorted

Usually placement or gain. Shelter the microphone from direct wind and rain, keep it away from air conditioners and busy roads, and reduce the input gain if loud calls are clipping. The Live spectrogram is the fastest way to evaluate a change — a constant band across the bottom generally means low-frequency noise like traffic or wind.

Weather

No weather data is showing

Nearly always because latitude and longitude are still at their defaults. Set them under Settings → Settings → Location & Weather, then run a manual sync from Settings → Station Doctor. There's no plugin to install and no API key needed. See the weather guide for detail.

Storage

The disk is filling up

Expected to a point — BirdNET-Pi purges old audio automatically as space gets tight. Full recordings are deleted after analysis; only the extracted detection clips are kept.

The controls are under Settings → Settings → Advanced Settings → Disk Management:

  • Purge or Keep — whether a full disk deletes old files to make room, or stops the services instead and preserves everything.
  • Purge Threshold — how full the disk gets before that happens. Note this applies even when set to Keep: it's the point at which services stop.
  • Number of files to keep for each species — the most direct way to cap growth, since common species produce most of the volume.

Recordings you've crowned as favourites, and files you've excluded from purging on the Recordings page, both survive cleanup.

How do I back up my data?

From the web interface: Settings → System Controls → Backup data, then copy the archive somewhere that isn't the Pi. From the command line, assuming your backup medium is mounted at /mnt:

./scripts/backup_data.sh -a backup -f /mnt/birds/backup-2024-07-09.tar

And to restore:

./scripts/backup_data.sh -a restore -f /mnt/birds/backup-2024-07-09.tar

Large collections take a long time in both directions. Let it finish.

Still stuck?

Search the issue tracker before opening anything new — there's a good chance someone hit it already. Open an issue for problems and a discussion for ideas and questions.

When reporting a problem, include your Raspberry Pi model, OS version, whether you installed fresh or migrated, and the relevant part of the install log or service output. It saves a round trip.