Agrixa is a smart agriculture monitoring system developed as part of our first-year multidisciplinary project.
The platform helps farmers monitor environmental conditions affecting crop growth and provides intelligent insights to improve crop health and yield.
The system collects real-time data from sensors measuring temperature, humidity, soil moisture, light intensity, and nutrient levels using an ESP32 microcontroller.
The sensor data is transmitted to Firebase, which acts as a real-time cloud database, allowing our website to instantly retrieve and analyze the environmental conditions.
Using this data, Agrixa can:
- Evaluate whether environmental conditions are suitable for crop growth
- Estimate plant growth rate
- Provide crop recommendations
- Detect plant diseases using AI models
This integration of IoT, cloud databases, and machine learning enables farmers to make more informed agricultural decisions.
Analyzes incoming sensor data to provide a real-time overview of:
- Temperature
- Humidity
- Soil moisture
- Light exposure
- Nutrient levels
The system uses this data to determine if the crop is receiving optimal environmental conditions and calculates an estimated plant growth rate.
Based on the environmental metrics collected from sensors, Agrixa suggests other crops that can grow successfully in the same environment, helping farmers optimize land usage.
Farmers can upload crop images to detect diseases using trained machine learning models.
Currently supported crops:
- Sugar Cane
- Rice
- Wheat
The system not only predicts the disease but also suggests solutions and treatment methods.
Note:
- Crop disease models were sourced from Kaggle datasets
- Weather condition data is retrieved from Open-Meteo API
Sensors
↓
ESP32 Microcontroller
↓
Firebase Realtime Database
↓
Backend (Python Server)
↓
Web Dashboard (React + Vite)
↓
AI Disease Detection Models
- Sensors collect environmental data
- ESP32 reads the sensor values
- Data is uploaded to Firebase Realtime Database
- The website retrieves data from Firebase
- Backend processes the data
- AI models analyze uploaded crop images for disease detection
- Results are displayed on the website dashboard
Below is the circuit diagram illustrating the sensor connections.
- Capacitive Soil Moisture Sensor
- DHT11 Temperature and Humidity Sensor
- LDR Sensor Module (Light Sensor)
- Analog TDS Water Conductivity Sensor
- ESP32 DevKit V1
- 10 kΩ Resistor
The code for the ESP32 can be found in the eps32_code.ino file.
The ESP32 collects sensor readings and sends them to Firebase, enabling real-time data monitoring through the web application.
Follow the steps below to run the project locally.
git clone <repository-url>
cd AgrixaInstall dependencies and start the Vite development server.
npm install
npm run devThe frontend will start at:
http://localhost:5173Navigate to the backend folder and start the Python server.
cd backend
pip install -r requirements.txt
python run_server.pyThe backend server will run at:
127.0.0.1:8000Create a .env file in the project root.
cp .env.example .envUpdate the .env file with the required configuration values.
-
ESP32
-
IoT Sensors
-
React
-
Vite
- Python
-
Firebase (Realtime Database)
-
Open-Meteo Weather API
- Crop Disease Detection Models (Kaggle)
This project was created for educational purposes as part of a university multidisciplinary project.
