Files
grow-python/examples/README.md
2021-03-08 18:12:03 +00:00

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)