πŸ”” Smart Doorbell Button (Zigbee) with Sound, Lights, Notifications & Presence Awareness

:sparkles: About

This blueprint enhances your doorbell experience by combining multiple smart home actions into one automation. It can:

  • :loud_sound: Play a sound on one or more media players
  • :bulb: Flash lights in specific areas β€” great for hearing-impaired or silent mode situations
  • :iphone: Send a push notification to selected devices
  • :busts_in_silhouette: Use presence detection and zone conditions to control which actions occur

All of this is easily configurable via the Home Assistant UI β€” no YAML editing required!


Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.


:point_right: GitHub Link - Click Here

Version: 1.0


:gear: Features

  • :white_check_mark: Sound playback on selected media players
  • :white_check_mark: Flash any number of lights with customizable times and durations
  • :white_check_mark: Presence-aware actions (based on zone entity)
  • :white_check_mark: Notification support with custom title, message, and data
  • :white_check_mark: Optional custom actions input for power users
  • :white_check_mark: Runs all actions in parallel for responsiveness
  • :white_check_mark: Built-in logic to avoid triggering unwanted actions when not home
  • :white_check_mark: Everything is optional β€” tailor it to your needs
  • :white_check_mark: Accessibility-friendly: flash lights as a visual alert for deaf or hearing-impaired individuals

:wrench: Requirements

  • Zigbee Button device added
    • At this time only Zigbee2mqtt is supported, ZHA will come later
    • Should work with any button device but tested device SONOFF SNZB-01P
  • (Optional) A person or device_tracker entity and a zone for presence-aware features

:rocket: How to Use

  1. Click the import button above :point_up:
  2. Choose your trigger (e.g., doorbell button or contact sensor)
  3. Configure each section:
  • Enable/disable media, light, and notification actions individually
  • Choose entities, messages, playback URL, and conditions
  1. (Optional) Add custom actions at the end β€” anything YAML allows!
  2. Save and test β€” you’re done!

:bulb: Notes

  • Presence logic lets you choose if actions should occur always, only when someone is in the zone, or only when no one is.
  • All enabled actions are run at the same time for a quick response.
  • Lights are flashed and then restored to their original state using scene.create.

:speech_balloon: Feedback

Have suggestions or improvements? I’d love to hear them!
Feel free to fork, remix, and contribute on GitHub :rocket:

2 Likes