Google AI Voice Kit
 
 
 
 

 A PROPOS

 
Présentation
Le projet Google AIY Voice Kit est un projet initié par Google inc et permettant aux makers de prototyper des applications en utilisant le Google Assistant présent dans le produit commercial Google Home™ (sortie prévue en France pour l'été 2017) ou l'application mobile idoine (sortie prévue en France et en français pour Septembre 2017)
 
Le kit comprend un ensemble son (carte son + micro + bouton d'activation de l'assistant + haut-parleur) et se connecte au port GPIO (note : port d'entrée-sortie 40 broches) du Raspberry Pi ainsi que deux patrons en carton pour mettre le Raspberry et le kit audio.
Ce kit est fourni avec le magazine anglais, propriété de la fondation Rapsberry, MagPi n°57 et est distribué officiellement aux Etats-Unis par Barnes and Nobles. Il est actuellement (mai-juin 2017) difficile de se le procurer en raison de légers problèmes de logistique et de distribution (il coûte peu cher, environ 6-7 euros).
 
En attendant d'avoir un exemplaire, Google a mis aussi une alternative logicielle reposant sur sa plateforme Cloud permettant l'accès via ses APIs au service (en anglais pour l'instant).

MAJ 01/01/18 : Reçu un exemplaire du Google AIY Voice Kit V2 partir de septembre 2017) via Pimoroni ltd (disponible maintenant dans les boutiques DYI françaises) présenté lors de la hacknight #61 du 11/12/17.

L’élément différent sur les deux kits correspond au bouton (comportant une led) d’activation de la voix OK, Google”.

Une nouvelle version 2* de l’API a aussi été fournie taguée voicekit sur le GitHub du projet : https://github.com/google/aiyprojects-raspbian/tree/voicekit 
 
 Il est à noter que le projet Google AIY Project vient de sortir un nouveau kit orienté vision que nous utiliserons pour implémenter, par exemple, une reconnaissance de gestes (de type hand-gesture ou eye tracking).
 
*Il n’y a plus de fichier générique action.py, tout a été déporté au niveau du Core API et on implémente suivant les différents exemples : assistant_library_*.py et cloud_speechdemo.py


Objectif du projet
L'objectif est simple, on utilisera l'OpenBCI pour remplacer le bouton (ou la commande en CLI/HotWord).
 

Mise en place de la version logicielle 

 
Matériels utilisés pour les expérimentations au CogLab
  • Un Mac (sous macOS Sierra 10.12.x) avec une enceinte bluetooth Jawbone Jambox qui fait entrée-sortie audio en Bluetooth,
  • Un Raspberry Pi 3 (sous Ubuntu Mate 16.04) avec la même enceinte Jambox, reliée à une carte son externe usb U-Control UCA222 (note: la carte son de base du Raspberry Pi 3 est insuffisante et la partie bluetooth ne marche pas correctement) et un micro usb ou rca (note: pas de micro dispo de mon côté pour le moment),
MAJ 01/01/18 : Le kit reçu a été entièrement monté, le Raspberry Pi 3 tournera dorénavant sur la version Raspbian, fournie par le projet AIY Project, du 11 septembre 2017.
  • Une carte Redbear duo (WIFI + BLE : https://github.com/redbear/Duo) complètera le dispositif pour les interactions AIY Voice Kit, le Cloud IoT DialogFlow et le(s) dispositif(s) BCI.

Prérequis logiciels
Il existe un Google Assistant SDK pour accéder au service et un exemple officiels en ligne de commande via le langage Python (note: nécessite Python 3 >= 3.4) que nous utiliserons sur les différents appareils.
 
 
  • Procédure de création d'un compte pour l'accès au service Google et API Assistant
La procédure en anglais se trouve ici : https://developers.google.com/assistant/sdk/prototype/getting-started-pi-python/ , je ne détaillerai pas précisément toutes les procédures (note : il y a une limite de 500 requêtes/jour pour l'accès à l'API via son application), il faut :
  1. Avoir un accès réseau,