Sommaire
Imaginez la scène : vous installez Frigate pour sécuriser votre domicile. Tout semble fonctionner, mais dès qu'une branche bouge ou qu'un chat traverse le jardin, votre Raspberry Pi s'emballe. Le processeur grimpe à 100%, la température monte, et la notification arrive sur votre smartphone avec 15 secondes de retard... quand elle arrive.
Le CPU d'un micro-ordinateur n'est tout simplement pas taillé pour les calculs mathématiques complexes de l'Intelligence Artificielle en temps réel.
Le produit : Google Coral USB Accelerator
C'est ici qu'intervient Google avec sa gamme Coral. Ce petit dongle USB, pas plus grand qu'une clé USB classique, embarque un Edge TPU (Tensor Processing Unit). C'est un coprocesseur dédié exclusivement au Machine Learning. Son but ? Décharger votre processeur principal de toutes les tâches de reconnaissance de formes (humains, voitures, animaux).
Au programme de cet article : Je vais décortiquer ses caractéristiques techniques, voir comment l'intégrer proprement dans une stack Raspberry Pi + Frigate + Home Assistant, et vérifier si le gain de performance justifie l'investissement d'une centaine d'euros environ.
Fiche Produit
Le Coral USB Accelerator ne paie pas de mine, mais ses spécifications sont impressionnantes pour sa taille :
| Caractéristique | Spécification |
| Puce | Google Edge TPU |
| Performance | 4 TOPS (Trillions d'opérations par seconde) |
| Interface | USB 3.0 (Type-C) |
| Consommation | 500mA (moyenne) |
| Dimensions | 65 mm x 30 mm x 10 mm |
Pour expliquer brièvement le tableau ci-dessus, prenons un cas concret. Là où un processeur de Raspberry Pi 4 mettrait entre 100ms à 200ms pour analyser une image, le Coral le fait en seulement 7ms à 12ms. C'est une multiplication par 15 ou 20 de la vitesse de traitement !

Installation Frigate & Coral
Pour ce test, j'ai utilisé une configuration classique chez les membres de HACF : un Raspberry Pi 4, un SSD M.2 pour la fiabilité et un PoE+ Hat pour l'alimentation, mais cette partie reste optionnelle. Gardez en tête d'avoir une bonne alimentation, car avec le SSD et le Coral en USB ça va tirer sur la consommation.
1. Connexion physique
Branchez le Coral impérativement sur un port USB 3.0 (bleu). Le flux de données est trop important pour l'USB 2.0.
2. Configuration logicielle (Frigate)
Il faut au préalable avoir une installation fonctionnelle de Frigate. Vous pouvez vous référer à la documentation officielle disponible ici.
Ensuite, il suffit d'indiquer à Frigate d'utiliser le détecteur edgetpu au lieu du CPU de votre machine. Pour cela, rendez-vous dans le fichier config.yml de Frigate et modifiez comme moi, les premières lignes du fichier.
Ci-dessous, je vous partage ma config pour une caméra Reolink.
J'utilise également go2RTC mais ce n'est pas nécessaire pour faire fonctionner le Coral et vous pouvez tout simplement vous en passer :
detectors:
coral:
type: edgetpu
device: usb
mqtt:
host: 192.168.1.xx
port: 1883
user: ####
password: ####
topic_prefix: frigate
# Configuration de go2rtc pour la gestion des flux
go2rtc:
streams:
# On définit le flux basse résolution (sub stream) de la Reolink
# Note : Le chemin /h264Preview_01_sub est classique chez Reolink
reolink_trackmix_sub:
- rtsp://user:mdp@192.168.1.xx:554/h264Preview_01_sub
reolink_trackmix_main:
- rtsp://user:mdp@192.168.1.xx:554/h264Preview_01_main
cameras:
reolink_trackmix:
ffmpeg:
inputs:
# On récupère le flux via go2rtc (port 8554 en interne)
- path: rtsp://127.0.0.1:8554/reolink_trackmix_main
roles:
- record
- audio
# On récupère le flux via go2rtc (port 8554 en interne)
- path: rtsp://127.0.0.1:8554/reolink_trackmix_sub
roles:
- detect
# Accélération matérielle pour le décodage (si sur Raspberry Pi 4)
hwaccel_args: preset-rpi-64-h264
detect:
enabled: true
width: 1024
height: 576
objects:
track:
- person
- dog
- car
# Optionnel : Désactiver l'enregistrement si vous ne voulez que de la détection
record:
enabled: false
retain:
days: 1
snapshots:
enabled: false # Pour avoir une photo de l'événement détecté
motion:
mask: 0.581,0.023,0.99,0.023,0.991,0.068,0.581,0.069
threshold: 35
contour_area: 10
improve_contrast: true
version: 0.16-0
Pour vérifier que Frigate utilise bien le Coral, il y a plusieurs manières. Dans les logs au démarrage, par exemple, vérifier la présence de cette ligne :
2026-02-27 18:04:28.331106254 [2026-02-27 18:04:28] frigate.detectors.plugins.edgetpu_tfl INFO : TPU found
2026-02-27 18:04:28.334279601 INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
Autre solution, depuis l'interface web de Frigate, tout en bas de la page, cliquer sur "CPU". Ça ouvre la fenêtre de statistiques du système :

On voit bien que le système utilise le Google Coral et que les détections sont dans des vitesses attendues et décrites en début d'article.
3. Remontée dans Home Assistant
Lorsque vous installez et configurez l'intégration Frigate sous Home Assistant, vous vous retrouverez avec 2 appareils (Pour une configuration avec une caméra).

Le premier représente le système Frigate en lui même.

Et le second appareil représente votre caméra. Les entités disponibles dépendent de ce que vous avez mis dans votre config.yml côté Frigate.

On retrouve une catégorie générale qui indique le nombre total d'objets détectés à un instant T, le nombre total d'objets détectés statiques et "All Occupancy" qui n'est qu'un capteur générique de présence.
Puis, pour chaque élément qu'on souhaite surveiller dans Frigate, on retrouve la section correspondante. Je retrouve bien ce que j'avais spécifié dans la section objects / track dans mon fichier config.yml côté Frigate, à savoir :
- Les voitures
- Les chiens
- Les personnes
Et pour chacun, les mêmes types d'entités (Nombre d'objets détectés, nombre d'objets statiques détectés, le capteur générique de présence et la dernière photo de la dernière détection).
Grâce à l'intégration Frigate (via MQTT), chaque détection (personne, chien, voiture) devient une entité binaire dans Home Assistant.
Retrouver les médias dans Home Assistant
Là où ça devient vraiment pratique d'utiliser l'intégration Frigate dans Home Assistant, c'est que les détections et les vidéos sont automatiquement sauvegardées et disponibles depuis l'interface de HA.
Il suffit de se rendre dans l'onglet Médias sur la gauche et vous retrouverez une nouvelle entrée nommée Frigate

Suivant la configuration que vous avez de Frigate, vous retrouverez plus ou moins de choses à l'intérieur.
Personnellement, comme Frigate enregistre en continu toute une journée, je retrouve, heure par heure, le flux vidéo entier de la caméra dans le dossier "Recordings". C'est classé par jour et par heure.
Il y a également un dossier "Clips" qui répertorie toutes les détections classées par type ou par jour. Pratique pour rapidement retrouver ce qu'on cherche.
Enfin, si vous avez opté pour les "Snapshots" lors d'une détection, elles sont aussi sauvegardées dans le dossier correspondant.
Transformer la Détection en Action : L'Intégration Home Assistant
Une fois l'intégration Frigate (disponible sur HACS) installée, chaque caméra expose des capteurs de présence spécifiques. Par exemple, l'entité binary_sensor.reolink_trackmix_person_occupancy passera à "Détecté" dès que le Coral aura identifié un humain.
Cas d'usage 1 : Notification avec photo
C'est l'automatisation de base, mais la plus efficace. Je veux être prévenu instantanément si quelqu'un pénètre sur ma propriété, avec une preuve visuelle sur mon smartphone.
Le principe : Dès qu'une personne est détectée, Home Assistant envoie une notification "Actionnable" avec l'image de l'événement fournie par Frigate.
alias: "Sécurité : Humain détecté dans le jardin"
description: "Envoi d'une notification avec photo lors d'une détection humaine"
trigger:
- platform: state
entity_id: binary_sensor.reolink_trackmix_person_occupancy
from: "off"
to: "on"
action:
- service: notify.mobile_app_votre_smartphone
data:
title: "⚠️ Alerte Intrusion"
message: "Une personne a été détectée dans le jardin."
data:
# On récupère l'image de l'événement via l'API de Frigate
image: "https://votre-ha.url/api/frigate/notifications/{{ trigger.to_state.attributes.event_id }}/snapshot.jpg"
# Lien pour ouvrir directement le flux live
clickAction: "/live-view"
Cas d'usage 2 : Filtrage par Zone (Éviter les fausses alertes)
Grâce à la puissance du Coral, on peut se permettre de définir des Zones précises (ex: "Allée", "Portail", "Terrasse").

On peut ainsi créer une automatisation qui ne s'active que si le livreur entre dans la zone "Portail", ignorant ainsi les passants sur le trottoir.
Personnellement, je n'utilise pas de zones, la caméra couvre toute mon allée et j'ai obscurci les zones publiques. Je ne suis ainsi pas dérangé par le passage des voitures dans la rue ni des passants sur le trottoir. Par contre, ne possédant pas de capteur de mouvement à l'extérieur, difficile jusque-là d'allumer les lumières extérieures quand je rentre et qu'il fait déjà nuit. Avec la caméra, Frigate et le Coral, c'est désormais possible et facile. Voici un exemple qui utilise les zones, mais le principe reste le même sans.
Le scénario : "Si une voiture entre dans la zone Allée, allume la lumière extérieure si le soleil est couché."
alias: "Confort : Accueil Voiture"
trigger:
- platform: state
entity_id: binary_sensor.reolink_trackmix_allée_car_occupancy
to: "on"
condition:
- condition: state
entity_id: sun.sun
state: "below_horizon"
action:
- service: light.turn_on
target:
entity_id: light.projecteur_allee
Il y a une entité pour chaque zone définie, facilitant les automatisations qui les utilise
Sans le Coral, le délai entre le passage de la voiture et l'allumage de la lumière pourrait être de 5 à 10 secondes (temps de traitement CPU). Avec le Coral, c'est quasi instantané. La lumière s'allume bien quand vous arrivez et non plus quand vous êtes devant la porte d'entrée à chercher le trou de la serrure.
Mot de la fin
Intégrer un Google Coral avec Frigate et Home Assistant, c'est clairement passer à la vitesse supérieure en matière de vidéosurveillance intelligente. Fini les fausses alertes à cause d'un coup de vent dans les arbres ou d'un chat qui passe : la précision du combo est redoutable, et le tout tourne en local sans envoyer la moindre image sur le cloud. Si vous hésitiez encore à franchir le pas par peur de la configuration, j'espère que cet article vous aura prouvé que l'effort en vaut la peine. Vos processeurs vous diront merci, et vos automatisations Home Assistant n'auront jamais été aussi intelligentes.
Nous tenons à remercier notre partenaire, Domadoo, qui a gracieusement offert ce matériel.
Notre unique volonté est de partager, après test et intégration avec HA, nos avis sur du matériel nous semblant intéressant pour la communauté. Il est important de souligner que HACF reste totalement libre de sa ligne éditoriale et les auteurs de leurs propos.
Les médias HACF ont cependant des liens affiliés nous permettant de compléter nos revenus liés aux adhésions et dons, ce qui nous permet de mener nos différentes actions (voir https://www.hacf.fr/association-hacf/#financement).