BirdNETMic

ESP32 MICROPHONE FIRMWARE

Install BirdNETMic

ESP32 microphone firmware for BirdNET-Go and BirdNET-Pi. Install it from your browser or update an existing device over Wi-Fi.

USB installation needs Chrome or Edge on desktop. Download firmware ↗Setup guide Loading release…

Chrome or Edge on desktop · USB data connection
Updating? Choose the option that keeps existing data.

XIAO ESP32-C3XIAO ESP32-S3 / PlusXIAO ESP32-C5XIAO ESP32-C6M5Stack AtomS3UXIAO ESP32-S3 Sense (experimental)

AtomS3U and Sense use the S3 firmware. After Wi-Fi setup, open Audio → S3 board, select your board and click Apply board. AtomS3U has a built-in microphone; Sense support has not been tested on physical hardware.

A green bird singing into a microphone
01

Connect

Connect via USB. AtomS3U plugs directly into USB-A. For XIAO, use a USB-C data cable.

02

Flash

Select the USB serial device. The browser picks the firmware for your ESP32 chip.

03

Go wireless

Connect to ESP32-RTSP-Mic-AP and enter your Wi-Fi details.

First boot & Wi-Fi setup

The device starts an open access point named ESP32-RTSP-Mic-AP. Connect to it and enter your Wi-Fi SSID and password in the captive portal. The board saves your settings and rejoins your network.

If the portal does not open, visit http://192.168.4.1. Then reconnect to your normal network. Find the board’s IP in your router, or use its unique mDNS name, such as esp32mic-a1b2c3.local, shown in its Web UI.

Connect to BirdNET

After Wi-Fi setup, add the device’s RTSP stream to BirdNET-Go or BirdNET-Pi.

rtsp://<device-ip>:8554/audio1
rtsp://<device-ip>:8554/audio2

These paths also work with the device’s unique mDNS hostname when mDNS is available.

ALREADY CONNECTED?

Update over Wi-Fi

Open your device’s update page for an automatic update or a manual firmware upload.

Use the app-only image matching your board.

Download statistics

Firmware downloads across this website, device OTA updates, and GitHub.

Loading statistics…
Downloads—all selected releases
Latest release—downloads
Device OTA—automatic firmware downloads
GitHub—firmware assets downloaded
Releases

Fetching download totals…

How are downloads counted?

One complete firmware file transfer counts as one download. USB flashing counts only the app image; bootloaders and partition files are excluded. Device OTA and direct downloads are counted separately. Retries and repeat downloads can count again; these numbers do not measure unique devices or successful installations.

Website history is limited to retained server logs. GitHub totals cover published firmware assets.

Website checks by our release scripts, HEAD requests, failed and incomplete transfers are excluded. GitHub provides raw asset download counts, including historical tests and automation that cannot be separated. A release’s total adds its four boards and all download types. Historical transfers whose version cannot be verified are listed as “Unassigned”.