ESP32-DevKitC V4
ESP32-WROOM-32D Module
We transitioned from Arduino to the ESP32-WROOM-32D to handle complex real-time telemetry. Its dual-core architecture allows us to read sensors on one core while maintaining a stable Wi-Fi connection on the other.
Bill of Materials
Complete component list for the ChitoNet buoy system
| Component Name | Spec/Model | Qty | Function |
|---|---|---|---|
| ESP32 Dev Board | ESP32-WROOM-32D | 1 | Main Controller |
| Temperature Probe | DS18B20 (Waterproof) | 1 | Water Temp |
| pH Sensor Kit | Analog Output | 1 | Acidity Level |
| Turbidity Sensor | Analog Optical | 1 | Water Clarity (NTU) |
| DO Sensor | RS485 Industrial | 1 | Dissolved Oxygen |
| RS485 Interface | MAX485 / TTL | 1 | DO Communication |
| Relay Module | 5V / 10A | 2 | Switch Pumps/Air |
| Peristaltic Pump | 12V DC | 1 | Water Sampling |
Power Budget Analysis
Calculated load for the 3.3V rail. The ESP32's onboard regulator typically handles ~600mA.
Warning: Do not power high-current devices (motors/solenoids) from the 3.3V pin. Use an external 12V battery with a common ground.
Assembly Checklist
-
1Breadboard Rails Use the top rail for 3V3 and bottom rail for GND to prevent accidental shorts.
-
2Voltage Divider Warning The ESP32 is a 3.3V device. Ensure pull-up resistors (like the 4.7kΩ for Temp) go to 3V3, NOT 5V.
-
3Sensor Partitioning Keep analog sensors (pH, Turbidity) on the left side of the board and digital/noisy components (Relays) on the far right.
Complete Wiring Pinout
Detailed pin connections for all sensors and components
| ESP32 Pin | Device | Wire Color | Notes |
|---|---|---|---|
| 3V3 | All Sensors VCC | Red | Main power rail |
| GND | Common Ground | Black | Must connect battery (-) here |
| GPIO 15 | DS18B20 Temp | Yellow | Needs 4.7kΩ pull-up to 3V3 |
| GPIO 34 | pH Sensor PO | Blue | Analog Input Only |
| GPIO 35 | Turbidity OUT | Blue/Yel | Analog Input Only |
| GPIO 16/17 | MAX485 (DO) | Grn/Wht | RX=16, TX=17 |
Sensor Array
Four critical sensors working together to monitor water quality
pH Sensor
Measures the acidity or alkalinity of water on a scale from 0 to 14. Critical for detecting chemical imbalances that can lead to eutrophication.
Specifications
- Range: 0-14 pH
- Accuracy: ±0.1 pH
- Response Time: < 1 minute
- Interface: Analog output
- Operating Temp: 0-60°C
DS18B20 Temperature
Waterproof digital temperature sensor that provides accurate water temperature readings. Temperature changes can accelerate nutrient absorption and algal growth.
Specifications
- Range: -55°C to +125°C
- Accuracy: ±0.5°C
- Resolution: 9-12 bit selectable
- Interface: One-Wire digital
- Waterproof: IP68 rated
Turbidity Sensor
Optical sensor that measures suspended particles and water clarity in NTU (Nephelometric Turbidity Units). High turbidity indicates sediment, algae, or organic matter.
Specifications
- Range: 0-1000 NTU
- Accuracy: ±5%
- Method: Optical nephelometry
- Interface: Analog output
- Response Time: < 500ms
Dissolved Oxygen
Measures oxygen concentration in water, critical for detecting hypoxic conditions caused by eutrophication and algal blooms.
Specifications
- Range: 0-20 mg/L
- Accuracy: ±0.2 mg/L
- Type: Optical luminescence
- Response: < 60 seconds
- Interface: Analog output
Treatment System
Chitosan Aerator & Dispenser
Automated treatment system for preventing and controlling algal blooms
💧 Chitosan Dispenser Module
The chitosan dispenser is a controlled-release system that automatically deploys chitosan solution when eutrophication risk is detected. Chitosan is a natural biopolymer derived from chitin that effectively flocculates algae and suspended particles.
Key Features
- Capacity: 5L reservoir for extended operation
- Dosing: Programmable release rate (10-500 mL/hr)
- Control: Automated via Arduino based on ML predictions
- Material: Food-grade chitosan (85% deacetylation)
- Effectiveness: Removes 70-90% of algae within 24 hours
🌀 Micro-Aerator System
Integrated micro-aerator improves chitosan dispersion and increases dissolved oxygen levels in water, creating unfavorable conditions for algal growth while supporting aquatic life.
Specifications
- Type: Submersible micro-bubble aerator
- Air Flow: 2-5 L/min adjustable
- Power: 5W DC pump (solar compatible)
- Bubble Size: 0.5-2mm for optimal oxygen transfer
- Operation: Intermittent or continuous mode
How It Works
Detection
ML model predicts high eutrophication risk
Activation
Arduino triggers dispenser and aerator
Treatment
Chitosan flocculates algae while aerator adds oxygen
Monitoring
Sensors track water quality improvement
Intelligent Analytics
Machine Learning Prediction System
Advanced AI-powered eutrophication risk prediction using Gradient Boosting algorithms
🧠 Predictive Model
ChitoNet employs a sophisticated Gradient Boosting machine learning model trained on high-quality environmental datasets to predict chlorophyll-a levels—the primary indicator of eutrophication risk.
Model Performance
- Algorithm: Gradient Boosting Regressor
- Target Accuracy: R² > 0.90
- Input Features: pH, Temperature, Turbidity, Dissolved Oxygen
- Output: Chlorophyll-a concentration prediction
📊 Data Processing Pipeline
Real-time Sensor Data Collection
Arduino collects pH, temperature, turbidity, and dissolved oxygen readings every minute
Cloud Transmission
Data sent to ThingSpeak platform via WiFi for storage and processing
ML Model Inference
Gradient Boosting model predicts chlorophyll-a levels and eutrophication risk
Alert & Visualization
Dashboard displays predictions and triggers alerts when thresholds are exceeded
Scientific Foundation
Our model is trained on validated environmental datasets from authoritative sources including USGS, EPA, EDI, and LTER monitoring sites. The system continuously learns from new data to improve prediction accuracy and adapt to local water conditions.
System Architecture
Buoy Deployment
Each ChitoNet buoy is a self-contained monitoring unit designed for long-term deployment in aquatic environments. The buoys are strategically positioned across large water areas, forming a comprehensive monitoring network.
🔋 Power System
Solar-powered with battery backup for 24/7 operation. Designed for extended deployment periods.
📡 Data Transmission
WiFi connectivity enables real-time data transmission to ThingSpeak cloud platform for analysis and monitoring.
🌊 Waterproof Housing
IP68-rated enclosure protects all electronics from water, ensuring reliable operation in harsh aquatic environments.
Data Flow
Sensor Data Collection
Arduino reads data from pH, temperature, and turbidity sensors
Data Processing
Arduino processes and formats sensor readings
WiFi Transmission
Data sent wirelessly to ThingSpeak cloud platform
Cloud Storage & Analysis
Data stored and analyzed in real-time on ThingSpeak
Dashboard Display
Users access real-time data through ChitoNet web dashboard
Wiring & Connections
Sensor Connections
pH Sensor
- VCC: 5V
- GND: GND
- Signal: Analog Pin A0
DS18B20 Temperature
- VCC: 5V
- GND: GND
- Data: Digital Pin 2 (with 4.7kΩ pull-up resistor)
Turbidity Sensor
- VCC: 5V
- GND: GND
- Signal: Analog Pin A1
Power Requirements
-
⚡
Operating Voltage: 5V DC
Supplied via USB or external power adapter
-
🔋
Power Consumption: ~150-200mA (active)
Optimized for battery-powered applications
-
☀️
Solar Power: Recommended for long-term deployment
5W solar panel with charge controller
Network Deployment Strategy
Strategic Placement
Buoys are positioned across large water areas to provide comprehensive coverage and detect localized issues.
Continuous Monitoring
24/7 data collection ensures early detection of water quality changes before they become critical.
Network Coverage
Multiple buoys work together, providing spatial data about water quality variations across different zones.