Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

ESP32-Based Water Quality Monitoring System with I2C OLED Display and Wi-Fi Connectivity

View and Edit Project In Cirkit DesignerImage of ESP32-Based Water Quality Monitoring System with I2C OLED Display and Wi-Fi Connectivity

Circuit Documentation

Summary

The circuit in question is designed to monitor various environmental parameters such as pH, turbidity, and total dissolved solids (TDS) levels. It utilizes an ESP32 Devkit V1 microcontroller as the central processing unit, interfacing with a pH sensor module, a turbidity sensor, a TDS sensor module, and an OLED screen for data display. The circuit also includes a two-channel relay module for controlling external devices, a buzzer for alerts, and a pushbutton for user input. The ESP32 is also connected to a WiFi antenna for potential wireless communication capabilities.

Component List

ESP32 Devkit V1

OLED Screen I2C

pH Sensor Module by DM

Two Channel Relay Module

Buzzer

Pushbutton (x2)

Turbidity Sensor Meter

TDS Sensor Module

TDS Probe

PH Probe

WiFi Antenna

Wiring Details

ESP32 Devkit V1

OLED Screen I2C

pH Sensor Module by DM

Two Channel Relay Module

Buzzer

Turbidity Sensor Meter

TDS Sensor Module

TDS Probe

Documented Code

Code for OLED Screen I2C (ESP32 Devkit V1)

#include <Wire.h>

void setup() {
  Wire.begin(21, 22); // Initialize I2C communication at pins 21 (SDA) and 22 (SCL)
  // Initialize OLED display here using the appropriate library and functions
}

void loop() {
  // Your code to update the OLED display
}

Filename: sketch.ino

Code for Turbidity Sensor Meter (ESP32 Devkit V1)

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

Filename: sketch.ino

(Note: The code provided for the microcontrollers is minimal and would require further development to implement the functionality described in the summary. The code for the OLED screen initializes I2C communication, but does not include the library or functions necessary to operate the display. Similarly, the code for the turbidity sensor meter is a template without specific functionality.)