The primary goal of this project is to develop a floating base equipped with various sensors housed in a waterproof enclosure. The collected data is transmitted via XBee modules to a Raspberry Pi, where it will be stored in a database and displayed on a web interface.
- ESP32 Board
- Raspberry Pi Board
- Connection Cables
- Solar Panels
- Batteries
- Waterproof Enclosure
- XBee Modules
- Sensors:
- Analog TDS Sensor
- Industrial pH Electrode
- Analog Dissolved Oxygen Sensor
- Analog Electrical Conductivity Sensor
- Link: Analog TDS Sensor - DFRobot
- Voltage Range: 3.3 ~ 5.5 V
- Link: Industrial pH Electrode - DFRobot
- Voltage Range: 5.0 V
- Link: Gravity Analog Dissolved Oxygen Sensor SEN0237 - DFRobot
- Voltage Range: 3.3 ~ 5.5 V
- Link: Gravity Analog Electrical Conductivity Sensor SEN0451 - DFRobot
- Voltage Range: 3.3 ~ 5.0 V
- TDS (ppm): Total Dissolved Solids concentration (parts per million).
- pH: Acidity or basicity level of the solution.
- Dissolved Oxygen (mg/L): Concentration of dissolved oxygen in water.
- Conductivity (µS/cm): Electrical conductivity of the solution.
- Temperature (°C): Water temperature (may require a separate temperature sensor).
- Open Arduino IDE: Make sure you have the latest version installed.
- Access Preferences: Go to
File
>Preferences
. - Add Board URL: In the "Additional Board Manager URLs" field, add the following URL: https://dl.espressif.com/dl/package_esp32_index.json If there are already URLs in this field, separate them with commas.
- Open Board Manager: Go to
Tools
>Board
>Board Manager
. - Search for ESP32: Type "ESP32" in the search bar and install the latest version of the ESP32 by Espressif Systems.
- Select the ESP32 Board: Go to
Tools
>Board
, and choose your specific ESP32 board.
To set up the necessary environment on your Raspberry Pi, run the following command in the terminal:
curl -o install.sh https://raw.githubusercontent.com/LordYoni/WaterMonitor/refs/heads/main/Raspberry/install.sh
This command modifies the permissions of install.sh, making it executable. It's necessary to do this before you can run the script.
chmod +x install.sh
This command downloads the installation script. Once downloaded, you can run it to install the required components.
sudo ./install.sh
Contributions are welcome! Please submit a pull request or open an issue to discuss any changes you wish to propose.
A big thank you to the following contributors for their invaluable collaboration on this project. We worked together to bring this project to life: