Een Hailo-8 M.2-versneller gebruiken met reComputer RK3576

Deze handleiding laat zien hoe u de Hailo-8 PCIe-driver en HailoRT op een reComputer RK3576 installeert, controleert of de versneller klaar is en een HEF uit Hailo Model Zoo op het apparaat uitvoert. De geteste module is de Seeed Studio Hailo-8 M.2 Key M 2280, geen Hailo-8L.

Systeemconfiguratie

OnderdeelGeteste configuratie
HostreComputer RK3576 Dev Kit
BesturingssysteemArmbian-unofficial 26.05.0-trunk, Debian 12 (bookworm), ARM64
Kernel6.1.115-vendor-seeed-rk3576
VersnellerSeeed Studio Hailo-8 M.2 Key M 2280-module
PCIe-apparaat1e60:2864
Onderhandelde verbindingPCIe Gen2 x1, 5.0 GT/s
Runtime en PCIe-driverHailoRT 4.23.0, hailort-pcie-driver 4.23.0
Test-HEFHailo Model Zoo v2.17.0, centerpose_regnetx_800mf.hef, HAILO8, invoer 512 × 512 × 3

De module plaatsen en PCIe controleren

Schakel de RK3576 uit en haal de voeding los voordat u de M.2-module plaatst of opnieuw insteekt. Plaats de Hailo-8 in de M.2 Key M-sleuf van het bord, zet hem vast en sluit de voeding weer aan.

Controleer na het opstarten het PCIe-apparaat en de onderhandelde verbinding:

bash
lspci -nnk -s 01:00.0
cat /sys/bus/pci/devices/0000:01:00.0/current_link_speed
cat /sys/bus/pci/devices/0000:01:00.0/current_link_width

De geteste kaart werd op 01:00.0 herkend als Hailo-8 AI Processor [1e60:2864], met een 5.0 GT/s PCIe x1-verbinding. Op een ander systeem kan het busadres verschillen; gebruik het adres dat lspci toont wanneer u de sysfs-bestanden voor de verbinding controleert.

Hailo-8 PCIe-apparaat en onderhandelde Gen2 x1-verbinding

HailoRT 4.23.0 downloaden

Hailo-8 gebruikt de HailoRT 4.x-software. Download de bij elkaar passende ARM64-pakketten voor de runtime en PCIe-driver uit de openbare Hailo-8-map van Hailo:

bash
mkdir -p ~/hailo8-4.23.0
cd ~/hailo8-4.23.0

curl -fL -O https://dev-public.hailo.ai/2025_10/Hailo8/hailort_4.23.0_arm64.deb
curl -fL -O https://dev-public.hailo.ai/2025_10/Hailo8/hailort-pcie-driver_4.23.0_all.deb

dpkg-deb -f hailort_4.23.0_arm64.deb Package Version Architecture
dpkg-deb -f hailort-pcie-driver_4.23.0_all.deb Package Version Architecture

Beide pakketten moeten 4.23.0 aangeven; het runtimepakket moet arm64 aangeven. Hailo publiceert deze directe links in zijn installatie-instructies voor de community.

De driver wordt voor de actieve kernel gebouwd. Controleer vóór de installatie of de bijbehorende headers en DKMS beschikbaar zijn:

bash
ls -ld /lib/modules/$(uname -r)/build
command -v dkms

Op de geteste Armbian-image verwijst het headerpad naar linux-headers-6.1.115-vendor-seeed-rk3576. Als een van de controles mislukt, installeer dan eerst de headers die exact bij de actieve kernel horen en DKMS.

Runtime en PCIe-driver installeren

Controleer de bestaande Hailo-installatie voordat u pakketten wijzigt:

bash
dpkg-query -W -f='${binary:Package}\t${Version}\n' | grep -i hailo

Als het bord eerder de ASUS UGen300 USB-versneller gebruikte, verwijder dan de HailoRT 5.x-runtime en USB-driver voordat u de Hailo-8 PCIe-software installeert:

bash
sudo apt-get purge hailort-usb-driver hailort

Installeer de 4.23.0-pakketten vanuit de downloadmap:

bash
cd ~/hailo8-4.23.0
sudo apt-get install ./hailort-pcie-driver_4.23.0_all.deb \
  ./hailort_4.23.0_arm64.deb

Schakel DKMS in wanneer daarom wordt gevraagd, zodat de driver voor de actieve kernel wordt gebouwd. Tijdens de geteste installatie werd ook hailort.service ingeschakeld. Het PCIe-driverpakket bevat het bijbehorende opstartimage hailo8_fw.4.23.0.bin; bij de initialisatie laadt de driver dit op de kaart. Deze procedure gebruikt geen hailortcli fw-update.

Start opnieuw op en controleer of de driver gekoppeld is en het apparaatbestand bestaat:

bash
sudo reboot
bash
lspci -nnk -s 01:00.0
modinfo hailo_pci | grep -E '^(version|vermagic):'
ls -l /dev/hailo0
hailortcli --version

Op het geteste bord meldde lspci Kernel driver in use: hailo. Zowel de module als de HailoRT-CLI meldde 4.23.0.

Gekoppelde Hailo-8-driver, apparaatbestand en overeenkomende versies 4.23.0

De versneller identificeren

Gebruik HailoRT om de PCIe-bus te scannen en de modulegegevens te lezen:

bash
hailortcli scan
hailortcli fw-control identify

Het geteste apparaat werd gevonden op 0000:01:00.0. De identificatie vermeldde Device Architecture: HAILO8, Firmware Version: 4.23.0 en Product Name: Seeed Studio Hailo-8 M.2 Key M 2280 Module.

HailoRT-scan en identificatie van Hailo-8

Een HEF uit Hailo Model Zoo uitvoeren

Download het vooraf gecompileerde HAILO8 CenterPose-model uit Hailo Model Zoo v2.17.0:

bash
cd ~/hailo8-4.23.0
curl -fL -o centerpose_regnetx_800mf.hef \
  https://hailo-model-zoo.s3.eu-west-2.amazonaws.com/ModelZoo/Compiled/v2.17.0/hailo8/centerpose_regnetx_800mf.hef

hailortcli parse-hef centerpose_regnetx_800mf.hef

parse-hef moet Architecture HEF was compiled for: HAILO8 en een invoer van UINT8, NHWC(512x512x3) tonen. De geteste HEF uit Model Zoo v2.17.0 heeft SHA-256 625cbd18736c87ba708f46011cc683261690e8d68f054adc0e3df1e1a925a369.

Voer het netwerk vijf seconden uit met invoergegevens die HailoRT genereert:

bash
hailortcli run2 -t 5 set-net centerpose_regnetx_800mf.hef

De opdracht moet 100% bereiken en voor centerpose_regnetx_800mf een FPS-waarde groter dan nul melden. Daarmee wordt inferentie op de versneller uitgevoerd, maar de uitvoer van CenterPose wordt niet omgezet naar zichtbare sleutelpunten. HailoRT 4.23.0 kan een waarschuwing tonen die voor één model run aanbeveelt, hoewel run2 in deze test werkt.

HAILO8 HEF-informatie en voltooide inferentie

Problemen oplossen

  • lspci toont geen 1e60:2864: haal de voeding van de RK3576 volledig los, plaats de M.2-kaart opnieuw en controleer of deze in de Key M PCIe-sleuf zit.
  • Het PCIe-apparaat is aanwezig, maar /dev/hailo0 ontbreekt: controleer dkms status, modinfo hailo_pci en sudo dmesg -T | grep -i hailo op fouten bij het bouwen van de driver of het laden van firmware.
  • HailoRT meldt een niet-overeenkomende driverversie: hailortcli --version en modinfo hailo_pci moeten allebei 4.23.0 tonen.
  • De HEF wordt geweigerd: bevestig dat hailortcli parse-hef HAILO8 meldt en gebruik een Hailo-8-model uit Model Zoo v2.x, geen HEF voor Hailo-8L of Hailo-10H.

Bronnen