Installation de satellites snips

Vérification de bon fonctionnement

Avant de se lancer dans une des 2 configurations possibles, je te propose déjà de vérifier que tout se passe bien au niveau de tes snips.

Il faut déjà que ton assistant soit déployé sur tes 2 snips. Si ce n’est pas le cas, alors fais-le.

Tes deux snips doivent être fonctionnels (sauf si tu as un raspberry pi zero). Pour vérifier ça, tu fais un « sam watch » et tu vérifies que tout fonctionne en utilisant le hotword et éventuellement en demandant l’heure, si tu viens de l’article sur l’install de snips. N’hésite pas à t’appuyer sur la partie vérification de l’article précédent si tu veux revérifier vite fait.

Si c’est un raspberry pi, tu peux au moins tester le hotword, le reste ne fonctionnera pas comme tu as pu le lire précédemment si tu as été faire un tour sur l’article cité dans la page précédente.

Nous allons aussi vérifier le réseau et que les 2 snips se voient. Alors, plusieurs possibilités, la première, les 2 adresses IP de tes snips sont fixes et tu les connais. Dans ce cas, tu peux passer à la suite.
Si tu ne connais pas tes IP alors il va y avoir un peu de travail au préalable.

Trouver les adresses IP

Pour ça tu te connectes sur ton snips-bureau par exemple et tu fais

$ ip addr

Ce à quoi il va te répondre un truc du genre

pi@snips-bureau:~ $ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
    link/ether b8:27:eb:c0:07:2f brd ff:ff:ff:ff:ff:ff
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether b8:27:eb:95:52:7a brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.15/24 brd 192.168.1.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::76bc:2d1c:62eb:361d/64 scope link
       valid_lft forever preferred_lft forever
pi@snips-bureau:~ $

Hop hop hop ! Respire, une seule ligne nous intéresse là dedans, c’est celle-ci :

inet 192.168.1.15/24 brd 192.168.1.255 scope global wlan0

Notre adresse IP c’est 192.168.1.15 .

Au passage ça marche aussi sous debian 🙂

Je fais la même commande sur mon snips-maitre :

inet 192.168.1.10/24 brd 192.168.1.255 scope global wlan0

L’adresse IP de mon snips-maitre est 192.168.1.10 .

Test du réseau

maintenant, tu vas te connecter sur « snips-maitre » et exécuter cette commande :

ping snips-bureau

Oui, n’oublie pas, on a appelé notre snips-satellite « snips-bureau ». Si tu lui as donné un autre nom, et bien tu ping un autre nom. Mais sois sûr du nom ! Si tu as un doute, tu peux exécuter « hostname » sur chacun de tes 2 snips pour connaitre leurs noms.
Voici le premier résultat possible du ping

cedcox@snips-maitre:~$ ping snips-bureau
PING snips-bureau.local (192.168.1.15) 56(84) bytes of data.
64 bytes from snips-bureau.local (192.168.1.15): icmp_seq=1 ttl=63 time=1.49 ms
64 bytes from snips-bureau.local (192.168.1.15): icmp_seq=2 ttl=63 time=1.75 ms

Yopla ! Tout va bien, tu peux faire CTRL+C pour arrêter le ping

On tente la même chose depuis notre snips-bureau, on ping notre snips-maitre :

pi@snips-bureau:~ $ ping snips-maitre
ping: snips-maitre: Nom ou service inconnu
pi@snips-bureau:~ $

Bam ! Bon et bien là, ça ne marche pas, il ne connait pas « snips-maitre ». Bon, est-ce qu’en langage IP, il le voit ? Essayons un ping, non plus du nom, mais de l’adresse IP :

pi@snips-bureau:~ $ ping 192.168.1.10
PING 192.168.1.10 (192.168.1.10) 56(84) bytes of data.
64 bytes from 192.168.1.10: icmp_seq=1 ttl=63 time=2.03 ms
64 bytes from 192.168.1.10: icmp_seq=2 ttl=63 time=1.84 ms

Bon, donc en termes de réseau les 2 snips se voient mais snips-bureau ne sait pas relier le nom « snips-maitre » à l’adresse IP.

nous allons donc mettre à jour son fichier hosts. Le fichier hosts d’un raspberry, c’est un fichier que le raspberry va interroger quand il n’a pas réussi à transformer le nom d’une machine en IP. les puristes vont me jeter des cailloux avec cette définition mais ce n’est pas grave; on aura le temps de parler de DNS et tout ça plus tard

Donc tu vas taper ceci sur ton « snips-bureau »

sudo nano /etc/hosts

Et va pouvoir modifier le contenu de ce fichier.

127.0.0.1       localhost
#::1            localhost ip6-localhost ip6-loopback
#ff02::1                ip6-allnodes
#ff02::2                ip6-allrouters

127.0.1.1       snips-bureau

tu auras remarqué avec ton oeil de lynx que j’ai mis des # devant certaines lignes ne t’en préoccupe pas.
Ajoute la ligne suivante au fichier :

192.168.1.10      snips-maitre

Petit point particulier, en général, entre l’adresse IP et le nom, c’est une tabulation (la touche qui est à gauche de la lettre A sur ton clavier).
Bien évidemment, tu mets la bonne adresse IP dans ton cas.

En résumé, si ton snips-maitre ne voit pas ton snips-bureau et/ou inversement, il faut mettre à jour leurs fichiers hosts.
dans le fichier hosts du snips-maitre, tu mets le nom et l’adresse IP du snips-bureau et dans le fichier host du snips-bureau, tu mets l’adresse IP du snips-maitre.

Attention ! Tu ne fais ça que si le ping du nom ne fonctionne pas. En effet, tes snips sont peut-être en DHCP (adresse IP donnée par ta box) et elle fait office de serveur de nom. Si tu fixes tout ça dans un fichier, ça risque de ne pas fonctionner au redémarrage !

Bon, normalement tes 2 snips se voient par leurs noms, donc niveau réseau c’est OK, on peut passer à la suite

6 Comments

  1. Bonjour
    Bonjour
    Comment avez vous resolu l envoi constant du son entre le satellite et le master ?
    Y a t il une config pour envoyer l audio qu une fous le hotword detecte ?
    Lionrl

    • Bonjour,

      Pour le moment, officiellement, il n’y a pas de solution. La solution dont je parle est une bidouille. Elle est composée de 2 snips full avec une configuration particulière de mosquitto qui retransfert certains messages sur le mosquitto du snips maître.
      Si j’ai le temps, je ferai un article là dessus, mais ça reste une bidouille avec comme principale contrainte de ne pas avoir d’actions sur les apps…

      Ced

  2. Salut Ced,
    j’ai décidément pas de bol, j’ai reçu mon pi0w, mais à chaque install il me plante tous les services ….je te bip sur Dscd

    Bien vu le tuto 😉

  3. Bonjour Cedcox,
    Super tuto, très bien détaillé. Je découvre ton site suite au post sur SNIPS pour Jeedom.

    De mon côté j’avais 1 VM OK et un rpi3 OK en mode autonome chacun.
    J’ai suivi ton tuto à la lettre et je ne sais pas pourquoi après le redémarrage j’ai quelques soucis :
    – Le fichier asound est vide à chaque redémarrage
    – Du coup logiquen: server-audio : en Not running
    – Malgré la remise en état après chaque redémarrage : pas de déclenchement après prononciation de Jarvis et donc rien dans sam watch

    J’ai mis à jour le post sur le forum jeedom pour pouvoir mettre des captures d’écrans.

    Merci 😉

Poster un Commentaire

Votre adresse de messagerie ne sera pas publiée.


*


Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.