mirror of
https://github.com/pimoroni/grow-python
synced 2025-10-25 15:19:23 +00:00
87 lines
2.9 KiB
Markdown
87 lines
2.9 KiB
Markdown
# Monitoring Your Plants
|
|
|
|
The example `monitor.py` monitors the moisture level of your soil and sounds an alarm when it drops below a defined threshold.
|
|
|
|
It's configured using `settings.yml`. Your settings for monitoring will look something like this:
|
|
|
|
```yaml
|
|
channel1:
|
|
warn_level: 0.2
|
|
channel2:
|
|
warn_level: 0.2
|
|
channel3:
|
|
warn_level: 0.2
|
|
general:
|
|
alarm_enable: True
|
|
alarm_interval: 1.0
|
|
```
|
|
|
|
`monitor.py` includes a main view showing the moisture status of each channel and the level beyond which the alarm will sound.
|
|
|
|
The controls from the main view are as follows:
|
|
|
|
* `A` - cycle through the main screen and each channel
|
|
* `B` - snooze the alarm
|
|
* `X` - configure global settings or the selected channel
|
|
|
|
The warning moisture level can be configured for each channel, along with the Wet and Dry points that store the frequency expected from the sensor when soil is fully wet/dry.
|
|
|
|
## Watering
|
|
|
|
If you've got pumps attached to Grow and want to automatically water your plants, you'll need some extra configuration options.
|
|
|
|
See [Channel Settings](#channel-settings) and [General Settings](#general-settings) for more information on what these do.
|
|
|
|
```yaml
|
|
channel1:
|
|
water_level: 0.8
|
|
warn_level: 0.2
|
|
pump_speed: 0.7
|
|
pump_time: 0.7
|
|
wet_point: 0.7
|
|
dry_point: 27.6
|
|
auto_water: True
|
|
watering_delay: 60
|
|
channel2:
|
|
water_level: 0.8
|
|
warn_level: 0.2
|
|
pump_speed: 0.7
|
|
pump_time: 0.7
|
|
wet_point: 0.7
|
|
dry_point: 27.6
|
|
auto_water: True
|
|
watering_delay: 60
|
|
channel3:
|
|
water_level: 0.8
|
|
warn_level: 0.2
|
|
pump_speed: 0.7
|
|
pump_time: 0.7
|
|
wet_point: 0.7
|
|
dry_point: 27.6
|
|
auto_water: True
|
|
watering_delay: 60
|
|
general:
|
|
alarm_enable: True
|
|
alarm_interval: 1.0
|
|
```
|
|
|
|
## Channel Settings
|
|
|
|
Grow has three channels which are separated into the sections `channel1`, `channel2` and `channel3`, each of these sections has the following configuration options:
|
|
|
|
* `water_level` - The level at which auto-watering should be triggered (soil saturation from 0.0 to 1.0)
|
|
* `warn_level` - The level at which the alarm should be triggered (soil saturation from 0.0 to 1.0)
|
|
* `pump_speed` - The speed at which the pump should be run (from 0.0 low speed to 1.0 full speed)
|
|
* `pump_time` - The time that the pump should run for (in seconds)
|
|
* `auto_water` - Whether to run the attached pump (True to auto-water, False for manual watering)
|
|
* `wet_point` - Value for the sensor in saturated soil (in Hz)
|
|
* `dry_point` - Value for the sensor in totally dry soil (in Hz)
|
|
* `watering_delay` - Delay between waterings (in seconds)
|
|
|
|
## General Settings
|
|
|
|
An additional `general` section can be used for global settings:
|
|
|
|
* `alarm_enable` - Whether to enable the alarm
|
|
* `alarm_interval` - The interval at which the alarm should beep (in seconds)
|