Skip to content
This repository was archived by the owner on May 28, 2026. It is now read-only.

nyaexx/smart-irrigation

Repository files navigation

Smart Irrigation

🇬🇧 English | 🇹🇷 Türkçe

GitHub Release Downloads GitHub commits since latest release License

This project enables automatic irrigation using an Arduino circuit by measuring the soil moisture and air values of a specific plant. Additionally, there is an Android application operating via Bluetooth where you can monitor data and perform manual irrigation.


General Features of the Android Application:

  • Add multiple devices to the "My Devices" tab.
  • Delete and edit devices.
  • Connect to added devices from the "My Devices" page to access the management panel.
  • Read sensor data from your device via the management panel.
  • Manually trigger the water pump (motor) via the management panel.
  • Customize the application theme in the settings section.

Circuit Operation Features:

  • Workflow:

    • Measurement: Sensors measure soil moisture, air temperature, and air humidity.
    • Decision: When the soil is dry, the system detects this, lights up the red LED, and automatically activates the water pump (relay).
      • It is recommended to adjust the nem_orani (moisture rate) threshold values within the void loop() in the Arduino code according to the water requirements of your specific plant type.
    • Information: Soil status (Dry, Normal, Wet) is displayed via LEDs, and all data is sent to the phone via Bluetooth.
    • Remote Control: Manual irrigation can be started at any time with a single command through the app via Bluetooth connection.
  • Key Features:

    • Fully Automatic Irrigation: Waters plants on its own when no one is around.
    • Bluetooth Tracking: Provides real-time temperature and humidity monitoring via phone.
    • Status Indicators: Instantly shows whether the soil needs water thanks to the LEDs.

Android App Development:

Requirements:

Android Studio (Arctic Fox or higher)

Kotlin

Gradle (Comes with Android Studio)

Min SDK: 24, Target SDK: 36 (Target SDK is 35 for Release n1.6 and earlier)

Physical Android device (Required for Bluetooth features.)

How to Run?

  • Clone the Repository:

  • Open with Android Studio.

  • Once Gradle sync is complete, build and install it on your physical device.

  • After installation, first pair your device from the Android Bluetooth settings, then select the device within the app to proceed to the management page. (If you encounter connection issues, ensure that "Bluetooth nearby devices" and "Location" permissions are granted under Settings > Apps > Bitki Sulama > Permissions.)


Circuit Setup and Usage:

Set up the circuit according to the connection diagram below:

Note

For usage, you can upload the Arduino codes and the libraries located in this directory to your device.

Remember, if you are not using an original Arduino Uno, you must install the CH340 driver. Otherwise, installation is not necessary.

Important

Requirements for Bluetooth Connection: For the first connection, open the phone's Bluetooth menu, select "HC-06", and enter the password "1234". If a connection problem occurs within the app, try pairing immediately after pressing the red reset button on the Uno board. The red LED on the Bluetooth module indicates "searching for device" when flashing and "connection established" when solid. If the device cannot be paired while Bluetooth appears connected, disconnect the power from the circuit, wait until the lights turn off, and reconnect the power; this should resolve the issue.

Note

You can create an issue for help or any question.

If you would like to add something to the repo or fix a bug, feel free to submit a pull request.

About

Smart irrigation system with Bluetooth connectivity and Android app support.

Topics

Resources

License

Stars

6 stars

Watchers

1 watching

Forks

Contributors