Den ASUS UGen300 USB AI Accelerator mit dem reComputer RK3576 verwenden
Der ASUS UGen300 ist ein USB-KI-Beschleuniger, der um den Hailo-10H-Prozessor mit 8 GB LPDDR4-Speicher aufgebaut ist. Dieses Tutorial zeigt, wie man ihn an einem reComputer RK3576 anschließt, den versionsgleichen ASUS-USB-Treiber und HailoRT installiert, die Geräte-Firmware bei Bedarf aktualisiert und verifiziert, dass HailoRT mit dem Beschleuniger kommunizieren kann.
Getestete Konfiguration
| Punkt | Getestete Konfiguration |
|---|---|
| Host | reComputer RK3576 Dev Kit |
| Betriebssystem | Armbian-unofficial 26.05.0-trunk, Debian 12 (bookworm) |
| Kernel | 6.1.115-vendor-seeed-rk3576 |
| Host-Architektur | AArch64 (arm64) |
| Beschleuniger | ASUS UGen300 USB AI Accelerator, Hailo-10H, 8 GB LPDDR4 |
| USB-Geräte-ID | 0b05:1d6f |
| Aushandelte USB-Verbindung | 5000M am getesteten RK3576-Port |
| USB-Treiber | hailort-usb-driver 5.3.0 |
| Runtime | HailoRT 5.3.0 |
| Geräte-Firmware nach Update | 5.3.0 (release,app) |
ASUS spezifiziert eine USB 3.1 Gen 2 Type-C-Schnittstelle mit einer maximalen Linkrate von 10 Gbps. Die getestete RK3576-Verbindung handelte 5 Gbps aus, wie von lsusb -t gemeldet.
Beschleuniger anschließen und prüfen
Verbinden Sie den UGen300 mit dem beiliegenden Kabel oder einem anderen USB-10-Gbps-Type-C-Kabel direkt mit einem USB-3-Hostport.
Prüfen Sie, ob der Host den Beschleuniger sehen kann:
lsusb -d 0b05:1d6f
Bevor das Hailo-Image geladen ist, kann ein frisch angeschlossenes Gerät als UGen300 USB Loader erscheinen. Prüfen Sie zusätzlich die ausgehandelte Linkrate:
lsusb -t
Der UGen300-Zweig meldete am getesteten reComputer RK3576 5000M. Ein Eintrag 480M bedeutet, dass die Verbindung auf USB 2 zurückgefallen ist.
Vorhandene Beschleuniger-Software prüfen
Das ASUS-Handbuch stellt klar, dass die PCIe- und USB-Treiber von HailoRT nicht gleichzeitig installiert werden können und dass Hailo-8- und Hailo-10H-Treiber nicht koexistieren können. Untersuchen Sie die installierten Pakete, bevor Sie fortfahren:
dpkg -l | grep -Ei 'hailo|ugen'Entfernen Sie einen bestehenden Hailo-PCIe- oder Hailo-8-Treiber, bevor Sie das UGen300-USB-Paket installieren. Entfernen Sie einen nicht zugehörigen Beschleuniger-Stack nicht, es sei denn, Sie wollen bewusst wechseln.
Das ASUS-Treiberpaket herunterladen und verifizieren
Laden Sie das auf der ASUS-UGen300-Supportseite veröffentlichte ARM64-USB-Treiberpaket herunter:
mkdir -p ~/ugen300
cd ~/ugen300
curl -fL -o UGen300_USB_5.3.0_driver_Linux_arm64.zip \
https://dlcdnets.asus.com/pub/ASUS/AI_ACCELERATION_DEVICE/Driver/UGen300_USB_5.3.0_driver_Linux_arm64.zipVerifizieren Sie das Archiv, bevor Sie es entpacken. Die untenstehende Prüfsumme ist der von ASUS für Version 5.3.0 veröffentlichte SHA-256-Wert:
echo '6a98b46d8f88a7911fea142a8b3f4a69715f5166cc112e1352eba93f8a2bcbc4 UGen300_USB_5.3.0_driver_Linux_arm64.zip' \
| sha256sum --checkEntpacken Sie das Archiv:
unzip UGen300_USB_5.3.0_driver_Linux_arm64.zip
cd UGen300_USB_5.3.0_driver_Linux_arm64Das Archiv enthält das ARM64-HailoRT-Paket und seinen versionsgleichen Userspace-USB-Treiber. Das USB-Paket enthält außerdem das Hailo-10H-Image, das beim Start des Geräts verwendet wird.
USB-Treiber und HailoRT installieren
Installieren Sie beide versionsgleichen Pakete zusammen:
sudo apt install ./hailort_5.3.0_arm64.deb \
./hailort-usb-driver_5.3.0_arm64.debDer USB-Treiber installiert eine udev-Regel für 0b05:1d6f. Wird ein UGen300 im Loader-Modus erkannt, startet die Regel den Hailo-USB-Image-Loader und das Gerät enumeriert neu.
Bestätigen Sie die installierten Versionen:
dpkg-query -W hailort hailort-usb-driver
hailortcli --version

Geräte-Firmware an HailoRT angleichen
Scannen Sie das USB-Gerät und fragen Sie seine Firmware ab:
hailortcli scan
hailortcli fw-control identifyWenn identify meldet, dass die Firmware inkompatibel ist, und explizit hailo_usb_loader fw-update verlangt, aktualisieren Sie den Flash des UGen300 mit dem vom installierten USB-Treiber mitgelieferten Image:
sudo hailo_usb_loader fw-updateDas Update dauerte am getesteten Gerät etwa zwei Minuten. Halten Sie den RK3576 unter Strom, lassen Sie das Kabel verbunden und warten Sie, bis das Tool meldet, dass das Update erfolgreich abgeschlossen wurde.
Der UGen300 trennt sich während dieses Vorgangs und enumeriert neu. Wenn er nach Abschluss des Befehls nicht zurückkehrt, ziehen Sie ihn ab, verbinden ihn direkt mit dem USB-Hostport und warten auf den Abschluss des udev-Image-Loaders.
Das laufende Gerät verifizieren
Untersuchen Sie den finalen USB-Zustand und die Linkrate:
lsusb -d 0b05:1d6f
lsusb -tNach dem erfolgreichen Update und Laden des Images erschien das getestete Gerät als UGen300 USB AI Accelerator (Hailo-10H) statt als UGen300 USB Loader.
Verifizieren Sie die HailoRT-Kommunikation:
hailortcli scan
hailortcli fw-control identify
Auf dem getesteten System meldete die abschließende Identifikation die HailoRT-Firmware 5.3.0 (release,app) und die Gerätearchitektur HAILO10H.
Ein HEF-Modell ausführen
Laden Sie das für Hailo-10H kompilierte YOLOv8n-HEF aus dem Hailo Model Zoo herunter:
mkdir -p ~/ugen300/models
cd ~/ugen300/models
curl -fL -o yolov8n.hef \
https://hailo-model-zoo.s3.amazonaws.com/ModelZoo/Compiled/v5.3.0/hailo10h/yolov8n.hefBestätigen Sie, dass das heruntergeladene HEF mit Hailo-10H kompatibel ist, und führen Sie es fünf Sekunden aus:
hailortcli parse-hef yolov8n.hef
hailortcli run2 -t 5 set-net yolov8n.hefDer Parser sollte HEF Compatible for: HAILO15H, HAILO10H melden. Ein abgeschlossener run2-Befehl gibt die gemessenen FPS aus und bestätigt, dass das Modell auf dem Beschleuniger ausgeführt wurde. HailoRT 5.3.0 unterstützt den älteren Befehl hailortcli run auf diesem Gerätetyp nicht.
Fehlerbehebung
lsusbzeigt0b05:1d6fnicht: Verbinden Sie den Beschleuniger erneut direkt mit dem Host, prüfen Sie Kabel und Port und untersuchen Sie die letzten USB-Ereignisse mitsudo dmesg | tail -n 50.- Das Gerät bleibt
UGen300 USB Loader: Untersuchen Sie die Loader-Meldungen mitjournalctl -t hailo-usb --no-pager. Wenn HailoRT eine Firmware-Inkompatibilität meldet, führen Sie den obigen Firmware-Update-Befehl aus. hailortcli scanfindet den USB-Pfad, aberidentifymeldet inkompatible Firmware: Halten Sie Treiber und HailoRT auf derselben Version und führen Sie dann das von ASUS dokumentierte Firmware-Update durch.480Merscheint inlsusb -t: Das Gerät hat auf USB-2-Geschwindigkeit verhandelt. Verwenden Sie einen USB-3-Port und ein für die erforderliche Linkrate ausgelegtes Kabel.HAILO_LIBUSB_FAILUREoderHAILO_COMMUNICATION_CLOSEDerscheint währendrun2: Der Beschleuniger hat sich unter Last getrennt. Verbinden Sie ihn erneut direkt mit einem USB-3-Hostport, prüfen Sie das USB-C-Kabel und die Stromversorgung und wiederholen Sie vor einem neuen Versuchhailortcli fw-control identify.- Ein zuvor installierter Hailo-PCIe- oder Hailo-8-Stack ist vorhanden: Entfernen Sie den kollidierenden Hailo-Treiber, bevor Sie den UGen300-USB-Treiber installieren.
Die UGen300-Software entfernen
Entfernen Sie die USB-Treiber- und HailoRT-Pakete mit:
sudo dpkg --purge hailort-usb-driver hailort
sudo udevadm control --reload-rules