Analysis updated 2026-07-25
Play a doorbell chime through Sonos speakers when a UniFi Protect doorbell is rung.
Unlock a gate using a physical button wired to a Raspberry Pi.
Control chime settings, quiet hours, and speaker selection from a local web page.
Open a gate remotely from a browser on your local network.
| eddwills95/protect-sonos-doorbell | 0xustaz/streamgate | a-bissell/unleash-lite | |
|---|---|---|---|
| Stars | 1 | 1 | 1 |
| Language | Python | Python | Python |
| Setup difficulty | hard | hard | hard |
| Complexity | 4/5 | 4/5 | 4/5 |
| Audience | general | developer | researcher |
Figures from each repo's GitHub metadata at analysis time.
Requires a Raspberry Pi with wired GPIO button, a UniFi Protect console with Alarm Manager, and Sonos speakers on the same network.
This project turns a Raspberry Pi Zero into a smart doorbell and gate opener that connects two separate home systems: UniFi Protect (a security camera and doorbell platform) and Sonos wireless speakers. The setup does two main things. First, a physical push button wired to the Raspberry Pi can unlock a gate. When pressed, the Pi sends a signal to UniFi Protect's automation system, which triggers the gate lock. Second, when someone rings a UniFi Protect video doorbell, that event triggers a notification to the Pi, which then pauses any music playing on your Sonos speakers, plays a doorbell chime sound, and restores the music exactly where it left off, at the same volume and playback position. A small web interface lets you control the system from a browser on your local network. You can pick which Sonos speakers should play the chime, adjust the volume and number of repeats, set quiet hours when the chime stays silent, and upload a custom chime sound. There is also a button to open the gate remotely. A live log page shows what the service is doing in real time. The setup requires a UniFi Protect console with its Alarm Manager feature configured, at least one Sonos speaker on the same network, and a momentary push button wired to the Pi's GPIO pins. The code communicates with Sonos speakers directly using their built-in network protocol, avoiding external libraries that are slow or difficult to install on the Pi Zero's limited hardware. Configuration is done through a simple environment file where you specify the webhook URLs, API keys, speaker IP addresses, and chime settings. The project runs as two background services on the Pi: one watches the physical button, the other handles the web server that receives doorbell notifications and serves the settings page. One practical note from the documentation: if the settings page or doorbell feels slow or stuck, a configured Sonos speaker is probably offline, and the system has to wait for the connection to time out before continuing.
Turns a Raspberry Pi into a smart doorbell that plays a chime on Sonos speakers when someone rings a UniFi Protect video doorbell, and can unlock a gate via a physical button.
Mainly Python. The stack also includes Python, Raspberry Pi, UniFi Protect.
The explanation does not mention a license for this project.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly general.
This repo across BitVibe Labs
Verify against the repo before relying on details.