Comment ajouter Alexa à votre miroir intelligent

Un miroir intelligent avec un Amazon Echo réfléchi.

Si vous avez créé un miroir intelligent, vous avez déjà un accès pratique aux calendriers, à la météo et aux actualités. Mais vous pouvez faire plus que cela! Le logiciel Magic Mirror vous permet d’ajouter des modules pour des fonctionnalités supplémentaires, comme Alexa pour le contrôle vocal.

D’autres développeurs créent ces modules. Les options varient de l’utile, comme Alexa ou la détection de présence (via une caméra ou un capteur infrarouge passif), au divertissant, comme les flocons de neige et les informations de lecture Spotify.

Nous recommandons mmm-génial-alexa car il semble être bien entretenu par un développeur actif, bien qu’il existe d’autres modules Alexa pour le logiciel Magic Mirror.

Si vous préférez installer Google Assistant, Google propose un tutoriel complet pour installer Assistant sur un Raspberry Pi, y compris les étapes, les images et les liens de téléchargement. Bien qu’il existe quelques modules Magic Mirror pour Google Assistant, notre enquête a révélé que les modules étaient problématiques, se bloquant souvent ou couvrant les informations du miroir. Si vous voulez la configuration la plus simple, nous vous recommandons d’ajouter le Kit Google AIY et en utilisant son tutoriel spécifique.

Pour installer la plupart des modules, vous passerez par quelques étapes de base:

Téléchargez le code du module depuis GitHub
Configurer les options spécifiques au module
Ajouter le module à la configuration du miroir

Selon le module, les étapes deux et trois peuvent être plus ou moins impliquées. La configuration d’Alexa nécessite plus de configuration que l’ajout de flocons de neige, par exemple. De plus, ce module Alexa particulier nécessite l’installation de logiciels supplémentaires (dépendances) avant de télécharger le module.

Les matériaux dont vous aurez besoin

Ce guide suppose que vous avez déjà créé un Smart Mirror. Si vous ne l’avez pas encore fait, commencez par là, mais gardez à l’esprit les matériaux supplémentaires répertoriés ici dans vos considérations relatives aux coûts et à l’espace.

Miroir intelligent terminé
Microphone
Orateur

Pour le microphone et le haut-parleur, nous recommandons l’original Kit vocal Google AIY. À 16 $, vous aurez du mal à trouver une combinaison microphone et haut-parleur moins chère. Vous n’avez pas nécessairement besoin d’utiliser la boîte en carton incluse; il peut être plus efficace de laisser les composants à l’extérieur et d’exécuter le microphone et le haut-parleur à l’extérieur du miroir.

Une deuxième version du Kit vocal Google AIY est disponible, mais il est plus cher et comprend un Raspberry Pi Zero, qui n’est pas assez puissant pour exécuter des mots de réveil ou le logiciel Magic Mirror, vous devriez donc l’ignorer.

Connectez votre haut-parleur et votre microphone, et vous êtes prêt à installer le module Alexa. Si vous utilisez le kit Google AIY, suivez simplement son guide de montage pour connecter les composants microphone et haut-parleur.

Installation des dépendances de module

Avant de pouvoir télécharger et configurer mmm-awesome-alexa, vous devez installer quelques dépendances sur lesquelles le module s’appuie. C’est toujours une bonne idée de mettre à jour votre Raspberry Pi avant d’essayer d’installer quoi que ce soit d’autre. Sur votre Raspberry Pi, commencez par exécuter cette commande:

sudo apt update && sudo apt upgrade

Une fois votre Raspberry Pi à jour, exécutez les commandes suivantes une par une:

sudo apt-get install sox libsox-fmt-all
sudo apt-get install swig3.0 python-pyaudio python3-pyaudio sox
pip install pyaudio
sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg libav-tools
sudo apt-get install libatlas-base-dev

Chaque commande installe une dépendance, et elles sont toutes nécessaires pour s’exécuter. Exécutez simplement une commande, attendez la fin du téléchargement et de l’installation, puis exécutez la commande suivante.

Téléchargement du code du module

La première étape pour ajouter un module pour le Magic Mirror est de télécharger le code du module Github. Pour ce faire, vous devrez vous connecter au Raspberry Pi, ouvrir le terminal et changer de répertoire dans lequel les modules sont stockés. Ensuite, vous utiliserez une commande de téléchargement pour extraire le code de Github. Si vous avez un accès shell, vous pouvez faire tout cela à distance.

Une fois que vous avez un terminal ouvert, tapez ce qui suit:

cd ~/MagicMirror/modules

Cette commande vous déplace vers le répertoire de travail du dossier modules du logiciel Magic Mirror. Chaque fois que vous téléchargez un nouveau module, vous voudrez être là pour que tout soit organisé. L’étape suivante consiste à télécharger le logiciel depuis Github avec cette commande:

git clone https://github.com/dolanmiu/MMM-awesome-alexa.git

Une fois terminé, changez de répertoire dans le module avec la commande suivante:

cd MMM-awesome-alexa

Le module Alexa nécessite quelques dépendances supplémentaires pour fonctionner correctement. Exécutez cette commande pour les installer:

npm install --only=prod

Maintenant, changez les répertoires dans le dossier node_modules nouvellement créé:

cd node_modules

Supprimez le dossier snowboy les commandes précédentes ajoutées. Nous avons besoin d’une version plus récente de snowboy:

rm -rf snowboy

Ensuite, nous téléchargerons la dernière version de snowboy avec la commande suivante:

git clone https://github.com/Kitt-AI/snowboy.git

Avant de continuer, changez de répertoire pour le nouveau dossier snowboy.

cd snowboy

Nous devons maintenant supprimer le dossier node_modules et installer des dépendances supplémentaires. Il est important que vous restiez dans le dossier snowboy pour ces étapes; ne changez pas de répertoire. Exécutez les commandes suivantes une par une:

rm -rf node_modules
npm install nan --save 
npm install node-pre-gyp@0.12.0 --save 
npm install 
npm run prepublish 
npm install --save-dev electron-rebuild 
npm install nan 
./node_modules/.bin/electron-rebuild

Le module est maintenant entièrement téléchargé et installé.

Configurer le module Alexa

Boîte de dialogue d'aide à la configuration pour MMM-awesome-alexa

Maintenant que le module mmm-awesome-alexa est installé, nous devons le configurer. La première étape consiste à changer les répertoires à la racine du module. Dans le terminal, tapez la commande suivante, puis appuyez sur Entrée:

cd ~/MagicMirror/modules/MMM-awesome-alexa

Ce module Alexa a un assistant de configuration; nous voulons gérer cela. En type de terminal:

npm run config-helper

Vous verrez une invite demandant un ID client. Puisque vous configurez essentiellement un Echo personnalisé, vous devrez ouvrir un navigateur et vous diriger vers le Site développeur Alexa. Connectez-vous ensuite avec votre compte Amazon.

Une fois connecté, cliquez sur le bouton «Commencer». Vous créez un appareil. Cliquez sur « Produits », puis sur « Créer un produit ».

Boîte de dialogue développeur Alexa avec boîte autour de l'option Produits.

Sur l’écran suivant, donnez à votre produit un nom et un ID de produit – nous suggérons «Magic_Mirror_Alexa» pour le nom et «YourFirstName_MM_Alexa» pour l’ID de produit. Sélectionnez Maison intelligente pour la catégorie et activez les options mains libres et champ lointain. Vous verrez une série de questions par oui ou par non, sélectionnez « Non » pour toutes, puis cliquez sur « Suivant ».

Sur l’écran du profil de sécurité, cliquez sur «Créer un nouveau profil». Utilisez le même nom pour votre profil de sécurité que pour l’ID de produit. Tapez ensuite la description que vous souhaitez, puis cliquez sur Suivant.

Vérifiez l’accord et cliquez sur Terminer.

Cliquez sur votre produit nouvellement créé, puis sur le profil de sécurité, et vous devriez voir un ID client et un secret client.

Dans le type d’entrée d’URL de retour autorisé:
https://magic-mirror-avs.github.io/Alexa-Web-Helper/authresponse

Cliquez ensuite sur le bouton Ajouter. Faites défiler vers le bas et cliquez sur la case de mise à jour pour terminer l’ajout de l’URL.

Dans le terminal, vous verrez une invite pour l’ID client. Copiez l’ID client du navigateur, collez-le dans le terminal, puis appuyez sur Entrée. Maintenant, le terminal demandera un secret client. Revenez au navigateur, copiez le secret client, puis collez-le dans Terminal et appuyez sur Entrée.

Lorsque vous êtes invité à saisir l’ID de l’appareil, entrez le nom que vous avez créé ci-dessus en tant qu’ID de produit (Magic_Mirror_Alexa dans notre exemple).

Lorsque vous êtes invité à fournir une URL de retour, tapez la commande suivante et appuyez sur Entrée:

https://magic-mirror-avs.github.io/Alexa-Web-Helper/authresponse

Le terminal affichera un lien personnalisé. Copiez-le et collez-le dans votre navigateur. Ensuite, connectez-vous avec votre compte Amazon, si vous y êtes invité. Cliquez sur Autoriser sur l’écran suivant.

Invite d'autorisations des services de voix Alexa avec boîte autour du bouton Autoriser.

Vous verrez une erreur sur le navigateur, mais ne vous inquiétez pas! Ceci est attendu. Faites défiler l’URL de la page d’erreur et recherchez la section «Code = xxxxxx».

URL affichant le code de l'appareil Alexa.

Copiez les lettres et les chiffres qui apparaissent entre «code =» et «& scope» et collez-les dans le terminal. Appuyez sur Entrée lorsque vous avez terminé.

Lorsqu’on vous demande si vous souhaitez générer la configuration MagicMirror, tapez Y et appuyez sur Entrée.

On vous demandera quel mot de réveil utiliser. Alexa est la sélection par défaut, alors appuyez sur Entrée.

Répondez non pour l’utilisation du mode simplifié et de la visualisation.

L’assistant de configuration générera les informations de votre module. Cela ressemblera à quelque chose comme ceci:

{
 module: "MMM-awesome-alexa",
 position: "bottom_bar",
 config: {
 wakeWord: "Alexa",
 clientId: "YOUR_CLIENT_ID",
 clientSecret: "YOUR_CLIENT_SECRET",
 deviceId: "YOUR_DEVICE_ID",
 refreshToken: "YOUR_REFRESH_TOKEN",
 lite: false,
 isSpeechVisualizationEnabled: false
 }
 }

Code de module généré automatiquement.

Copiez ces lignes. Nous devons les ajouter à la configuration Magic Mirror.

Ajouter le module Alexa à la configuration Magic Mirror

Ensuite, changez de répertoire dans le dossier de configuration Magic Mirror avec la commande suivante:

cd ~ / MagicMirror / config

Et ouvrez le config.js à l’aide de la commande nano:

nano config.js

Juste après la première instance de}, (qui est la fin du module), appuyez sur Entrée pour créer une ligne vide avant la prochaine {entrée (qui est le début d’un nouveau module).

code des modules, avec une nouvelle ligne insérée après} et avant {

Sur la nouvelle ligne vide que vous avez créée, collez le code du module à partir des étapes de l’assistant de configuration. Le code généré automatiquement a une erreur; vous devrez également taper une virgule après le crochet final pour que votre module se termine par},

code de module inséré avec une virgule ajoutée après le crochet final

Utilisez Ctrl + x pour fermer le fichier. Lorsque vous y êtes invité, tapez «y» pour confirmer la sauvegarde et appuyez sur Entrée pour conserver le même nom de fichier.

Le module est terminé. Pour redémarrer votre logiciel Magic Mirror avec le module en place, tapez pm2 restart mm et le logiciel Magic Mirror redémarrera. Alexa devrait maintenant fonctionner sur votre Magic Mirror.

C’est l’un des modules les plus compliqués que vous pouvez configurer pour le Magic Mirror. Mais pour les autres modules, les étapes de base sont les mêmes, téléchargez le code, configurez les options spécifiques au module, ajoutez le module à la configuration. Vous pouvez ajouter flocons de neige à votre miroir, ou détection de mouvement, ou même afficher votre Google Photos.