Saltar al contenido principal

Frigate NVR y Hailo en reComputer AI box & Industrial box conectado con Home Assistant

Introducción​

Frigate NVR es un grabador de video en red (NVR) de código abierto diseñado específicamente para detección de objetos en tiempo real usando modelos de IA. Es ligero, potente y funciona perfectamente con cámaras a través del protocolo RTSP.

Home Assistant (HA) es una plataforma de código abierto para automatización del hogar inteligente que te permite controlar y automatizar dispositivos en tu hogar.

En esta guía, te explicaremos cómo instalar Frigate en un reComputer AI box & Industrial box equipado con Hailo PCIe, y cómo conectarlo a tu configuración existente de Home Assistant usando MQTT con mínimas complicaciones.

Prerrequisitos​

Requisitos de Hardware​

reComputer AI R2130reComputer AI Industrial R2145reComputer Industrial R20xxreComputer Industrial R21xx

Instalar Controlador PCIe Hailo​

Paso 1: Configuración de Raspberry Pi​

sudo apt update
sudo raspi-config
  • Navega a 6 Advanced Options > A8 PCIe Speed
  • Selecciona Yes para habilitar PCIe Gen 3
  • Sal y selecciona Finish

Añade la siguiente línea al final de /boot/firmware/config.txt:

dtoverlay=pciex1-compat-pi5,no-mip

Paso 2: Instalar Controlador PCIe​

sudo apt update
sudo apt install dkms
git clone https://github.com/hailo-ai/hailort-drivers
cd hailort-drivers/linux/pcie
git checkout 24e7ff2fb58fab7029024c1a1d3f2d1914f56d7b
sudo make install_dkms

Paso 3: Instalar Firmware​

cd ../..
./download_firmware.sh
sudo mkdir -p /lib/firmware/hailo
sudo cp hailo8_fw*.bin /lib/firmware/hailo/hailo8_fw.bin

Paso 4: Corregir Problema de Tamaño de Descriptor PCIe​

Crea /etc/modprobe.d/hailo_pci.conf con este contenido:

options hailo_pci force_desc_page_size=4096

Paso 5: Reiniciar y Verificar​

sudo reboot
ls /dev/hailo*

Salida esperada:

/dev/hailo0

Instalar Frigate NVR con Docker​

Prerrequisitos​

Asegúrate de que tu cámara esté configurada para transmisión RTSP a resolución 1920x1080.

Actualizar Sistema​

sudo apt update

Instalar Docker​

curl -fsSL get.docker.com | bash
sudo usermod -aG docker $USER
sudo reboot

Descargar Imagen de Frigate​

docker pull ghcr.io/blakeblackshear/frigate:0.15.0-rc2-h8l

Crear Estructura de Directorios​

mkdir -p ~/frigate/config
mkdir -p ~/frigate/data/db
mkdir -p ~/frigate/data/storage
cd ~/frigate

Crear Archivo Docker Compose (frigate.yml)​

nano frigate.yml
services:
frigate-hailo:
container_name: frigate-hailo
privileged: true
restart: unless-stopped
image: ghcr.io/blakeblackshear/frigate:0.15.0-rc2-h8l
shm_size: 1024mb
devices:
- /dev/hailo0:/dev/hailo0
volumes:
- /etc/localtime:/etc/localtime:ro
- ./config/:/config
- ./data/db/:/data/db
- ./data/storage:/media/frigate
- type: tmpfs
target: /tmp/cache
tmpfs:
size: 1g
ports:
- 5000:5000

Crear Archivo de Configuración de Frigate (config/config.yml)​

nano config/config.yml
database:
path: /data/db/frigate.db

go2rtc:
streams:
home:
- rtsp://admin:[email protected]:554/cam/realmonitor?channel=1&subtype=0

cameras:
home:
ffmpeg:
inputs:
- path: rtsp://admin:[email protected]:554/cam/realmonitor?channel=1&subtype=0
roles:
- record
- detect

mqtt:
enabled: False

objects:
track:
- person
- cat

detectors:
hailo8l:
type: hailo8l
device: PCIe

model:
width: 300
height: 300
model_type: ssd
path: /config/model_cache/h8l_cache/ssd_mobilenet_v1.hef

version: 0.15-1

Iniciar Frigate​

docker compose -f frigate.yml up -d

Acceder a la Interfaz Web​

Visita: http://<tu-ip-del-dispositivo>:5000

Integración con Home Assistant​

Paso 1: Configuración de HACS​

Asumiendo que estás ejecutando Home Assistant (HA Green, HA Yellow, o dispositivos independientes similares):

  • Instala HACS si no está ya instalado.
  • En HACS, instala la integración de Frigate desde la tienda de la comunidad.

Configúrala usando la IP y puerto de tu Frigate AI box

Paso 2: Instalar Complemento MQTT​

Sigue la guía oficial de integración MQTT para instalar y configurar el complemento del broker MQTT.

Paso 3: Actualizar Configuración de Frigate para MQTT​

mqtt:
host: <HA IP>
port: 1883
topic_prefix: frigate
client_id: frigate
user: <HA User Name>
password: <HA Password>

Ejemplo:

mqtt:
host: 10.0.0.136
port: 1883
topic_prefix: frigate
client_id: frigate
user: kasun
password: HiezenburgCook

ejemplo completo:

database:
path: /data/db/frigate.db

go2rtc:
streams:
home:
- rtsp://admin:[email protected]:554/cam/realmonitor?channel=1&subtype=0

cameras:
home:
ffmpeg:
inputs:
- path: rtsp://admin:[email protected]:554/cam/realmonitor?channel=1&subtype=0
roles:
- record
- detect

mqtt:
host: core-mosquitto
port: 1883
topic_prefix: frigate
client_id: frigate
user: kasun
password: HiezenburgCook

objects:
track:
- person
- cat

detectors:
hailo8l:
type: hailo8l
device: PCIe

model:
width: 300
height: 300
model_type: ssd
path: /config/model_cache/h8l_cache/ssd_mobilenet_v1.hef

version: 0.15-1


Paso 4: Reiniciar Frigate​

docker compose -f frigate.yml down
sudo docker compose -f frigate.yml up -d

Paso 5: Confirmar que MQTT Funciona (opcional)​

  • Revisa los registros de HA o los registros del complemento MQTT para verificar mensajes de Frigate
  • En HA, ahora puedes usar eventos de Frigate en automatizaciones, por ejemplo, alertas de movimiento, objetos detectados, etc.

Soporte Técnico y Discusión de Productos​

¡Gracias por elegir nuestros productos! Estamos aquí para brindarte diferentes tipos de soporte para asegurar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para satisfacer diferentes preferencias y necesidades.

Loading Comments...