Files
ha-frigate/readme.md
2025-10-01 23:24:35 -05:00

101 lines
2.8 KiB
Markdown

# 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
```yaml
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.