Vous connaissez certainement les fameuses nano cartes mères Raspberry Pi et surtout la version 3 qui apporte le Wifi et le bluetooth.
Permettez-moi de vous présenter sa petite sœur, la Raspberry Pi Zero W, sortie il y a tout juste un an à l’occasion des 5 ans du premier modèle de Raspberry.
- Processeur 1Ghz
- 512 Mo de RAM
- Mini HDMI
- Wi-Fi 802.11b / g / n
- Il n’y a pas de port ethernet
- Bluetooth 4.1 faible consommation d’énergie (BLE)
- 6,5 x 3 x 0,5 cm
- 20 € avec le boitier sur Gearbest.
- 26 € avec le boitier sur Amazon (prime).
Plus petit, moins puissant, mais aussi moins cher, ce nano-ordinateur convient parfaitement pour une antenne bluetooth associée au plugin (gratuit) Bluetooth Advertisement, plus connu sous le nom de BLEA.
Pour ceux qui ne connaissent pas ce plugin, il permet de rendre Jeedom compatible avec les appareils bluetooth.
Par exemple, vous pouvez utiliser la balance connectée Xiaomi Mi-scale, les bracelets Mi-Band, la lampe de chevet Mi-Bedside, les trackers NUT, des boutons connectés et bien plus encore.
Vous trouverez la liste des appareils compatibles, sur la documentation officielle du plugin, ici.
Pour plus de détails sur le plugin BLEA, je vous renvoie vers le site du développeur, un certain Sarakha63, bien connu des Jeedomiens.
Dans cet article, je vais me concentrer sur l’installation de Raspbian sur le Raspberry Pi Zero W et la configuration d’une antenne BLEA.
Les antennes BLEA permettent d’augmenter la portée du bluetooth, car cette dernière n’est que de quelques mètres. C’est un défaut, mais qui peut aussi être un avantage pour la précision lorsqu’on veut gérer la présence d’une personne avec un bracelet Mi-Band, par exemple.
Dans cet article je reprends des passages de l’article Installation de Raspbian et Jeedom sur Raspberry en adaptant la configuration au Raspberry Zero W qui n’a pas de port ethernet.
Installation de Raspbian
Raspbian s’installe sur une carte MicroSD. Si vous avez une vieille carte micro SD de 2 Go, ça ira très bien pour installer Raspbian et en faire une antenne Blea.
Récupérer l’image de Raspbian
Avant de commencer, il faut récupérer l’image de Raspbian, disponible sur Raspberrypi.org.
Deux versions sont disponibles, mais c’est la RASPBIAN LITE qui nous intéresse, car elle est plus légère et ne propose pas d’environnement graphique. C’est tant mieux, car on n’en a pas besoin.
Le téléchargement peut être long en fonction de votre connexion ADSL, car l’image pèse environ 1.5 Go. Une fois le téléchargement terminé, dé-zipper l’image sur votre disque dur.
Installer l’image de Raspbian
- Cliquer sur ce lien : win32diskimager.
- Accepter les messages, puis cliquer sur le bouton vert « Download« .
- Une fois téléchargé, double-cliquer sur le fichier pour l’installer et l’ouvrir.
- Dans « Image file » rechercher votre image Raspbian, préalablement dé-zippée sur votre disque dur. (2017-11-29-raspbian-stretch-lite.img)
- Dans « Device« , sélectionner le lecteur de carte SD sur lequel vous voulez installer Jeedom.
ATTENTION ! Ne vous trompez par de lecteur car toutes les données vont être effacées. - Cliquer sur « Write« , un message d’avertissement s’affiche, si vous êtes prêts, cliquez sur « Yes« .
- A la fin de la copie, un message vous prévient que l’installation est finie.
Si tout s’est bien passé, vous devriez voir dans l’explorateur de fichier Windows un lecteur appelé « boot« , c’est votre carte SD avec Raspbian.
Configuration de Raspbian
Comme il n’y a pas de port Ethernet sur le Raspberry Pi Zero W, il faut pouvoir se connecter au wifi, on pourrait brancher un adaptateur micro HDMI et un clavier, mais il y a beaucoup plus simple.
Configuration Wifi du Raspberry Pi Zero W
- Ouvrir un éditeur de texte, exemple NotePad++.
- Copier le code suivant :
[NomDeVotreWifi]ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=FRnetwork={
ssid="
[MotDePasseDeVotreWifi]"
psk=""
key_mgmt=WPA-PSK
scan_ssid=1
}
- Remplacer
[NomDeVotreWifi] et
[MotDePasseDeVotreWifi]par vos informations personnelles. - Enregistrer ce fichier sous le nom
wpa_supplicant.conf
à la racine de la carte SD, le lecteur « boot« .
Activer le SSH
Créer un fichier vide appelé « ssh » à la racine de la carte SD.
Attention !!! il ne doit pas y avoir d’extension à ce fichier.
Démarrer le Raspberry Pi Zero W
Vous n’avez rien à faire de particulier pour démarrer, si ce n’est de mettre la carte SD dans le Raspberry Pi.
Si vous utilisez le boîtier officiel, il n’y a pas de fente pour la carte SD. Il faut donc l’installer avant de placer le raspberry dans le boîtier (Voir photo). Il suffit en suite de clipser la carte dans la partie rouge du boitier, pas besoin d’outils.
Pour finir, brancher l’alimentation électrique sur le port USB Power.
Apres quelques secondes, vous devriez voir votre Raspberry W se connecter au réseau wifi.
Trouver l’adresse IP de votre Raspberry Pi
Changer le mot de passe de l’utilisateur Pi
Il faut pour cela se connecter en SSH.
- Taper :
passwd
- Saisir le mot de passe actuel : raspberry
- Saisir le mot de passe de votre choix, 2 fois.
Créer un utilisateur Root
Nous allons créer un utilisateur avec les droits root pour l’antenne BLEA, cela peut être utile pour des questions de sécurité, afin de ne pas utiliser l’utilisateur root.
- Taper : sudo adduser [nomUtilisateur]
- Taper : sudo visudo
- Saisir à la fin du fichier : [nomUtilisateur] ALL=(ALL) NOPASSWD: ALL
- Faire : CTRL + X
- Faire : CTRL + Y
- Taper : logout
- Connectez vous avec ce nouvel utilisateur.
Mise à jour de Raspbian
- Taper :
apt-get update
- Patienter…
- Taper :
apt-get upgrade
- C’est prêt !
Configurer une antenne BLEA
Si vous avez bien réalisé les étapes précédentes, vous avez donc un Raspberry W connecté au Wifi avec Raspbian, ainsi qu’un nouvel utilisateur avec les droits root.
On va maintenant pouvoir commencer l’installation de l’antenne Blea pour Jeedom.
La configuration est la même pour les autres modèles de Raspberry disposants du bluetooth, comme un Raspberry Pi3.
Ajouter un antenne BLEA à Jeedom
Pour ajouter une antenne Blea il faut bien sûr avoir installé le plugin Blea. Faites le si ce n’est pas déjà fait.
- Aller dans : Plugins / Protocol domotique / Bluetooth Advertisement.
- Cliquer sur : Antennes.
- Cliquer sur : Ajouter une Antenne.
- Remplir le formulaire :
- Nom : Exemple : RPIZeroW.
- Ip : 192.168.XX.XX L’adresse IP de votre Raspberry W.
- Port : 22 Le port par défaut pour le SSH.
- User : [nomUtilisateur] L’utilisateur root que nous avons créé précédemment.
- Password : •••••••••••• Le mot de passe.
- Device : hci0. C’est l’identifiant du bluetooth. Si vous avez un doute, taper « hciconfig » en SSH.
- Sauvegarder.
A ce niveau, l’antenne Blea est créée dans Jeedom, mais pas encore active.
Installer l’antenne BLEA sur le Raspberry W
Maintenant, il va falloir envoyer les fichiers et installer les dépendances sur le Raspberry W. Pas besoin de se connecter en SSH. Tout est faisable depuis Jeedom.
- Cliquer sur : Envoyer les fichiers.
- Pour vérifier que les fichiers ont bien été copiés dans le répertoire, taper en ssh : « ls /home/pi/blead/resources« . La commande ls permet d’afficher le contenu du répertoire.
- Cliquer sur : Lancer les dépendances.
- Patientez, ça peut être long.
- Pour voir l’état d’avancement :
- Cliquer sur : « Log dépendances« . Permet de récupérer les log.
- Fermer la fenêtre « Gestion des antennes Bluetooth« .
- Cliquer sur : Configuration.
- Cliquer sur : Blea_[nomdelantenne]_dependancy. Permet d’ouvrir les log.
- Vous devriez avoir :
running install_scripts
Installing blescan script to /usr/local/bin
Installing thingy52 script to /usr/local/bin
Installing sensortag script to /usr/local/bin
Everything is successfullyinstalled! - Si ce n’est pas le cas et que vous n’avez pas un message d’erreur, patientez encore, fermez la fenêtre et retournez dans « Antennes » et recommencez l’opération.
- Lorsque que vous avez le message «
Everything is successfully installed!
» vous pouvez continuer.
- Pour voir l’état d’avancement :
- Cliquer sur : Lancer.
- Sauvegarder.
- Vous devriez voir apparaître
- Une fois que le cœur de votre antenne bat, c’est que ça fonctionne !
Dépannage
Si le cœur ne se met pas à battre, c’est qu’il y a un problème quelque part. Là, il va falloir aller chercher des indices dans les fichiers log de l’antenne.
Voici les cas que j’ai rencontré avec les résolutions. Il y en a plus sur le forum Jeedom du plugin.
- Message d’erreur dans les LOG :
Traceback (most recent call last):
File "/home/pi/blead/resources/blead/blead.py", line 26, in <module>
from bluepy.btle import Scanner, DefaultDelegate
ImportError: No module named bluepy.btle
- Résolution :
Relancer l’installation avec l’utilisateur root depuis la console SSH.
[User]/home/
/blead/resources/install.sh
Remplacer [User]
par votre utilisateur Root.
- Message d’erreur dans les LOG :
Error: importing module from jeedom folder
- Résolution :
Depuis la console SSH en root taper :
sudo pip install requests
Conclusion
Vous savez maintenant comment installer Raspbian sur un Raspberry Pi Zero W et ajouter une antenne Blea à votre système domotique Jeedom.
Grace à ce plugin et aux antennes, vous pouvez utiliser les appareils bluetooth dans toute la maison comme, la salle de bain pour la Mi-scale, la chambre avec la Mi-Bedside, le jardin avec les Mi-plant et même gérer éventuellement la présence des membres de votre famille avec les Mi-Band.
Ps: Rassurez-vous, Blea ne fonctionne pas seulement avec les appareils Xiaomi, c’est juste que j’en ai beaucoup. 😉
Pour info, les smartphones ne sont pas reconnus dans Blea et certains appareils ne sont pas (encore) référencés, mais il est tout de même possible de gérer la présence des appareils inconnus.
Pour l’utilisation du plugin je vous invite à lire la doc officiel.
Matériel nécessaire pour installer une antenne Blea :
- Raspberry Pi zero W+ Case
- Carte micro-SD
- Alimentation pour Raspberry
- Total
PS : J’ai récemment reçu la nouvelle Yeelight Candela, mais elle n’est pas encore reconnue par le plugin. J’ai laissé un message sur le site de sarakha63, je vous tiendrai au courant dès qu’elle sera intégrée au plugin.
N’hésitez pas à laisser un commentaire si vous avez des soucis lors de l’installation, mais aussi si ça c’est bien passé, ça fait toujours plaisir. 🙂
Tout simplement, Bel article Guillaume, merci .
Merci ça fait plaisir. 😉
Bon boulot cet article, en complément, voici un petit script RPI3 pour démarrer le plugin antenne BLEA au démarrage : https://www.jeedom.com/forum/viewtopic.php?f=157&t=28608&start=40#p569592
Merci pour l’info.
Bravo encore une fois c’est clair je te félicite comme toujours Guillaume
Merci j’essaie d’être le plus clair possible, n’hésitez pas si vous avez des suggestions dans la mise en page ou la présentation.
bonjour j’ai un ptit soucis mon raspberry est introuvable sur le reseau et j’ai pas d’adaptateur hdmi
est ce que ca pourrait venir du type de protection
moi je suis avec une freebox avec le protocole
WPA2-PSK/AES
merci
Bonjour,
si vous ne voyez pas le RPI c’est surement qu’il n’est pas connecté au wifi.
La clé WPA ne doit pas poser de problème c’est surement une erreur de saisi dans le fichier de config du wifi.
Verifiez :
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=FRnetwork={
ssid="[NomDeVotreWifi]"
psk="[MotDePasseDeVotreWifi]"
key_mgmt=WPA-PSK
scan_ssid=1
}
Remplacer [NomDeVotreWifi] et [MotDePasseDeVotreWifi]par vos informations personnelles.
Enregistrer ce fichier sous le nom wpa_supplicant.conf à la racine de la carte SD, le lecteur « boot » .
Avez vous essayé de rebooter le RPI ?
Après avoir rencontré le même problème que hornet02 (fichiers ssh et wpa_supplicant.conf qui se supprime) j’ai fini par trouver pourquoi :
Il manque un saut de ligne entre country=FR et network={
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=FR
network={
ssid= »[NomDeVotreWifi] »
psk= »[MotDePasseDeVotreWifi] »
key_mgmt=WPA-PSK
scan_ssid=1
}
merci pour ta reponse j’ai rebooté le rpi pareil
par contre normal apres lorsque je remet la micro sd dans le pc les fichiers ont disparu?
les [ ] on doit les mettre dans le nom du reseau et mot de passe?
merci
Non ce n’est pas normal qu’il n’y est plus rien sur la carte attention il y a 2 partitions.
Non il ne faut pas mettre les [ ]
c’est bon j’ai changé de pc et d’editeur de texte car quand je reconnecté ma micro sd a l’autre pc le texte n’etait pas bien prit en compte et la directe ca fonctionne je vais enfin pouvoir avancé
merci
bonjour
j’ai vu que l’on pouvait utilisé la freebox v6 aussi comme antenne?
merci
Bonjour,
Un énorme merci à toi ! Blea ne voulait pas fonctionner et j’avais l’erreur que tu indiques :
Message d’erreur dans les LOG :
Traceback (most recent call last):
File « /home/pi/blead/resources/blead/blead.py », line 26, in
from bluepy.btle import Scanner, DefaultDelegate
ImportError: No module named bluepy.btle
En appliquant la résolution, ça fonctionne 😀
Résolution :
Relancer l’installation avec l’utilisateur root depuis la console SSH.
/home/[User]/blead/resources/install.sh
Remplacer [User] par votre utilisateur Root.
Pour les novices comme moi, je précise qu’une fois dans le dossier /resources, il faut entrer la commande : sudo sh ./install.sh pour lancer l’installation.
Bonjour,
Merci pour l’info et content que ton problème soir résolu.
Guillaume.
J’ai eu aussi le même cas. Vraiment bien fait cette doc.
J’ajoute pour les novices comme moi que la commande est bien a effectuer sur le PiZeroW et non le Pi Jeedom.
Pour ma part, j’ai remplacé [User] par le nom d’utilisateur [nomUtilisateur] que j’ai créé à l’étape Créer un utilisateur Root
Cela va peut-être de soi mais cela va mieux en le disant 🙂