Lancé il y a presque un an par Parrot, le Flower Power permet
de garder un oeil sur ses plantes.
Nous allons voir dans ce tutoriel, comment le connecter à notre
Raspberry Pi.
Le Flower Power est un objet qui rend vos plantes connectées. Malheureusement, il communique via Bluetooth v4 ce qui nous oblige à être à proximité de la plante pour l'utiliser. Or, il serait utile de le connecter à notre système domotique pour une surveillance lors d'un voyage par exemple.
Connecter son Flower Power à son système domotique ne permet plus de bénéficier de la base de données de Parrot sur les plantes, qui est intégrée à l'application mobile.
Pour ce tutoriel, j'utilise :
Puisque le Pi ne possède pas le Bluetooth par défaut, il faut lui installer une clé
pour pouvoir communiquer avec le Flower Power.
La mienne porte la référence CSR 8510.
Je vous conseille de vérifier si la votre est compatible avec le Raspberry. Vous trouverez ici la liste du matériel compatible avec ce dernier.
Avant d'installer votre clé, exécutez la commande suivante :
tail -f /var/log/syslog
Après l'insertion de votre clé, de nouvelles lignes apparaissent indiquant la découverte d'un nouveau périphérique USB.
sudo apt-get install bluetooth libluetooth-dev cd ~ wget http://node-arm.herokuapp.com/node_latest_armhf.deb sudo dpkg -i node_latest_armhf.deb npm install noble npm install flower-power npm install async
Pour se connecter au Flower Power :
cd ~/node_modules/flower-power sudo node test.js
Mon but était de connecter le Flower Power à mon système domotique
pour consulter à distance les données de ma plante.
Pour cela, j'ai modifié le script original pour ne renvoyer que les valeurs
recherchées (luminosité, température, humidité du sol et autonomie). Pour le
télécharger :
cd ~/node_modules/flower-power wget http://nawrasg.fr/download/pi/fp.js
Voici le code de la page PHP qui va récupérer ces données puis les renvoyer sous format JSON :
$output = shell_exec('sudo node /home/pi/node_modules/flower-power/fp.js'); $data = explode("\n", $output); $arr = array('battery' => $data[0], 'light' => $data[1], 'temp' => $data[2], 'moisture' => $data[3]); echo json_encode($arr);
Il faut donner au serveur la possibilité d'utiliser sudo :
sudo visudo
Puis rajoutez la ligne suivante en dernier :
www-data ALL=(ALL) NOPASSWD: /usr/local/bin/node
Pour lire les valeurs renvoyées en JSON, je vous renvoie vers ce tutoriel.
Merci à Sandeep Mistry pour sa bibliothèque Flower Power :)