https://github.com/opensensor/growmax
MicroPython firmware for the GrowMax automation board - a complete IoT solution for precision agriculture and greenhouse management. Features 8-channel moisture sensing, MOSFET-driven pump control, environmental monitoring (CO2, temperature, humidity, pH), and cloud integration with OpenSensor.io for real-time data visualization and remote control.
https://github.com/opensensor/growmax
automation plant-monitoring plant-watering plant-wateringsystem raspberry-pi-pico sensors
Last synced: 8 months ago
JSON representation
MicroPython firmware for the GrowMax automation board - a complete IoT solution for precision agriculture and greenhouse management. Features 8-channel moisture sensing, MOSFET-driven pump control, environmental monitoring (CO2, temperature, humidity, pH), and cloud integration with OpenSensor.io for real-time data visualization and remote control.
- Host: GitHub
- URL: https://github.com/opensensor/growmax
- Owner: opensensor
- License: bsd-3-clause
- Created: 2022-12-18T21:50:45.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-06-28T13:57:08.000Z (12 months ago)
- Last Synced: 2025-10-01T16:53:02.361Z (9 months ago)
- Topics: automation, plant-monitoring, plant-watering, plant-wateringsystem, raspberry-pi-pico, sensors
- Language: Python
- Homepage: https://www.OpenSensor.io
- Size: 468 KB
- Stars: 27
- Watchers: 2
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.rst
- License: LICENSE
Awesome Lists containing this project
README
# š± GrowMax - Smart Plant Watering Automation
**Micropython library for automated plant watering and environmental monitoring**
[](https://github.com/opensensor/growmax)
[](https://pypi.org/project/growmax/)
[](LICENSE)
Transform your plant care with intelligent automation! GrowMax provides everything you need to build a sophisticated plant monitoring and watering system using affordable microcontrollers.

## š Why Choose GrowMax?
- **šÆ Plug & Play**: Get started in minutes with pre-configured settings
- **š§ Highly Configurable**: 20+ configuration options for any setup
- **š Multi-Sensor Support**: Soil moisture, pH, CO2, water level monitoring
- **š§ Smart Watering**: Automated pumping with safety features
- **š± Remote Monitoring**: WiFi connectivity with cloud data collection
- **š„ļø Visual Feedback**: OLED display support with motion activation
- **ā” Power Efficient**: Designed for 24/7 operation
- **š”ļø Safety First**: Built-in water level checks and pump protection
## š Get Your Hardware
Purchase GrowMax boards and complete kits at **[opensensor.io](https://opensensor.io)**
## ā” Quick Start
### 1. Install Firmware
Choose your microcontroller:
- **Raspberry Pi Pico**: [Download Firmware](https://micropython.org/download/rp2-pico/)
- **Raspberry Pi Pico W**: [Download Firmware](https://micropython.org/download/rp2-pico-w/)
- **ESP32S3 (BananaPi)**: [See ESP32S3 Setup Guide](docs/bpi_esp32s3.md)
### 2. Install GrowMax Library
1. Install [Thonny IDE](https://thonny.org/)
2. Connect your device and launch Thonny
3. Go to **Tools ā Manage Packages**
4. Search for `growmax` and install the latest version
### 3. Create Your Main Program
Create `main.py` on your device:
```python
from growmax.routine import main
main()
```
### 4. Configure Your System
1. Copy `/lib/growmax/config.py` to your device root as `config.py`
2. Customize settings for your setup (see [Configuration Guide](docs/configuration-reference.md))
3. Run `main.py` in Thonny to test
### 5. Deploy
Connect 5V USB power - your system is now autonomous! š
## š Documentation
| Guide | Description |
|-------|-------------|
| [š Quick Start](docs/quick-start.md) | Get running in 10 minutes |
| [āļø Configuration Reference](docs/configuration-reference.md) | Complete settings guide |
| [š§ Hardware Setup](docs/instructions.md) | Assembly and connections |
| [š” Examples](docs/examples/) | Real-world use cases |
| [š Troubleshooting](docs/troubleshooting.md) | Common issues & solutions |
| [š API Reference](docs/api-reference.md) | Technical documentation |
## š Key Features
### š§ Smart Watering System
- **8-channel soil moisture monitoring** with individual thresholds
- **Automated pump control** with configurable duration
- **Water level safety checks** prevent dry pumping
- **High-power pump support** via I2C relay boards
### š Environmental Monitoring
- **CO2 monitoring** with Adafruit SCD4X sensors
- **pH measurement** using Atlas Scientific probes
- **Temperature and humidity** tracking
- **Real-time data logging** to OpenSensor.io cloud
### š„ļø Display & Interface
- **OLED display support** (SSD1327, SH1107)
- **Motion-activated display** for power efficiency
- **Real-time status updates** showing all sensor readings
- **Visual pump and sensor status** indicators
### š Connectivity & Remote Control
- **WiFi connectivity** for remote monitoring
- **Cloud data collection** with opensensor.io integration
- **Remote pump control** (experimental feature)
- **Device management** through web dashboard
## š§ Basic Configuration
Here are the most commonly used settings:
```python
# Soil moisture threshold (0-28, lower = wetter)
SOIL_WET_THRESHOLD = 10
# Enable water level safety check
WATER_SENSOR_LOW_ENABLED = True
WATER_SENSOR_LOW = 22 # GPIO pin
# Pump settings
PUMP_WHEN_DRY = False # Safety: only pump when water detected
PUMP_CYCLE_DURATION = 30 # seconds
# WiFi for remote monitoring
WIFI_ENABLED = True
WIFI_SSID = "YourNetwork"
WIFI_PASSWORD = "YourPassword"
```
See the [complete configuration guide](docs/configuration-reference.md) for all 20+ options.
## šļø Example Setups
### šæ Basic Single Plant
Perfect for beginners - monitor and water one plant automatically.
### š” Home Garden (8 Plants)
Full 8-channel setup with individual moisture thresholds per plant.
### š Greenhouse Monitoring
Advanced setup with CO2, pH, temperature monitoring and cloud logging.
### šŖ High-Power Irrigation
Using relay boards to control large pumps and irrigation systems.
[View detailed examples ā](docs/examples/)
## ā” Power & Safety
**Important Safety Information:**
- **Pico Power Limit**: 300mA max current (shared 5V rail)
- **Onboard Pumps**: Use 5V pumps drawing <200mA each
- **Higher Power Applications**: Require I2C relay boards (not direct connection)
- **Water Sensors**: Designed for Optomax liquid sensors with 4Vā3.3V conversion
- **Always Enable Water Level Checks**: Prevents pump damage from dry running
## š Need Help?
- **š Documentation**: Check our [comprehensive guides](docs/)
- **š Issues**: Report bugs on [GitHub Issues](https://github.com/opensensor/growmax/issues)
- **š¬ Community**: Join discussions on [opensensor.io](https://opensensor.io)
- **š§ Support**: Contact us through opensensor.io
## š¤ Contributing
We welcome contributions! Whether it's:
- š Bug reports and fixes
- š Documentation improvements
- ⨠New features and sensors
- š” Example projects and use cases
## š License
MIT License - see [LICENSE](LICENSE) file for details.
---
**Made with ā¤ļø by [OpenSensor.io](https://opensensor.io)**
*Automate your garden, monitor your plants, grow smarter! š±*