Installation et tests du moduler Hailo-8 pour Raspberry Pi5 – Octobre 2026
Introduction
2 ans après mes premiers tests et articles sur le module AI Hailo pour Raspberry Pi 5 ( https://f-robotics.fr/projets/?module-ai-hailo-raspberry-pi5 )
…. je relance ce projet … donc :
- Petit rappel sur le module Hailo-8
- Ré installation le l’OS sur le Raspberry Pi
- Installation des paquets Hailo
- Vérifications
- Premiers tests
- Installation des exemples
voici mes notes :
Le module Hailo-8 (26 TOPS)
Le Hailo-8 est un accélérateur d’intelligence artificielle (NPU) conçu par la société israélienne Hailo, spécialisé dans l’inférence de réseaux de neurones « en périphérie » (edge AI), c’est-à-dire en local, sans cloud.
- Puissance : 26 TOPS en INT8, soit 26 000 milliards d’opérations par seconde
- Consommation : environ 2,5 W en usage typique, ce qui le rend très efficace par watt
- Architecture : dite dataflow, où le réseau est réparti physiquement sur les unités de calcul de la puce ; la mémoire est intégrée, donc pas besoin de RAM externe pour l’inférence
- Connexion : PCIe, d’où l’importance du mode Gen 3 sur le Raspberry Pi 5 (lien x1)
- Formats : carte M.2 ou intégré directement sur une carte, comme l’AI HAT+ 26 TOPS
- Modèles : réseaux quantifiés en INT8 et compilés au format
.hefavec le compilateur de Hailo (Dataflow Compiler), sur un PC x86 - Usage : vision par ordinateur (détection, pose, segmentation, profondeur, visages…), pas les grands modèles de langage
Sur un Raspberry Pi 5, il fait tourner YOLOv8s à environ 300 images par seconde (mesuré plus bas), en laissant le processeur du Pi libre pour le reste de l’application.
Avec un Hailo-8 (26 TOPS), vous êtes dans le domaine de la vision par ordinateur en temps réel. Les LLM ne sont pas adaptés : la puce n’a pas de mémoire dédiée, contrairement au Hailo-10H. Voici les grandes familles d’applications, selon les modèles disponibles.
Détection d’objets (YOLO)
- Comptage de personnes ou de véhicules (passages, fréquentation d’un lieu, parking)
- Alerte intrusion intelligente qui ignore les chats, les feuilles et les ombres
- Surveillance animalière : mangeoire à oiseaux, faune au jardin, détection d’un animal dans le potager
- Détection de colis livré devant la porte
Estimation de pose (squelette humain)
- Coach sportif qui compte les pompes ou les squats et vérifie la posture
- Détection de chute pour une personne âgée
- Contrôle gestuel : piloter de la domotique ou une présentation avec les mains
- Jeux interactifs, comme l’exemple de fruits à attraper du dépôt Hailo
Segmentation
- Détourage de personnes en temps réel (fond virtuel)
- Mesure de surfaces ou zonage précis (zone interdite dans une image)
Profondeur (estimation de distance avec une seule caméra)
- Robotique : éviter les obstacles pour un robot ou un rover
- Détecter si quelqu’un s’approche trop près d’une machine
Visages
- Reconnaissance des membres du foyer pour la domotique (ouvrir, notifier, personnaliser). Attention au cadre légal (RGPD) si des tiers sont filmés.
Lecture et identification
- Lecture de codes-barres ou QR codes
- Lecture de plaques d’immatriculation (détection puis OCR), avec la même vigilance RGPD
Contrôle qualité / industriel
- Avec un modèle entraîné sur vos images : détection de défauts sur des pièces, tri d’objets, vérification d’assemblage
Intégrations prêtes à l’emploi
- Frigate : enregistreur vidéo (NVR) avec détection IA, multi-caméras, intégré à Home Assistant
- Home Assistant : déclencher des automatisations à partir des détections (allumer la lumière si une personne est détectée, etc.)
Grâce à la marge de puissance mesurée plus bas (309 FPS), il est possible de combiner plusieurs modèles, par exemple détecter une personne puis analyser sa pose, ou traiter plusieurs caméras en parallèle.
Prérequis
il faut un Raspberry Pi 5 avec Raspberry Pi OS 64 bits (Trixie) (dernière version en date). Si votre carte est encore sous Bookworm, réinstallez Trixie avec Raspberry Pi Imager. Branchez la nappe PCIe et la caméra
Mettez ensuite le système et le firmware à jour :
sudo apt update
sudo apt full-upgrade -y
sudo rpi-eeprom-update -a
sudo reboot
Installer les paquets Hailo
Dans mon cas j’utilise le module Hailo 8 , mais il existe également un paquet pour la module Hailo 10 :
# AI Kit / AI HAT+ (Hailo-8 / 8L)
sudo apt install dkms hailo-all
# AI HAT+ 2 (Hailo-10H)
sudo apt install dkms hailo-h10-all
sudo reboot
Vérifier que le module est détecté
lspci | grep -i hailo # le module doit apparaître sur le bus PCIe
hailortcli fw-control identify # affiche la puce et la version du firmware
Si lspci n’affiche rien, vérifiez d’abord le sens de la nappe PCIe et l’alimentation (5 V / 5 A conseillé). Pour de meilleures performances, vous pouvez activer le PCIe Gen 3 dans sudo raspi-config, sous Advanced Options → PCIe Speed.
Dans mon cas :
pi@pi-hailo:~ $ lspci | grep -i hailo
0001:01:00.0 Co-processor: Hailo Technologies Ltd. Hailo-8 AI Processor (rev 01)
root@pi-hailo:/home/pi# hailortcli fw-control identify
Executing on device: 0001:01:00.0
Identifying board
Control Protocol Version: 2
Firmware Version: 4.23.0 (release,app,extended context switch buffer)
Logger Version: 0
Board Name: Hailo-8
Device Architecture: HAILO8
Tester avec la caméra
Le paquet rpicam-apps contient les étapes de post-traitement Hailo nécessaires aux démos de vision.
https://www.raspberrypi.com/documentation/computers/ai.html
sudo apt install rpicam-apps
rpicam-hello -t 0 --post-process-file /usr/share/rpi-camera-assets/hailo_yolov8_inference.json
Une fenêtre doit s’ouvrir avec des cadres de détection autour des objets. Les autres fichiers hailo_*.json du même dossier permettent de tester l’estimation de pose ou la segmentation.
Tests de performance
Contrôle de la vitesse du bus PCIe :
pi@pi-hailo:~ $ sudo lspci -vv -s 0001:01:00.0 | grep LnkSta
LnkSta: Speed 8GT/s, Width x1 (downgraded)
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete+ EqualizationPhase1+
Speed 8GT/s correspond au Gen 3. Si vous voyez 5GT/s, activez le Gen 3 dans sudo raspi-config → Advanced Options → PCIe Speed, puis redémarrez.
Mesurer les performances brutes de la puce, sans la caméra :
pi@pi-hailo:~ $ hailortcli benchmark /usr/share/hailo-models/yolov8s_h8.hef
Starting Measurements...
Measuring FPS in HW-only mode
Network yolov8s/yolov8s: 100% | 4641 | FPS: 309.27 | ETA: 00:00:00
Measuring FPS (and Power on supported platforms) in streaming mode
Network yolov8s/yolov8s: 100% | 4640 | FPS: 309.18 | ETA: 00:00:00
Measuring HW Latency
Network yolov8s/yolov8s: 100% | 1385 | HW Latency: 6.66 ms | ETA: 00:00:00
=======
Summary
=======
FPS (hw_only) = 309.21
(streaming) = 309.184
Latency (hw) = 6.66125 ms
Ces résultats sont excellents : le module Hailo-8 tourne à pleine capacité.
- 309 FPS sur YOLOv8s, c’est le niveau attendu pour un Hailo-8 bien configuré.
- Les FPS « hw_only » et « streaming » sont identiques. Le transfert des images par le PCIe ne freine donc pas la puce, ce qui laisse penser que le lien est bien en Gen 3.
- 6,7 ms de latence matérielle par image, ce qui suffit largement pour du temps réel.
Une caméra fournit 30 à 60 images par seconde, donc la puce n’est occupée qu’à environ 10–20 % pour la détection en direct. Avec cette marge, on peut :
- utiliser un modèle plus précis mais plus lourd (YOLOv8m, par exemple) ;
- traiter plusieurs flux caméra en parallèle ;
- enchaîner plusieurs modèles (détection, puis pose ou reconnaissance) sur la même image.
L’installation est donc validée de bout en bout, du matériel jusqu’à la caméra
Installation des exemples
Attention !
ne pas installer le dépôt : https://github.com/hailo-ai/hailo-rpi5-examples.git
En effet, le dépôt hailo-rpi5-examples est cité sur les précédentes versions de la documentation.
Mais, Hailo a annoncé que hailo-apps-infra devient son dépôt principal (renommé hailo-apps), et que hailo-rpi5-examples sert désormais surtout aux projets communautaires. Cette nouvelle version prend en charge Raspberry Pi OS Trixie. Le README de hailo-rpi5-examples renvoie lui-même vers hailo-apps pour du code plus à jour.
git clone https://github.com/hailo-ai/hailo-apps.git
cd hailo-apps
sudo ./install.sh
Ce dépôt reprend les mêmes applications (détection, pose, segmentation, profondeur…), compilées pour TAPPAS 5.1. Une fois l’installation terminée :
source setup_env.sh
hailo-detect --input rpi
Les autres démos s’appellent hailo-pose, hailo-seg et hailo-depth.
Le README du dépôt donne la liste exacte des commandes disponibles dans votre version.