This is an IOT project which aims to track greenhouse status, in addition to "Automatic" & "Manual" irrigation.
- Track & controll hardware via: Application - Telegram Bot - Message Text (SMS)
- Log files into SD-Card
- Show received message and its command on a 2*16 LCD
- DeepSleep on Arduino for lower power consumption
This application is made with ❤ by using "Flutter" framework, using "Bloc" architecture! The application consists different pages to track sensors, irrigate manually and also set a threshold for automatic irrigation.
For help getting started with Flutter, checkout Flutter Documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference. A few resources to get you started if this is your first Flutter project:
This project uses an "Arduino UNO" and "Wemos D1 mini" as hardware cores.
- Arduino Uno
- Wemos D1 mini
- GSM SIM808
- DHT11 Module (Temperature & Humidity Sensor)
- YL69 Module (Soil Moisture Sensor)
- Relay 5v, 1 channel
- SD-Card shield
- LCD char 2*16
- Voltage Convertor
- 9v Battery, Regulator, Resistors and more ...
Upcoming folders contain certain files & headers used for each microcontroller. You can see schematics in following picture:
Note: "Wemos D1 mini" connects to a router to access internet. Do not forget to set SSID & Password of your modem in following file: "Embedded Hardware Core/wemos/wifi.h"
This project uses two servers to operate correctly.
- Local server is set to store sensor data as well as communicating with application.
- Telegram bot Server contains API for track & control hardware via "Telegram Application"
This folder contains files for database and backend, using Python & Django framework.
- Open terminal in mentioned folder
- type ".\venv\Scripts\activate" in CMD
- type "py manage.py runserver 192.168.1.102:8000" in CMD
Note: "192.168.1.102" is my laptop IP after connecting to router. You can access your own IP by running "ipconfig" in CMD. Keep it in mind that all modules and also application are running on this local IP.
This folder contains API for Telegram Bot, using Python.