Table des matières

Snips

MAJ : Snips a été racheté, depuis on a plus accès au cloud pour créer ses fonctions.
On peu considérer que c'est mort !


La reconnaissance vocale autonome.

J'ai voulu essayer une reconnaIssance vocale locale, sans internet.
Je me suis donc équipé du dernier Raspberry Pi 3 B+, et ce module que j'ai trouvé sur amazon.
https://www.seeedstudio.com/ReSpeaker-4-Mic-Array-for-Raspberry-Pi-p-2941.html

Il existe des Pi Hat avec 2 micro qui sont moins cher, notamment sur aliexpress.
Mais le ReSpeaker 4Mic a 4 micro ainsi que des leds monté sur une plaque enfichable.
Cela permet de faire un module à la “Alexa” avec des lumières.

Feuille de route

C'est pas tout mais il faut définir ce que l'on va faire.
Donc je veux une reco locale qui soit capable de s'interfacer avec un logiciel domotique.
Actuellement j'utilise domoticz, mais malheureusement, je n'ai pas trouvé de tuto pour l'interfacer avec Snips.
Par contre on trouve sur le site de Snips, un tuto avec Home Assistant.
https://translate.googleusercontent.com/translate_c?depth=1&hl=fr&prev=search&rurl=translate.google.com&sl=en&sp=nmt4&u=https://medium.com/snips-ai/integrating-snips-with-home-assistant-314723645c77&xid=17259,15700023,15700124,15700149,15700186,15700190,15700201&usg=ALkJrhgw1ToScOZQfK-EToH0gaCRENGjzg
(lien avec google translate, on trouve facilement la version anglaise)

J'ai donc une trame de test :

GO!

Installation RapsBerry

Pas de surprise on suit le tuto :
https://www.raspberrypi.org/documentation/installation/installing-images/linux.md

Comme c'est dit on met la carte, lsblk montre que pour moi c'est /dev/sdf, donc

sudo dd bs=4M if=2018-06-27-raspbian-stretch-lite.img of=/dev/sdf status=progress conv=fsync

Et là! pas de pot, mon rapsberry ne boot pas avec un superbe kernel panic.
J'ai souvent des pb's avec les cartes SD, j'en ai même rendue inutilisable alors qu'elles étaient neuves.
DD est à utiliser avec prudence. voici un recensement des bugs :

Les solutions sont restreintes, moi par défaut, j'efface les partitions qui peuvent avoir été crées.
Puis je recommence.

Pour utiliser le WIFI, il faut monter le /boot de la carte SD fraichement installée, puis mettre les 2 fichiers suivant :
- ssh : ssh.zip
- wpa_supplicant.conf avec dedans :

<code bash>
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
 ssid="Le SSID de votre réseau WIFI"
 psk="Le password"
}
<code>

Configuration du système

Comme d'habitude, on commence par un :

sudo raspi-config
<code>
* 1 - Changer le passord
* 4 - Localisation -> Changer suivant votre région
* 7 - Advanced options: A1 - Expend filesystem
* Puis ce que vous estimez nécessaire.  

On valide le reboot

Ensuite :

sudo apt update
sudo apt upgrade

Voilà un système propre à jour !

Installer ReSpeaker

J'ai suivi la doc sur : http://wiki.seeedstudio.com/ReSpeaker_4_Mic_Array_for_Raspberry_Pi/
Vous pouvez retrouver mon install sur : ReSpeaker, expansion board
Avec mes déboires et solutions :-)

Installation de snips

Je me suis basé sur : https://docs.snips.ai/getting-started/quick-start-raspberry-pi

Voici le résumé:

Il faut installer le Sam Command Line Interface
Avec un npm

sudo npm install -g snips-sam

Mais avant il faut installer npm :
Si on utilise le package du repo officiel sudo apt install npm On a un warning ! pour l'install de snips :
(node:5541) [DEP0022] DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead. npm WARN engine rxjs@5.5.12: wanted: {“npm”:“>=2.0.0”} (current: {“node”:“8.11.1”,“npm”:“1.4.21”}) Le package dispo pour raspbian n'est pas à jour.
et si on essaye:
sam devices Scanning devices on the network… i No devices discovered Bon ça ne marche pas.

Du coup, je vais installer la dernière version de nodejs.
La méthode la plus simple est :

sudo curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash
sudo apt-get install -y nodejs

On vérifie :

node -v
v10.15.2
npx -x
6.4.1

et ça fonctionne même en sudoer, choses qui n'est pas facile à configurer si on charge le binarie sur le site officiel.

On réinstall snips : sudo npm install -g snips-sam
On a pas d'erreur maintenant.
On test : sam devices
On a toujours “i No devices discovered”

Après quelques recherches, j'ai testé :

sam connect localhost

il demande le login/password et créer une clé GPG

sam init

Install bien snips :-)

Plugins/modules Installées

Pour les modules allez sur cette page :
Plugins/Modules