Google Coral Edge TPU : configuration sur Raspberry Pi 5

Face à la disparition de la documentation officielle de Pineboards, nous préservons ici la méthode pour installer et configurer l’accélérateur Google Coral Edge TPU sur un Raspberry Pi 5 équipé d’un PCIe HAT adapté. Ce guide détaille les réglages matériels et l’installation logicielle nécessaires.

Configuration matérielle et logicielle requise

  • Un Raspberry Pi 5 fonctionnel avec Raspberry Pi OS installé
  • Un accélérateur Google Coral Edge TPU
  • Un PCIe HAT disposant d’un connecteur E-Key approprié
  • Une connexion internet
  • Une connaissance basique des commandes terminal

Étape 1 : Configurer les paramètres matériels

Commencez par éditer le fichier de configuration du Raspberry Pi pour activer les paramètres nécessaires au Coral Edge TPU. Ouvrez le fichier de configuration :

sudo nano /boot/firmware/config.txt

Ajoutez les lignes suivantes dans le fichier :

[all]
# Enable the PCIe External connector.
dtparam=pciex1
kernel=kernel8.img
# Enable Pineboards Hat Ai
dtoverlay=pineboards-hat-ai

Sauvegardez et fermez le fichier en appuyant sur CTRL+X, puis Y pour confirmer, et Entrée pour quitter. Redémarrez votre Raspberry Pi pour appliquer ces changements :

sudo reboot

Étape 2 : Mettre à jour le noyau

La version 6.6.30 ou supérieure du noyau est requise pour l’overlay Pineboards Hat AI. Cette version n’est actuellement disponible que via rpi-update. Pour vérifier votre version de noyau, utilisez cette commande :

uname -a

Résultat attendu :

Linux coralpi 6.6.30-v8+ #1761 SMP PREEMPT Thu May  2 16:54:52 BST 2024 aarch64 GNU/Linux

Étape 3 : Installer le pilote PCIe et l’environnement Edge TPU

Mettez à jour votre liste de paquets :

sudo apt update

Ajoutez le dépôt de paquets Google Coral Edge TPU :

echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | sudo tee /etc/apt/sources.list.d/coral-edgetpu.list

Importez la clé GPG du dépôt :

curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -

Mettez à jour votre liste de paquets une nouvelle fois :

sudo apt-get update

Installez les paquets nécessaires :

sudo apt-get install cmake libedgetpu1-std devscripts debhelper dkms dh-dkms

Étape 4 : Installer le pilote Gasket

Clonez le dépôt du pilote Gasket :

git clone https://github.com/google/gasket-driver.git

Placez-vous dans le répertoire et compilez le pilote :

cd gasket-driver
sudo debuild -us -uc -tc -b

Retournez au répertoire parent et installez le paquet compilé :

cd ..
sudo dpkg -i gasket-dkms_1.0-18_all.deb

Étape 5 : Configurer la règle udev

Ajoutez une règle udev pour gérer les permissions du périphérique :

sudo sh -c "echo 'SUBSYSTEM==\"apex\", MODE=\"0660\", GROUP=\"apex\"' >> /etc/udev/rules.d/65-apex.rules"

Créez un nouveau groupe et ajoutez votre utilisateur à celui-ci :

sudo groupadd apex
sudo adduser $USER apex

Redémarrez votre Raspberry Pi pour appliquer tous les changements :

sudo reboot

Vérifiez que le pilote est chargé avec la commande suivante :

sudo lspci -v

Résultat attendu :

0000:01:00.0 System peripheral: Global Unichip Corp. Coral Edge TPU (prog-if ff)
Subsystem: Global Unichip Corp. Coral Edge TPU
Flags: bus master, fast devsel, latency 0, IRQ 39
Memory at 1800100000 (64-bit, prefetchable) [size=16K]
Memory at 1800000000 (64-bit, prefetchable) [size=1M]
Capabilities: [80] Express Endpoint, MSI 00
Capabilities: [d0] MSI-X: Enable+ Count=128 Masked-
Capabilities: [e0] MSI: Enable- Count=1/32 Maskable- 64bit+
Capabilities: [f8] Power Management version 3
Capabilities: [100] Vendor Specific Information: ID=1556 Rev=1 Len=008 <?>
Capabilities: [108] Latency Tolerance Reporting
Capabilities: [110] L1 PM Substates
Capabilities: [200] Advanced Error Reporting
Kernel driver in use: apex
Kernel modules: apex

Résumé

Votre Raspberry Pi est maintenant configuré pour utiliser le Coral Edge TPU. Vous pouvez commencer à déployer des modèles d’apprentissage automatique et exécuter des tâches d’inférence avec une puissance de traitement améliorée.

Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

  • Google Coral USB Edge TPU ML Accelerator Coprocesseur pour Raspberry Pi et Autres Ordinateurs embarqués monocarte
  • seeed Studio Coral USB Accelerator Accelerator Coprocesseur pour Raspberry Pi et Autres Ordinateurs intégrés à Carte Unique