2025-10-01 23:19:12 -05:00
2025-10-01 22:07:24 -05:00
2025-10-01 23:24:35 -05:00

ha-frigate

Home Assistant and Frigate NVR configuration for intelligent doorbell person detection with debounced notifications.

Overview

This repository contains configuration files for a doorbell camera setup using Frigate NVR for object detection and Home Assistant for smart notifications. The system detects people approaching the door and sends a single notification per approach, with thumbnails showing the exact moment of detection.

Hardware

  • Camera: Amcrest AD110 Video Doorbell
  • Detection: CPU-based (3 threads)
  • Server: Unraid with Docker
  • MQTT: Home Assistant MQTT broker

Features

  • 🎯 Person detection optimized for doorbell camera positioning
  • 📸 Event snapshots with accurate thumbnails in notifications
  • 🔕 Smart notification debouncing (max 1 per minute)
  • 💾 5-day motion-based recording retention
  • 🚀 Low CPU usage with optimized detection parameters

Files

  • config.yml - Frigate NVR configuration
  • doorbell_notification.yaml - Home Assistant automation

Frigate Configuration Highlights

detectors:
  cpu:
    type: cpu
    num_threads: 3

objects:
  filters:
    person:
      min_area: 2000
      min_score: 0.6
      threshold: 0.5  # 0.5s detection time before triggering

Detection Parameters:

  • min_area: 2000 - Minimum pixel area for person detection
  • min_score: 0.6 - Confidence threshold (60%)
  • threshold: 0.5 - Person must be detected for 0.5 seconds

Home Assistant Automation

The automation triggers on new person detection events and includes:

  • mode: single - Prevents concurrent runs
  • 60-second cooldown between notifications
  • Dynamic event snapshot URLs
  • Deep link to camera dashboard

Setup

Frigate

  1. Copy config.yml to your Frigate config directory (typically /config)
  2. Update the following values:
    • MQTT credentials (host, user, password)
    • Camera RTSP URLs and credentials
    • Camera IP address in the snapshot URL

Home Assistant

  1. Import doorbell_notification.yaml as a new automation
  2. Update notify.household_phones to your notification service
  3. Adjust the camera dashboard URL if needed

Tuning

Too many notifications?

  • Increase cooldown delay in Home Assistant automation (currently 60s)
  • Increase threshold in Frigate config (higher = longer detection time required)

Missing detections?

  • Lower min_score (currently 0.6)
  • Lower threshold (currently 0.5)
  • Lower min_area (currently 2000)

Detection too slow?

  • Lower threshold to 0.3-0.4 seconds
  • Ensure cooldown in HA automation prevents spam

Network Configuration

  • Frigate Web UI: http://192.168.0.5:5341
  • Camera IP: 192.168.0.118
  • MQTT Broker: 192.168.0.205:1883

License

MIT

Credits

Optimized through iterative testing for the Amcrest AD110 doorbell form factor and typical approach patterns.

Description
Home Assistant and Frigate NVR configuration for doorbell person detection with smart notifications. Optimized for Amcrest AD110 doorbell with CPU-based detection and notification debouncing.
Readme 36 KiB
Languages
Markdown 100%