# Raspberry Pi : Tutoriel Alexa

[Amazon Alexa](https://developer.amazon.com/de/alexa "Informationsseite über Amazon Alexa"), plus simplement connu sous le nom d’Alexa, est l’assistant vocal développé par Amazon. Ce logiciel fonctionne sur des haut-parleurs intelligents comme l’Echo ou l’Echo Dot d’Amazon. Sur ces appareils, Alexa fonctionne comme une **unité de contrôle centrale** qui réagit aux **commandes vocales** de l’utilisateur. Il est ainsi possible de demander à jouer en streaming des morceaux depuis Amazon Music ou Spotify, d'écouter un livre audio depuis Audible ou de se renseigner sur les actualités ou la météo. Le logiciel est également utile pour organiser rapidement les tâches du quotidien : vous pouvez par exemple dicter des listes d'achats ou de choses à faire ou encore réserver des dates dans le calendrier de votre choix (Apple, Google ou Outlook, entre autres).

De plus, dans la mesure où le logiciel vocal d’Amazon peut se connecter avec des milliers d'appareils domestiques intelligents compatibles (lampes, prises électriques, thermostats, etc.), il permet aussi d’**automatiser le fonctionnement de votre foyer**.

---

### Note

Alexa s'actualise automatiquement via cloud. C’est ce qui permet à Amazon de régulièrement doter son logiciel vocal de nouvelles fonctions, également désignés sous le nom d’Amazon Skills, disponibles dans la boutique Alexa Skills Store.

---

Grâce à [Alexa Voice Service](https://developer.amazon.com/de/alexa-voice-service "Amazon-Developer-Feature: Alexa Voice Service"), vous pouvez choisir d’utiliser Alexa sans appareil Amazon et l’**intégrer à votre propre appareil**. Dans ce contexte, le Raspberry Pi, ce nano-ordinateur utilisé dans le monde entier, se révèle particulièrement intéressant par rapport à la gamme des appareils Echo d’Amazon, non seulement en raison de son prix très modeste, mais aussi parce qu’il est possible de l’adapter et de le personnaliser à volonté.

## Configuration d’Alexa sur votre Raspberry Pi : les conditions nécessaires pour faire fonctionner Raspberry Pi Alexa

Le Raspberry Pi est disponible sur le marché depuis 2012. Depuis lors, les fabricants ont poursuivi son développement en sortant différentes évolutions, comme Raspberry Pi 2 et 3 ou le Rasperry Pi Zero. Toutefois, toutes les versions du nano-ordinateur ne remplissent pas les conditions nécessaires pour l’intégration d’Alexa. Pour pouvoir ultérieurement configurer votre assistante vocale de façon optimale, il est recommandé d’utiliser au minimum un **Raspberry Pi 2 (Modèle B)**. Puisqu’Alexa doit être connectée à Internet, vous aurez besoin d’un adaptateur WLAN si vous ne voulez pas laisser le nano-ordinateur connecté de façon permanente via un câble Ethernet.

Mais si vous optez pour un **Raspberry Pi 3**, cette version est équipée de série d’un adaptateur WLAN intégré.

Dans tous les cas, vous aurez besoin des accessoires suivants pour pouvoir utiliser Alexa sur votre Raspberry Pi :

- Carte Micro SD avec 8 Go de mémoire au minimum (idéalement 16 Go ou plus)
- Alimentation USB d'au moins 2 000 mAh
- Microphone USB
- Haut-parleur USB ou Bluetooth (pour le Raspberry Pi 3)

Pour une meilleure expérience auditive, vous pouvez doter votre Raspberry Pi d’une **carte son USB**. Si vous ne souhaitez pas effectuer l’installation et la configuration de votre système d’exploitation et utiliser Alexa uniquement à distance depuis votre PC (en « headless mode »), vous pouvez aussi raccorder un écran, un clavier et une souris au nano-ordinateur.

## Tutoriel AlexaPi : ainsi parlait Raspberry Pi Alexa

Avant de pouvoir configurer votre assistante vocale, vous devez installer un **système d’exploitation** sur la carte SD de votre Raspberry. Nous vous conseillons le système **Raspbian**, soutenu officiellement par la Fondation Raspberry Pi et à télécharger directement sous forme de fichier image sur le [site Internet de la Fondation](https://www.raspberrypi.org/downloads/raspbian/ "raspberrypi.org: Download-Center der Raspberry Pi Foundation"). Extrayez ensuite le fichier sur la carte SD et utilisez-le pour **booter votre Raspberry Pi** et installer le système d’exploitation.

Si vous préférez éviter d'avoir à installer vous-même un système d'exploitation, vous pouvez vous rendre sur la [boutique en ligne « The Pi Hut »](https://thepihut.com/ "SD-Karte mit vorinstalliertem Raspbian – The Pi Hut") pour acheter une **carte SD prête à l’emploi**, où Raspbian est déjà préinstallé.

Pour savoir comment lancer Alexa après l’installation de Raspbian, suivez les explications détaillées ci-dessous.

### Étape 1 : créer un compte de développeur Amazon

Pour pouvoir vous connecter au service Amazon Voice, vous aurez besoin d’un compte de développeur Amazon. La première étape consiste à en créer un, à partir duquel vous pourrez accéder à la [page des développeurs d’Amazon](https://developer.amazon.com/de/ "Amazon Developer Services und Technologien"). Quand vous y serez, cliquez sur « **Inscription** » et ensuite sur « **Créez votre compte** ». Vous pouvez aussi vous inscrire à partir de votre compte Amazon habituel, si vous en possédez un.

[![Image: Amazon Developer Services : Page d'accueil](https://www.ionos.fr/digitalguide/fileadmin/_processed_/4/c/csm_amazon-developer-services_befa259030.webp "Amazon Developer Services : Page d'accueil")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/amazon-developer-services.jpg) Avec un compte de développeur Amazon, vous pouvez utiliser différents services pour développeurs d’Amazon.       Fournissez les **identifiants** demandés (nom, adresse email et mot de passe) puis cliquez à nouveau sur « Créez votre compte ».

[![Image: Développeur Amazon: Créer un compte](https://www.ionos.fr/digitalguide/fileadmin/_processed_/6/b/csm_amazon-developer-create-account_d6d32da6d5.webp "Développeur Amazon: Créer un compte")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/amazon-developer-create-account.png) Si vous possédez déjà un compte Amazon classique, vous pouvez aussi l’utiliser pour travailler avec les outils de développeur.       Votre inscription dans l’espace des développeurs se fait automatiquement. Cependant, avant de pouvoir utiliser des outils comme Alexa Voice Server, vous pouvez fournir d'autres indications vous concernant en cliquant sur « **Conclure votre inscription** » dans le menu déroulant situé en haut.

### Étape 2 : enregistrer votre Raspberry Pi sur le service Alexa Voice

Une fois les informations nécessaires fournies et votre accord donné aux conditions d’utilisation, vous avez **accès au tableau de bord de développeur**, qui vous permet de consulter et de gérer vos différents projets Amazon. Dans la rubrique « **amazon alexa** », vous trouverez le bouton « **Alexa Voice Service** ». En cliquant dessus, vous lancerez le processus d'activation de l’assistante vocale sur votre Raspberry :

[![Image: Tableau de bord de développeur Amazon](https://www.ionos.fr/digitalguide/fileadmin/_processed_/f/1/csm_amazon-developer-dashboard_14aaec6242.webp "Tableau de bord de développeur Amazon")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/amazon-developer-dashboard.jpg) Depuis le tableau de bord, vous avez accès, entre autres, à des rapports sur l'état d'avancement de vos différents projets de développeur Amazon, ainsi qu’aux annonces de nouvelles fonctionnalités.       Dans le menu suivant, cliquez sur le bouton « **GET STARTED** ». Amazon vous posera alors quelques questions à propos de votre projet.

[![Image: Développeur Amazon: Indication des informations sur le produit](https://www.ionos.fr/digitalguide/fileadmin/_processed_/3/8/csm_amazon-developer-product-information-specification_9ef597b009.webp "Développeur Amazon: Indication des informations sur le produit")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/amazon-developer-product-information-specification.jpg) Contrairement à la ligne Product name, la ligne Product ID ne peut contenir aucune espace.       Aux lignes « **Product name** » et « **Product ID** », vous pouvez par exemple inscrire « AlexaPi » ou « RaspberryPiAlexa ».

À la ligne « **Product type** », choisissez l’option « **Device with Alexa built-in** » (« *appareil avec logiciel Alexa intégré* »). Répondez non à la question portant sur l’utilisation d’une application associée.

À la ligne « **Product category** », sélectionnez « Wireless Speakers ». Pour la description du produit, inutile de vous lancer dans de grandes explications : une mention comme « Raspberry Pi Alexa Speaker » est suffisante.

Comme vous souhaitez diriger votre Raspberry Pi uniquement par commandes vocales dans le cadre de son utilisation en tant que haut-parleur Alexa classique, sélectionnez les modes d’interaction « **Hands-free** » (contrôle vocal à proximité) et « **Far-field** » (contrôle vocal à distance).

Répondez **non** aux **dernières questions** sur l’utilisation commerciale et l’affectation du Raspberry à Alexa for Business et Alexa Mobile Accessory Protocol ainsi qu’à la question de savoir si votre projet vise à être adapté à une utilisation par des mineurs.

### Étape 3 : créer un profil de sécurité LWA Alexa

Lors de l’étape suivante, vous devez créer un profil de sécurité LWA (**L**ogin **w**ith **A**mazon) pour le Raspberry Pi, de façon à permettre son authentification par Amazon. Comme vous ne possédez pas encore de profil LWA, cliquez sur « **CREATE NEW PROFILE** », puis choisissez un nom approprié et donnez une courte description du profil :

[![Image: Menu de développeur Amazon « LWA Security Profile »](https://www.ionos.fr/digitalguide/fileadmin/_processed_/1/7/csm_amazon-developer-lwa-security-profile-menu_052495b9c3.webp "Menu de développeur Amazon « LWA Security Profile »")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/amazon-developer-lwa-security-profile-menu.jpg) Le profil de sécurité LWA obligatoire associe les identifiants de l’utilisateur et ses données d'accès sécurisé à un ou plusieurs produit(s).       Après avoir cliqué sur « **NEXT** », vous verrez apparaître un autre menu où vous fournirez les URL d’authentification LWA. Saisissez l'adresse suivante (puis confirmez en appuyant sur « ADD ») :

- Allowed origins : *https://localhost:3000*
- Allowed return URLs : *https://localhost:3000/authresponse*

Enfin, cochez la case d'acceptation des conditions d’utilisation d’Amazon et d’Alexa-Voice-Service ; terminez le processus de création du profil en cliquant sur le bouton « **FINISH** » :

[![Image: Saisie des URL d'authentification LWA dans le cadre du processus d’enregistrement](https://www.ionos.fr/digitalguide/fileadmin/_processed_/4/e/csm_lwa-verification-urls-specified-during-the-registration-process_d7fd55e923.webp "Saisie des URL d'authentification LWA dans le cadre du processus d’enregistrement")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/lwa-verification-urls-specified-during-the-registration-process.jpg) Vous avez la possibilité d'ajouter plusieurs URL. Vous pouvez également les supprimer à tout moment en cliquant sur la croix.       Si l’installation est réussie, une fenêtre Amazon apparaîtra en pop-up pour vous en avertir.

### Étape 4 : saisir les informations sur le produit et le client

Le profil que vous avez créé pour votre AlexaPi peut désormais être sélectionné à tout moment dans la section « **Products** ». Avant de vous lancer dans l’installation d’Alexa, vous devez saisir les informations sur le produit et le client pour la **configuration de l'assistante vocale**. Pour cela, sélectionnez le profil du Raspberry dans la liste des produits puis saisissez les données voulues dans les sections « Client ID » et « Client secret ». L’information la plus importante sur le produit est la « Product ID », qui équivaut au nom de produit donné dans le cadre du tutoriel « AlexaPi ».

[![Image: LWA : liste des identifiants et clés d’authentification](https://www.ionos.fr/digitalguide/fileadmin/_processed_/a/0/csm_lwa-list-of-verification-ids-and-keys_88f5771642.webp "LWA : liste des identifiants et clés d’authentification")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/lwa-list-of-verification-ids-and-keys.jpg) On trouve dans les détails du produit non seulement les informations d’authentification, mais aussi des fonctionnalités à activer, comme le rappel ou la connectivité en Bluetooth.       ###  Étape 5 : installer Alexa sur le Raspberry Pi

Pour installer Alexa sur votre Raspberry Pi, le plus simple est de passer par la plateforme de développement GitHub. Vous y trouverez entre autres l’application Alexa AVS Sample, qui vous aidera à installer le logiciel vocal sur votre nano-ordinateur. Pour utiliser cette plateforme, vous aurez besoin d’un client Git que vous pourrez télécharger après une rapide mise à jour du système, s’il n’est pas déjà installé nativement. Tapez les commandes suivantes dans le terminal Raspbian pour **actualiser le logiciel système** :

```none
sudo apt-get update
sudo apt-get upgrade -y
```

Vient ensuite l’installation du client Git :

```none
sudo apt-get install git
```

À l'aide du client, téléchargez l’application AVS Sample ou clonez-le [répertoire GitHub](https://github.com/shivasiddharth/headless-alexa-avs-sample-app "GitHub Alexa"):

```none
sudo git clone https://github.com/alexa/alexa-avs-sample-app.git
```

---

### Note

L'application AVS Sample se trouve dans le mode Maintenance ; c’est pourquoi elle n’est pas dotée des plus récentes fonctionnalités d’Alexa. Le [kit de développement AVS](https://github.com/alexa/avs-device-sdk/wiki "github.com – AVS-Device-SDK") offre une solution alternative pour bénéficier également des fonctionnalités les plus récentes de l’assistance vocale.

---

Une fois le répertoire GitHub transféré sur votre Raspberry Pi, reportez les informations données à l’étape 4 dans le fichier d’installation **automated\_install.sh**. Pour l’ouvrir, vous pouvez utiliser le logiciel de traitement de texte de votre choix (par ex. Nano).

[![Image: Extrait du fichier « automated_install.sh » de l’application AVS Sample](https://www.ionos.fr/digitalguide/fileadmin/_processed_/8/c/csm_extract-from-the-avs-sample-app-file-automated_install.sh_146f118687.webp "Extrait du fichier « automated_install.sh » de l’application AVS Sample")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2020/extract-from-the-avs-sample-app-file-automated_install.sh.jpg) Remplacez directement les marques substitutives par les informations qui vous concernent juste après le signe d'égalité (dans la ligne correspondante).       Confirmez les modifications et commencez l’**installation** d’Alexa sur votre Raspberry Pi en saisissant la commande suivante :

```none
. automated_install.sh
```

### Étape 6 : premières étapes de configuration au cours du processus d’installation

Pendant l’installation du logiciel vocal, vous devez procéder aux premiers réglages et répondre à des questions. Dès le départ, vous devez donner votre consentement aux conditions générales et approuver l'utilisation d'applications tierces reconnues (si nécessaire). La question suivante vous demande de confirmer que vous possédez bien un **compte de développeur Amazon** ; la troisième question vous demande de **confirmer les données** saisies dans les sections « Product ID », « Client ID » et « Client secret ». Dans les trois cas, tapez « Y » puis appuyez sur le bouton \[Enter\].

Vous accèderez ensuite à quelques options de configuration, à commencer par le **choix du signal vocal**. À l'étape 3, sélectionnez fr-FR pour pouvoir communiquer avec Alexa en français. Pendant l’installation, vous devrez également déterminer si le raccordement de votre haut-parleur Raspberry Pi Alexa doit se faire via un connecteur Jack (3,5 mm) ou en HDMI. Enfin, indique si vous voulez conserver le mot d'activation « Alexa » ou utiliser une autre commande vocale pour mettre en route l’assistante vocale.

### Étape 7 : authentification du haut-parleur Raspberry Pi Alexa

Pour authentifier le Raspberry, vous aurez besoin de l’**Alexa Companion Service**, qui propose une sorte d’interface ou de portail pour connecter le nano-ordinateur et le serveur AVS. Pour utiliser ce service, ouvrez le terminal dans la liste correspondante et lancez l'application à l'aide du **gestionnaire de paquet NPM**. Utilisez pour cela les commandes suivantes :

```none
cd ~/alexa-avs-sample-app/samples/companionService
npm start
```

Si le lancement est réussi, le terminal affichera le message « **Listening on Port 3000** ». Réduisez la fenêtre du terminal puis démarrez une nouvelle instance de l’invite de commandes.

---

### Note

Il est important que la fenêtre où vous avez lancé l’Alexa Companion Service soit réduite et **non fermée**. Ce service doit continuer à fonctionner en arrière-plan pour que votre Raspberry Pi puisse communiquer avec le serveur d’Alexa Voice.

---

Au cours des étapes suivantes, vous allez ouvrir le **client associé** à partir de la liste correspondante. Dans la mesure où il est programmé en Java, vous allez devoir utiliser le gestionnaire de projets Java Maven (mvn) :

```none
cd ~/alexa-avs-sample-app/samples/javaclient
mvn exec:exec
```

Quelques instants après envoi des commandes, une **fenêtre de dialogue en pop-up** s’ouvrira pour vous demander d’ouvrir une URL dans votre navigateur afin d’enregistrer le Raspberry. Cliquez sur « OK » pour fermer la fenêtre. Le lien s’ouvrira **automatiquement dans votre navigateur** **par défaut.**

---

### Note

Après avoir cliqué sur « OK », vous verrez s’ouvrir une autre fenêtre de dialogue dans le client. Vous n'aurez pas à vous en préoccuper dans un premier temps.

---

Votre navigateur affiche désormais soit la **page de connexion à Amazon**, soit un message vous indiquant que cette page n’est pas accessible. Dans le deuxième cas, ce n’est pas un problème majeur : il vous suffit de cliquer en bas à gauche sur « Advanced » (« Avancé »), puis sur « Proceed to localhost » (« Continuer sur localhost ») pour arriver enfin à la fenêtre de connexion. Enregistrez-vous avec votre **compte de développeur Amazon** et confirmez que votre haut-parleur Raspberry Pi Alexa a bien l'autorisation de se connecter sur votre compte Amazon.

Une fois l'authentification effectuée, votre navigateur affichera le message suivant : « **device tokens ready** ». Dans la fenêtre restée jusque-là ouverte dans le client Java, vous pouvez désormais cliquer sur « **OK** » pour mettre un terme au processus d’authentification.

### Étape 8 : mettre en marche la reconnaissance du mot d'activation

Alexa est maintenant prête à fonctionner. À partir du **client AVS**, vous pouvez à tout moment interagir avec le logiciel vocal : il vous suffit de cliquer sur l’icône représentant un micro et de poser votre question. Cependant, pour qu’Alexa se mette en marche lorsque vous prononcez le mot d'activation de votre choix (par exemple « Alexa »), vous devez lancer le « wake word agent ». Pour cela, ouvrez dans une nouvelle fenêtre de terminal la liste des agents (KITT AI) :

```none
cd ~/alexa-avs-sample-app/samples/wakeWordAgent/src
./wakeWordAgent -e kitt_ai
```

Le terminal affiche le message « **Connected to AVS client** » : vous pouvez maintenant utiliser Alexa de la manière habituelle par contrôle vocal.

### Étape 9 : créer un script de démarrage automatique pour l'assistance vocale Raspberry Pi Alexa

Pour éviter d'avoir à relancer Alexa manuellement à chaque fois que vous rallumez votre Raspberry Pi, créez pour finir un script de démarrage, qui sera exporté automatiquement **à chaque démarrage du nano-ordinateur**. Pour cela, saisissez la commande suivante dans le terminal :

```none
sudo nano alexa.sh
```

Copiez-collez ensuite les lignes de code suivantes :

```none
#!/bin/bash
lxterminal -l -e "cd ~/alexa-avs-sample-app/samples/companionService && npm start;" &
sleep 10s
lxterminal -l -e "cd ~/alexa-avs-sample-app/samples/javaclient && mvn exec:exec;" &
sleep 30s
lxterminal -l -e "cd ~/alexa-avs-sample-app/samples/wakeWordAgent/src && ./wakeWordAgent -e kitt_ai;" &
```

Ce script rend automatique le processus d'authentification décrit à l'étape 7, puis lance l’Alexa Companion Service et enfin le client Java. Le lancement de l’agent du mot d'activation décrit à l’étape 8 est ensuite effectué en différé.

Sauvegardez le script et fournissez au système les **droits d'accès** nécessaires via chmod :

```none
sudo chmod +x alexa.sh
```

Pour le script, créez un nouveau **fichier de démarrage automatique** :

```none
sudo nano /home/pi/.config/autostart
```

Copiez-collez le contenu suivant dans le fichier afin de permettre au script d’être exporté chaque fois que vous allumez votre haut-parleur Raspberry Pi Alexa :

```none
[Desktop Entry]
Comment=Comment
Exec=/home/pi/alexa.sh
Name=alexa.sh
Path=/home/pi/alexa.sh
Type=Shell
```


This is a markdown version of: [https://www.ionos.fr/digitalguide/serveur/configuration/raspberry-pi-alexa/](https://www.ionos.fr/digitalguide/serveur/configuration/raspberry-pi-alexa/) for AI/LLM consumption.