Le projet JardinIoT est un jardin autonome. Ce jardin est composé de "buckets" autonomes dans lesquels les plantes sont semées. Un bucket comporte plusieurs sondes mesurant, entre autres, la température et l'humidité. Le bucket, à l'aide du serveur, ajuste l'humidité de la terre, la température et la lumière que reçoit la plante en se basant sur les données reçues par les sondes ainsi que sur différents facteurs, tels l'heure du jour et la date.
Plus de détails sur le projet peuvent être trouvés sur le Wiki.
Le projet a remporté un OCTAS dans la catégorie 'Relève étudiante' lors du Gala des OCTAS en 2018.
python --version
)pip
: pip install -U wheel semantic-version platformio
. Il se peut que vous deviez utiliser pip2
si Python 3 est installé sur votre ordi.git clone https://github.com/ClubCedille/jardiniot.git
lib_deps
qui sont trouvées dans platformio.ini
) pour que le code puisse compiler:
jardiniot-emb/esp/
et exécutez cette commande: platformio lib install "EspSoftwareSerial" "WiFi" "PubSubClient" "WifiManager" "CmdMessenger"
jardiniot-emb/arduino/
et exécutez cette commande: platformio lib install "StandardCplusplus" "Timer" "Adafruit Unified Sensor" "DHT sensor library"
arduino
et exécutez la commande platformio run --target upload
.
/dev/ttyACM0
, il faut faire: sudo chmod 666 /dev/ttyACM0
.esp
et faites la même commande pour flasher le ESP8266. Connectez qu'un seul truc à flasher à la fois sur l'ordi.Serial.print()
du Arduino, vous pouvez le faire avec cette commande: platformio device monitor -p /dev/ttyACM0 -b 9600
Ceci est un guide général et les commandes peuvent changer. Allez lire la doc pour plus de détails.
L'application utilise les ports suivants pour son fonctionnement:
1883
pour MQTT5000
pour l'API du site Web8080
pour le site WebLe port de l'API est hardcodé dans le frontend et n'est donc pas configurable lors du build.
Prérequis:
Pour rouler:
# docker-compose up
Le site est accessible au http://localhost:4000/, contrairement au port 8080
mentionné précedemment.
Le site est accessible sur le port 4000
lorsque la commande docker-compose
est utilisée, alors que si l'application est démarrée manuellement le port 8080
sera utilisé.
TODO