Pour voir tout le détail du projet (circuit électronique, explications pas à pas, tests prototypes et explications sur les scripts Python): je vous encourage à lire toutes les sections du Github du projet.
Étapes de configurations
- Il faut dans un premier temps configurer le piZERO: cet article est dédié à la préparation d'un Raspberry piZERO.
- Pour faire fonctionner l'API de météo, il faut déclarer votre propre TOKEN sur le site meteo.concept. Déclarez un token standard gratuit qui vous permet d'interroger l'API jusqu'à 500 fois par jour. Le script Python va interroger l'API toutes les 5mn, ce qui génère au maximum 288 interrogations par jour. Sauvegarder votre token dans un fichier tokenAPI.txt.
- Déposez ensuite dans le répertoire /home/pi/pimometre les fichiers tokenAPI.txt (avec votre propre token en 1ère ligne), I2C_LCD_DRIVER.py, et pimometre.py
- Installez bien toutes les dépendances nécessaires pour faire fonctionner le capteur DHT22, comme expliqué ans la partie "tests" du Github:
Il faut tout d'abord activer l'interface I2C du Raspberry pi avec la commande: sudo raspi-config
Reboot nécessaire (commande: sudo reboot)
Il faut ensuite installer les dépendances et bibliothèques circuit-python d'Adafruit en suivant ce guide. Pour ce qui me concerne j'ai enchaîné ces commandes:
sudo pip3 install rpi.GPIO
sudo pip3 install adafruit-blinka
sudo pip3 install adafruit-circuitpython-dht
sudo apt-get install libgpiod2
Démarrage automatique
Le srcipt pimometre.py prend en paramètre le code INSEE de votre ville (à ne pas confondre avec le CODE POSTAL!). Pour retrouver le code INSEE de votre ville, c'est par ici. Sinon vous pouvez aussi utilisez les scripts de tests fournis dans le Github du projet où l'API est interrogée avec un code postal et fourni en retour les codes INSEE à choisir (un même code postal peut regrouper plusieurs villes).
Pour que le script soit exécuté au démarrage du Raspberry pi, on va passer par la crontab:
Editer la crontab en édition:
sudo nano /etc/crontab -e
ajouter ces deux lignes à la fin, avant le #:
@reboot pi python3 -u 'pimometre/pimometre.py' [INSEE] > 'pimometre/pimometre.log' 2>&1 &
@monthly reboot
pensez à remplacer [INSEE] par le code INSEE de votre ville (à ne pas confondre avec le code postal ...). CTRL-O pour sauvegarder les changements, puis CTRL-X pour quitter.
Et voilà, vous pouvez rebooter le Raspberry (sudo reboot) et lorsqu'il démarre la météo doit s'afficher . S'il ne se passe rien au bout de quelques minutes, vous pouvez consulter le fichier de logs /home/pi/pimometre/pimometre.log .