An open API service indexing awesome lists of open source software.

https://github.com/desiFish/Smart-Aquarium-V3.0

V3.0 - Using NodeMCU ESP8266 for controlling switches (Relay). Uses RTC (Real Time Clock - DS3231) and NTP (Network Time Protocol) for maintaining time. OLED Display (128x64) for instant updates. A webserver for Manual Controls. Vast application including Aquariums and IOT related.
https://github.com/desiFish/Smart-Aquarium-V3.0

aquarium-automation aquarium-controller arduino bootstrap5 ds3231-arduino esp-now esp8266-arduino modern-ui nodemcu-esp8266 oled-display-ssd1306 ota-firmware-updates ota-update relay-modules rtc-module smart-home ssr xmlhttprequest

Last synced: about 2 months ago
JSON representation

V3.0 - Using NodeMCU ESP8266 for controlling switches (Relay). Uses RTC (Real Time Clock - DS3231) and NTP (Network Time Protocol) for maintaining time. OLED Display (128x64) for instant updates. A webserver for Manual Controls. Vast application including Aquariums and IOT related.

Awesome Lists containing this project

README

        

# Aquarium Automation using NodeMCU ESP-12E V3.0 🐟

> 📢 **Development Notice**: This ESP8266 version will no longer receive feature updates. A new ESP32 edition is under development that will provide more powerful customization options and advanced monitoring features for aquarium inhabitants. Stay tuned! 🚀

[![License](https://img.shields.io/github/license/desiFish/Smart-Aquarium-V3.0?color=blue&style=for-the-badge)](https://github.com/desiFish/Smart-Aquarium-V3.0/blob/main/LICENSE)
[![Stars](https://img.shields.io/github/stars/desiFish/Smart-Aquarium-V3.0?style=for-the-badge&color=yellow)](https://github.com/desiFish/Smart-Aquarium-V3.0/stargazers)
[![Issues](https://img.shields.io/github/issues/desiFish/Smart-Aquarium-V3.0?style=for-the-badge&color=green)](https://github.com/desiFish/Smart-Aquarium-V3.0/issues)
[![Arduino](https://img.shields.io/badge/Arduino-IDE-00979D?style=for-the-badge&logo=Arduino&logoColor=white)](https://www.arduino.cc/)
[![ESP8266](https://img.shields.io/badge/ESP8266-IoT-red?style=for-the-badge&logo=esphome&logoColor=white)](https://www.espressif.com/)
[![Maintenance](https://img.shields.io/badge/Maintained%3F-no%20(ESP32%20coming%20soon)-red.svg?style=for-the-badge)](https://github.com/desiFish/Smart-Aquarium-V3.0/graphs/commit-activity)
[![Website](https://img.shields.io/website?style=for-the-badge&up_message=online&url=https%3A%2F%2Fgithub.com%2FdesiFish%2FSmart-Aquarium-V3.0)](https://github.com/desiFish/Smart-Aquarium-V3.0)
[![made-with-arduino](https://img.shields.io/badge/Made%20with-Arduino-1f425f.svg?style=for-the-badge)](https://www.arduino.cc/)

## ⚠️ Disclaimer
**HIGH VOLTAGE electricity involved!** Use at your own risk. Work under proper supervision if you are a minor. I take no responsibility for any accidents that may occur from using this code.

## 🎯 Features
- Modern responsive web interface
- Asynchronous webserver for better performance
- Real-time page updates using JavaScript XMLHttpRequest
- ESP-NOW time broadcasting to other ESP devices
- Multiple control modes:
- Automatic (time-based)
- Power Saver
- Timer
- Manual
- Intuitive status display on web interface
- Solid State Relay support for reliability
- Over-the-Air (OTA) updates
- Automatic time synchronization
- Visual feedback and WiFi signal indicators

## 📦 Prerequisites
### ESP8266 Board Support
Add this URL in Arduino IDE:
```
http://arduino.esp8266.com/stable/package_esp8266com_index.json
```
File → Preferences → Additional Boards Manager URLs

## 🔧 Hardware Setup

### I2C Devices (DS3231 & OLED 128x64)
| NodeMCU | Device |
|---------|--------|
| D1 | SCL |
| D2 | SDA |
| 3.3V | VCC |
| GND | GND |

> Note: Both I2C devices share the same pins. For I2C address conflicts, adjust pull-up resistor values.

### 4-Channel Relay Board
| NodeMCU | Relay |
|---------|-------|
| D3 | IN1 |
| D5 | IN2 |
| D6 | IN3 |
| D7 | IN4 |

> Important: Do not fetch power from ESP GPIO Pins for relay board. Connect GND between NodeMCU, Relay and power supply.

## 🛠️ Required Components

### Core Components


Relay Board

Relay Board

4 Channel 5V SSR

250V 2A with Resistive Fuse


DS3231

RTC Module

DS3231 I2C

Precision RTC


NodeMCU

Microcontroller

NodeMCU-ESP8266

ESP12E Development Board


OLED

OLED Display

1.3" I2C I2C 128x64

Any Color

## 🌐 Web Interface


Web Interface

Responsive Web Dashboard


🎮 Control Features



  • ⏱️ Time-based automation

  • 🔌 Manual device control

  • ⚡ Power saver mode

  • ⏲️ Custom timer settings




📊 Dashboard Features



  • 📡 Real-time status updates

  • 📱 Mobile-responsive design

  • 🔔 Visual status indicators

  • 📈 Device runtime statistics


## 🤝 Contributing
We welcome contributions! Here's how you can help:
- 🔀 Fork the repository
- 👩‍💻 Create your feature branch
- ✨ Make your changes
- 📝 Open a Pull Request

## 🚀 Future Aspects
Here's what more can be done:
- 📱 Mobile App Integration
- 🌡️ Temperature Control
- 💧 Water Level Monitoring
- 🔄 Auto Water Change System

See our [Issues](https://github.com/desiFish/Smart-Aquarium-V3.0/issues) page for detailed roadmap and planned features.

## 🔄 Future Updates
See [Issues](https://github.com/KamadoTanjiro-beep/Smart-Aquarium-V3.0/issues) for planned features and improvements.

## 📄 License Summary

Click to expand detailed license information

GNU General Public License v3.0 Details

Permissions

✅ Commercial use - Use for business purposes

✅ Modification - Modify the code

✅ Distribution - Share the code

✅ Patent use - This license provides an express grant of patent rights from contributors

Conditions

📝 License and copyright notice - Include the original license and copyright

📝 State changes - Document all changes made to the code

📝 Disclose source - Source code must be made available when distributing

📝 Same license - Modifications must be released under the same license

Limitations

⚠️ No Liability - Author is not responsible for damages

⚠️ No Warranty - Code is provided "as is"

⚠️ Must preserve copyleft - Cannot change to a more restrictive license

This is a copyleft license that requires anyone who distributes your code or a derivative work to make the source available under the same terms.


For complete license text, see [LICENSE](/LICENSE)

---

### Made with ❤️ for the IoT Community


⭐ Star this project  | 
🐛 Report Bug  | 
✨ Request Feature