Réutilisation RPI Multiroom et Jarvis

Il y a quelques jours je vous ai indiqué comment faire du multiroom avec un RPI en WiFi pour la partie réseau, en Bluetooth entre votre RPI et votre enceinte nomade, et le client Squeezelite pour la partie logicielle Multiroom avec un serveur LMS. D’ailleurs, pour ce dernier, je ferai un petit point pour installer un serveur LMS sur différentes plate-formes dont un RPI.

Maintenant que chacune de vos pièces est équipée de multiroom (si ce n’est pas le cas, commander vos RPI chez Rosty lol), une option pourrait vous intéresser pour optimiser vos RPI, en tout cas moi, ça m’intéresse 🙂

Que diriez-vous d’utiliser vos RPI Multiroom avec en plus un micro en USB pour utiliser Jarvis, l’assistant vocal ultra léger et multilingue. Vous aurez ainsi chez vous la possibilité de commander votre environnement quelque soit l’endroit où vous vous trouvez sans avoir un lever la voix car vous êtes un chouille trop loin du micro. Bon, il est vrai que pour avoir un micro correct, faut en général payer un petite somme. Là encore, j’ai décidé de faire dans le pas cher tout en étant compatible et déjà testé par la communauté Jarvis. J’ai donc acheté sur Amazon un micro en USB omnidirectionnel stéréo comme il dise. Bon, je l’ai acheté à 7 euros et là, il est à 12 euros. L’augmentation est sévère !  😡

Voici la liste des micros testé par la communauté : http://domotiquefacile.fr/jarvis/content/prerequisites.

L’installation du micro est très compliquée par contre c’est l’inconvénient. J’ai du me lever de mon siège pour brancher l’USB sur le RPI3 et c’est tout. J’étais crevé.  😉

Un petit lsusb et on voit bien le micro (Asahi Kasei) :

D’ailleurs sur Windows, c’est Plug And Play pour info.

Par contre vous l’aurez compris, il vous faudra 3 ports USB donc oubliez le RPI 1B par exemple car il n’a que 2 ports USB. Enfin pensez à prendre une bonne alimentation à votre RPI, c’est l’élément qu’il ne faut pas négliger pour n’avoir aucun problème.

Installation de Jarvis

Vous avez tout sur le site officiel : http://domotiquefacile.fr/jarvis/.

Prérequis : Sur RPI, il faut impérativement être en Jessie. Le paquet jq sont manquants en Wheezy par exemple !

Les screens d’installation concernent la version actuelle en date du 08/03/2017. D’ailleurs, je viens de voir que l’auteur a fait une vidéo de l’installation avec la dernière version que vous pourrez suivre directement sur le site. Les étapes ci-dessous sont exactement les mêmes, c’est peut-être plus simple par contre pour suivre l’installation d’avoir des screens qu’une vidéo. A vous de voir.

Une chose importante à savoir, c’est que tout vos choix pendant l’installation pourront être modifié ensuite dans le logiciel donc pas de crainte.

Comme toujours, en SSH via Putty sur votre RPI, taper les commandes ci-dessous :

sudo apt-get install -y git
git clone https://github.com/alexylem/jarvis.git
cd jarvis/
./jarvis.sh

L’installation détecte qu’il manque des paquets et vous propose de les installer. Tapez « Y ».

Premier écran indiquant la fin de l’installation. Maintenant, on va devoir tout configurer. Remarquez la politesse de Jarvis :p

Indiquez la langue que vous voulez utiliser : langue de boeuf, langue de bois, etc :p

Pour l’instant, l’interface est uniquement en anglais mais rien de bien méchant.

L’installation vous demande comment vous voulez être appelé : Président, maître, chef :).

Prochaine étape, on test les basses :). Pensez à allumer votre enceinte si elle est éteinte et pour ceux utilisant l’enceinte avec Squeezelite, y’a rien à faire.

Avez-vous entendu le son ? Oui, non ?

Là, on va tester votre belle voix.

Si vous avez entendu votre douce et mélodieuse voix, c’est parfait.

Prochain test, l’assistant va tester le bruit ambiant dans un environnement en mode silence et ensuite, le volume de votre voix. Vous pourrez régler le gain du micro mais attention ce réglage est valable pour tous les modes.

Si le volume de votre voix n’est pas assez important, vous aurez un beau message comme ci-dessous.

J’ai augmenté le gain du micro de 10 et le test a fonctionné pour moi. Par contre, faites vraiment plusieurs essais pour régler ce paramètre car trop faible, votre voix ne sera quasiment pas audible et trop fort, le son sera saturé et incompréhensible.

L’assistant vous indique que vous pourrez modifier tout ça par la suite encore une fois.

Maintenant, nous allons paramétrer quel moteur de reconnaissance du mot magique sera reconnu. Là encore, j’ai utilisé les paramètres recommandés sur le site, Snowboy pour la reconnaissance.

L’assistant vous indique que le paquet n’est pas installé. Il faudra patienter un petit moment, même sur un RPI3, pour installer Snowboy.

Installation de Snowboy finie.

L’assistant vous demande si vous voulez utiliser le mot magique Snowboy ou en utiliser un autre.

Indiquez le nom que vous souhaitez utiliser en mot magique. Pourquoi Sarah ? Si vous avez lu la rubrique A propos, vous le saurez  😛

Prochaine étape, il va falloir aller créer un compte sur le site de Snowboy pour récupérer votre propre API que vous collerez ici. Rien de compliqué, une fois identifié, vous pouvez récupérer votre API dans votre profil en haut à droite. En récupérant votre API, vous pourrez apercevoir un quota sur l’utilisation du mot magique limité à 1000 utilisation par mois. ça peut paraître peu mais ça fait 30 interactions en moyenne par jour ce qui est je pense très jouable 🙂

Vous allez devoir dire 3 fois votre mot magique choisi précédemment pour que l’assistant génère un modèle.

La partie de la reconnaissance du mot magique est finie.

On passe au paramétrage de la reconnaissance des commandes vocales. Là aussi, j’ai pris le choix recommandé : Bing. Il faudra suivre les instructions à cette page. Rien de compliqué non plus mais attention, il y a une étape 2 bis maintenant. Une fois votre compte créé, Microsoft veut valider votre email et cela peut prendre 10/15 minutes le temps de le recevoir et de pouvoir passer à l’étape 3. Pensez à regarder vos spams. Enfin, à la partie 3, le nombre d’opérations par mois est passé à 10000 au lieu de 5000.

Récupérez une de vos clefs API et copiez la.

Dernière partie de l’installation, l’assistant indique que le TTS n’est pas installé et vous propose de l’installer.

C’est fini !

Installation du plugin Jeedom

Lancer Jarvis sur votre RPI avec les commandes habituelles (une fois connecté en SSH avec l’utilisateur pi, placez-vous dans le répertoire Jarvis « cd jarvis » et lancez l’assistant « ./jarvis.sh »).

Ne mettez pas Jarvis en service pour le moment tant que votre configuration n’est pas finie. ça sera plus simple pour accéder à l’assistant ou ajuster/configurer un paramètre.

Indiquez l’adresse IP de Jeedom, le port, le chemin ainsi que votre clef API Jeedom.

L’installation est finie et vous pouvez utiliser Jarvis maintenant. Par contre, ne pensez pas commander vos équipements domotique sans faire davantage de configuration sur Jeedom au niveau des interactions.

Exemple d’interaction dans Jeedom

2 intéractions ici très simple qui vont permettre d’allumer la télé et de l’éteindre en utilisant mon hub Harmony et l’activité TV  avec un retour vocal sur l’enceinte BT du RPI qui a fait l’opération 😎

Autres plugins ?

Vous avez la possibilité d’installer d’autres plugins très pratique :

  • Jarvis UI, qui va permettre l’accès en HTTP à la configuration de Jarvis. Plus besoin de SSH pour le paramétrage et surtout une interface plus conviviale :

 

  • Jarvis API, va vous permettre de contrôler à distance Jarvis par requête HTTP
  • Time, pour connaitre l’heure et la date avec Jarvis

Après c’est du gadget pour certains…

Conclusion

Avant tout, grand merci à @Alex, l’auteur de Jarvis qui a fait un super travail et qui continue de l’améliorer surtout !

Question backup de la configuration, je n’ai rien trouvé directement sur l’interface de Jarvis. Un point qui arrivera certainement plus tard j’en doute pas. Pour l’instant, j’ai récupéré le répertoire config inclus dans /home/pi/jarvis. Très pratique pour installer rapidement de nouvelles antennes Jarvis, avant de lancer la commande « ./jarvis.sh », vous copiez le contenu du dossier config mis en backup sur votre RPI dans /home/pi/jarvis/config et vous lancez ensuite la commande précédente. Vous n’aurez plus qu’à installer les paquets et plugins.

Pour la configuration, vous pouvez passer directement par des commandes sur Jarvis mais le mieux pour moi est de configurer les interactions directement dans Jeedom. Vous pouvez ainsi contrôler toute votre domotique et la configuration est centralisée sur Jeedom : La partie vocal, RPI avec Squeezelite et Jarvis, le cerveau alias Jeedom 🙂 ça évite de s’éparpiller.

Mon avis sur Jarvis : Ce n’est pas sans défaut. Depuis quelques jours que je l’utilise, les reconnaissances ont du mal par moment quand il y a du bruit environnant mais le fait d’utiliser des micros sur plusieurs antennes permet de réduire ce problème quand même. Lors des tests précédents que j’avais réalisé avec Jarvis et d’autres solutions, une fois la télévision allumé ou de la musique en route, la reconnaissance était réduite à néant. L’avantage de Jarvis est sans conteste le choix laissé à chacun des moteurs utilisés : au plus performant en terme de rapidité à celui qui offre la meilleur qualité audio. Autre avantage est l’installation sur RPI… on en a plein les tiroirs 🙂

Je vois une question arrivée : Que se passe t-il avec 2 micros dans la même pièce ou assez proche ? Honnêtement, je n’ai pas fait le test mais le mieux est de disposer les micros à des endroits stratégiques afin de couvrir la zone la plus vaste. Exemple : 1 pour la SdB, 1 pour la chambre parentale, 1 dans la cuisine et 1 dans le salon voire 2 suivant la taille de votre salon.

3 pensées sur “Réutilisation RPI Multiroom et Jarvis

  • 19 mars 2017 à 21 h 25 min
    Permalink

    Excellent, justement j’avais demandé un tuto sur le forum de Rosny 🙂

    Répondre
  • 20 mars 2017 à 7 h 36 min
    Permalink

    Au plaisir alors 🙂

    Répondre
  • 9 avril 2017 à 21 h 59 min
    Permalink

    Bonjour,
    On peut l’installer directement sur le rpi qui heberge jeedom ?

    Répondre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *