1- Clonez ce dépôt
2- Suivez le schéma d'installation dans le dossier schema.
[!ATTENTION] Pour voir le schéma, ouvrez wokwi Copiez-collez le fichier .json dans le diagram.json sur wokwi
-
Préparation de l'OS : installation de Raspberry Pi OS ici. Renommez l'hostname de la machine en skyvault.local
-
Installation de Docker et Docker Compose :
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh ./get-docker.sh --dry-run
- Configuration du Raspberry - MQTT :
Créer un dossier dans le répertoire racine, et y mettre le fichier docker-compose.yml (issu du dossier MQTT).
Une fois fait, lancer la commande docker compose up dans le répertoire racine.
Le serveur MQTT est maintenant opérationnel.
- Configuration - InfluxDB et Grafana :
Mettez vous dans le dossier InfluxDB, et créez un fichier .env à partir du fichier .env.example.
Une fois fait, lancer la commande docker compose up dans le répertoire racine.
Le serveur InfluxDB et Grafana est maintenant opérationnel.
-
Sur l'ESP32 publisher :
- Ajoutez le script esp32_pub.py dans l'ESP32 (fichier dans le dossier MQTT)
- Ajoutez la ligne
import esp32_pubdans le fichier boot.py de l'ESP32
-
Sur l'ESP32 subscriber :
- Ajoutez le script esp32_pub.py dans l'ESP32 (fichier dans le dossier MQTT)
- Ajoutez la ligne
import esp32_subdans le fichier boot.py de l'ESP32 - Ajoutez les fichiers esp32_gpio_lcd.py et lcd_api.py dans l'ESP32 (fichiers dans le dossier library)
- Sur l'ESP32 publisher :
- Connectez-vous à l'ESP32
- Dans l'interpréteur de commandes Thonny IDE, utilisez cette commande :
import webrepl_setup - Définissez un mot de passe
- Maintenant suivez ce tutoriel
[!REMARQUE] L'adresse IP est statique : 192.168.234.96. N'oubliez pas de mettre votre mot de passe.
- Sur l'ESP32 subscriber :
- Connectez-vous à l'ESP32
- Dans l'interpréteur de commandes Thonny IDE, utilisez cette commande :
import webrepl_setup - Définissez un mot de passe
- Maintenant suivez ce tutoriel
[!REMARQUE] L'adresse IP est statique : 192.168.234.222. N'oubliez pas de mettre votre mot de passe.
- Lancez les commandes suivantes sur votre ordinateur :
cd MQTT\ to\ Firebase/
npm iIl vous faut maintenant créer un projet sur le site Firebase, puis créer une Realtime Database.
Une fois fait, téléchargez votre serviceAccountKey.json, et placez-le dans le dossier "MQTT To Firebase".
La configuration de Firebase est terminée, créez maintenant le même fichier .env que celui utilisé pour le raspberry.
- Lancez les commandes suivantes sur votre ordinateur :
cd WebApp/
npm iSi vous voulez construire l'application en production, utilisez plutôt ces commandes :
cd WebApp/
npm i
npm run buildUne fois tous les composants installés, vous pouvez lancer la solution en faisant ces actions dans l'ordre :
- Lancer le raspberry :
Vérifier que le serveur MQTT est bien lancé, et que le serveur Web est accessible.
- Lancer l'ESP32 publisher :
Exécutez le script esp32_pub.py sur l'ESP32 publisher.
- Lancer l'ESP32 subscriber :
Exécutez le script esp32_sub.py sur l'ESP32 subscriber.
- Lancer l'application Web :
Lancez l'application Web en exécutant la commande npm run dev dans le dossier WebApp.