Transformez votre Raspberry Pi en Google Home fait maison

La source

Google Home est un bel appareil avec Google Assistant intégré - Un assistant personnel numérique de pointe de Google. - que vous pouvez placer n'importe où dans votre maison et cela fera des choses incroyables pour vous. Il enregistrera vos rappels, listes de courses, notes et surtout répondra à vos questions et requêtes en fonction du contexte des conversations.

Dans cet article, vous allez apprendre à transformer votre Raspberry Pi en appareil Google Home fait maison qui est,

  • Propulsé par Google Assistant.
  • Activation vocale. Pas besoin d'appuyer sur un bouton, dites simplement «Ok Google» ou «Hey Google» et posez votre question.
  • Il y aura un indicateur LED qui restera allumé chaque fois que la conversation entre l'utilisateur et l'Assistant Google est en cours.
  • Il peut s'initialiser au démarrage, donc pas besoin de se connecter et d'exécuter le script à partir du terminal après le redémarrage.

Alors, commençons.

De quoi aurez-vous besoin?

  • Raspberry Pi modèle 2 ou 3.
  • Carte MicroSD avec Raspbian dessus (8 Go minimum recommandés).
  • Alimentation pour alimenter votre framboise pi. (Tout chargeur mobile USB avec une sortie minimale de 5 V, 2 A fonctionnera.)
  • Micro USB (comme le Raspberry Pi n'a pas de micro intégré. J'ai utilisé le MI-305).
  • Un haut-parleur.
  • Une LED.
  • Un couple de fils pour connecter la LED.

Une fois que vous avez toutes ces choses, connectez-vous au bureau Raspbian et passez aux étapes suivantes une par une.

Étape -1: Configuration du micro USB.

  • Le Raspberry Pi ne dispose pas de microphones intégrés. Si vous souhaitez enregistrer de l'audio, vous devez connecter un microphone USB.
  • Branchez votre micro USB dans l'un des emplacements USB de votre Raspberry Pi.
  • Accédez au terminal et tapez la commande suivante.
  • Cette commande répertorie tous les périphériques d'enregistrement audio disponibles. Vous devriez obtenir en dessous de la sortie.

Comme vous pouvez le voir, votre périphérique USB est connecté à la carte 1 et l'ID de l'appareil est 0. Raspberry Pi reconnaît la carte 0 comme la carte son interne (qui est bcm2835) et d'autres cartes son externes comme des cartes son externes.

  • Maintenant, modifions les configurations audio. Tapez la commande ci-dessous pour modifier le fichier asound.conf.
  • Ajoutez les lignes ci-dessous dans le fichier. Appuyez ensuite sur Ctrl + X puis sur Y pour enregistrer le fichier.

Cela définira votre micro externe (voir pcm.mic) comme périphérique de capture audio (voir dans pcm! .Default) et votre carte son intégrée (carte 0) comme périphérique de haut-parleur.

  • Créez un nouveau fichier nommé .asoundrc dans le répertoire personnel (/ home / pi) en exécutant la commande suivante et collez les configurations ci-dessus (que vous avez ajoutées dans le fichier /etc/asound.conf.) À ce fichier.

Étape -2: Configuration de la sortie de vos haut-parleurs.

  • Connectez votre haut-parleur à la prise casque 3,5 mm du Raspberry Pi.
  • Exécutez la commande ci-dessous pour ouvrir l'écran de configuration de raspberry pi.
  • Accédez à Options avancées> Audio et sélectionnez le périphérique de sortie souhaité.

Étape -3: Testez le micro et les haut-parleurs.

  • Pour tester votre haut-parleur, exécutez la commande ci-dessous dans le terminal. Cela jouera un son de test. Appuyez sur Ctrl + C lorsque vous avez terminé. Si vous ne pouvez pas entendre le son de test, vérifiez la connexion de vos haut-parleurs.
  • Pour tester votre micro, exécutez la commande suivante. Cela enregistrera un court clip audio. Si vous obtenez une erreur, vérifiez à nouveau l'étape 1.
  • Lisez l'audio enregistré et confirmez que tout fonctionne correctement en exécutant la commande suivante.

D'accord. Notre matériel est réglé.

Étape -4: Téléchargez les packages requis et configurez l'environnement Python:

  • Tout d'abord, mettez à jour votre système d'exploitation.
  • Exécutez la commande ci-dessous une par une dans le terminal.

Cela créera un environnement Python 3 (comme la bibliothèque de l'Assistant Google s'exécute sur Python 3.x uniquement) dans votre raspberry pi et installera les dépendances requises.

  • Activez l'environnement python.
  • Maintenant, installez le package SDK de Google Assistant, qui contient tout le code requis pour faire fonctionner l'Assistant Google sur le Raspberry Pi. Il devrait télécharger la bibliothèque de l'Assistant Google et la démo.

Étape -5: activation du projet cloud de Google Assistant.

  • Ouvrez la console Google Cloud et créez un nouveau projet. (Vous pouvez le nommer comme vous le souhaitez.) Le compte avec lequel vous vous connectez sera utilisé pour envoyer des requêtes à Google Assistant et obtenir votre réponse personnalisée.
  • Rendez-vous sur le gestionnaire d'API et activez l'API Google Assistant.
  • - Assurez-vous que vous activez l'activité Web et d'application, les informations sur l'appareil et l'activité vocale et audio dans les contrôles d'activité pour le compte.
  • - Accédez à «Informations d'identification» et configurez l'écran de contenu OAuth.
  • Accédez à l'onglet «Informations d'identification» et créez un nouvel ID client OAuth.
  • Sélectionnez le type d'application comme «Autre» et donnez le nom de la clé.
  • Téléchargez le fichier JSON qui stocke les informations de clé OAuth et conservez-le en toute sécurité.

Étape -6: Authentification de votre Raspberry Pi.

  • Installez l'outil d'autorisation en exécutant la commande ci-dessous.
  • Exécutez l'outil en exécutant la commande suivante. Assurez-vous de fournir le chemin correct pour le fichier JSON que vous avez téléchargé à l'étape 5.
  • Il devrait s'afficher comme indiqué ci-dessous. Copiez l'URL et collez-la dans un navigateur (cela peut être fait sur votre développeur

Si, à la place, il affiche: InvalidGrantError, un code non valide a été entré. Réessayer.

Étape -7: Configuration de l'indicateur LED.

  • Connectez votre LED entre la broche 25 du GPIO et la masse.
  • L'idée ici est simple. Nous allons définir la broche GPIO 25 comme broche de sortie. Le SDK de l'Assistant Google fournit un type d'événement de rappel.ON_CONVERSATION_TURN_STARTED lorsque la conversion avec l'Assistant Google commence. À ce stade, nous allons configurer le GPIO 25 pour allumer la LED. Chaque fois que la conversation se termine, EventType.ON_CONVERSATION_TURN_FINISHED rappel sera reçu. À ce stade, nous réinitialiserons le GPIO 25 pour éteindre la LED.

Étape -8: initialisation au démarrage terminée:

  • Chaque fois que votre Raspberry Pi termine le processus de démarrage, nous exécuterons un script python qui authentifiera et initialisera l'Assistant Google au démarrage.
  • Ajoutez d'abord le package RPi.GPIO pour ajouter la prise en charge GPIO à l'aide de la commande suivante.
  • Accédez au répertoire utilisateur. Créez un nouveau fichier python main.py.
  • Écrivez le script suivant et enregistrez le fichier.
  • Créez maintenant un script shell qui initialisera et exécutera l'Assistant Google.
  • Collez les lignes ci-dessous dans le fichier et enregistrez le fichier.
  • Accordez l'autorisation d'exécution.

Vous pouvez exécuter google-assistant-init.sh pour lancer l'assistant Google à tout moment.

Voyons comment démarrer l'Assistant Google pendant le démarrage.

  • Pour activer Google Assistant au démarrage, il existe deux manières. Voyons chacun d'eux.

1. Démarrage automatique avec Pixel Desktop au démarrage:

  • Cela démarrera l'Assistant Google dès le démarrage du bureau Pixel. Assurez-vous que le démarrage «Desktop» est sélectionné dans les configurations Raspberry Pi.
  • Tapez la commande ci-dessous.
  • Ajoutez ce qui suit après @xscreensaver -no-splash
  • Enregistrez et quittez en appuyant sur «Ctrl + X» puis sur «Y».

2. Démarrage automatique avec CLI au démarrage:

  • Cela démarrera l'Assistant Google si vous avez défini le démarrage CLI. Assurez-vous que le démarrage «CLI» est sélectionné dans les configurations Raspberry Pi.
  • Tapez la commande ci-dessous.
  • Ajoutez la ligne ci-dessous à la fin du fichier.
  • Enregistrez et quittez en appuyant sur «Ctrl + X» puis sur «Y».
C'est tout!!! Votre "Google Home Home" est maintenant prêt. Redémarrez l'appareil et posez votre première question à votre assistant Google.

Conclusion:

Vous pouvez effectuer de nombreuses tâches quotidiennes avec votre Google Home. Si vous souhaitez effectuer vos tâches personnalisées comme éteindre la lumière, ouvrir la porte, vous pouvez le faire en intégrant Google Actions dans votre Assistant Google. Si vous rencontrez des problèmes pour démarrer l'Assistant Google, laissez un commentaire ci-dessous. Je vais essayer de les résoudre.

~ Si vous avez aimé l'article, cliquez sur le ci-dessous pour que plus de gens le voient! Aussi, vous pouvez me suivre sur Medium ou sur Mon Blog, donc vous obtenez des mises à jour concernant mes futurs articles !! ~