mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-05-30 14:56:50 +00:00
164 lines
5.0 KiB
Markdown
164 lines
5.0 KiB
Markdown
---
|
|
title: RainMachine
|
|
description: Instructions on how to integrate RainMachine units within Home Assistant.
|
|
ha_category:
|
|
- Irrigation
|
|
- Binary Sensor
|
|
- Sensor
|
|
- Switch
|
|
ha_release: 0.69
|
|
ha_iot_class: Local Polling
|
|
ha_config_flow: true
|
|
ha_codeowners:
|
|
- '@bachya'
|
|
ha_domain: rainmachine
|
|
---
|
|
|
|
The `rainmachine` integration is the main integration to integrate all platforms related to [RainMachine smart Wi-Fi sprinkler controllers](https://www.rainmachine.com/).
|
|
|
|
There is currently support for the following device types within Home Assistant:
|
|
|
|
- Binary Sensor
|
|
- Sensor
|
|
- [Switch](#switch)
|
|
|
|
## Base Configuration
|
|
|
|
To connect to your RainMachine device, add the following to your `configuration.yaml` file:
|
|
|
|
```yaml
|
|
rainmachine:
|
|
controllers:
|
|
- ip_address: 192.168.1.100
|
|
password: YOUR_PASSWORD
|
|
```
|
|
|
|
{% configuration %}
|
|
ip_address:
|
|
description: The IP address or hostname of your RainMachine unit.
|
|
required: false
|
|
type: string
|
|
password:
|
|
description: Your RainMachine password.
|
|
required: true
|
|
type: string
|
|
port:
|
|
description: The TCP port used by your unit for the REST API.
|
|
required: false
|
|
type: integer
|
|
default: 8080
|
|
ssl:
|
|
description: Whether communication with the local device should occur over HTTPS.
|
|
required: false
|
|
type: boolean
|
|
default: true
|
|
scan_interval:
|
|
description: The frequency (in seconds) between data updates.
|
|
required: false
|
|
type: integer
|
|
default: 60
|
|
zone_run_time:
|
|
description: The default number of seconds that a zone should run when turned on.
|
|
required: false
|
|
type: integer
|
|
default: 600
|
|
{% endconfiguration %}
|
|
|
|
## Services
|
|
|
|
### `rainmachine.disable_program`
|
|
|
|
Disable a RainMachine program. This will mark the program switch as
|
|
`Unavailable` in the UI.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|-------------------------|
|
|
| `program_id` | no | The program to disable |
|
|
|
|
### `rainmachine.disable_zone`
|
|
|
|
Disable a RainMachine zone. This will mark the zone switch as
|
|
`Unavailable` in the UI.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|-------------------------|
|
|
| `zone_id` | no | The zone to disable |
|
|
|
|
### `rainmachine.enable_program`
|
|
|
|
Enable a RainMachine program.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|-------------------------|
|
|
| `program_id` | no | The program to enable |
|
|
|
|
### `rainmachine.enable_zone`
|
|
|
|
Enable a RainMachine zone.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|-------------------------|
|
|
| `zone_id` | no | The zone to enable |
|
|
|
|
### `rainmachine.pause_watering`
|
|
|
|
Pause all watering activities for a number of seconds.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|--------------------------------|
|
|
| `seconds` | no | The number of seconds to pause |
|
|
|
|
### `rainmachine.start_program`
|
|
|
|
Start a RainMachine program.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|----------------------|
|
|
| `program_id` | no | The program to start |
|
|
|
|
### `rainmachine.start_zone`
|
|
|
|
Start a RainMachine zone for a set number of seconds.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|------------------------------------------------------|
|
|
| `zone_id` | no | The zone to start |
|
|
| `zone_run_time` | yes | The number of seconds to run; defaults to 60 seconds |
|
|
|
|
### `rainmachine.stop_all`
|
|
|
|
Stop all watering activities.
|
|
|
|
### `rainmachine.stop_program`
|
|
|
|
Stop a RainMachine program.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|----------------------|
|
|
| `program_id` | no | The program to stop |
|
|
|
|
### `rainmachine.stop_zone`
|
|
|
|
Stop a RainMachine zone.
|
|
|
|
| Service Data Attribute | Optional | Description |
|
|
|---------------------------|----------|----------------------|
|
|
| `zone_id` | no | The zone to stop |
|
|
|
|
### `rainmachine.unpause_watering`
|
|
|
|
Unpause all watering activities.
|
|
|
|
## Switch
|
|
|
|
The `rainmachine` switch platform allows you to control programs and zones within a [RainMachine smart Wi-Fi sprinkler controller](https://www.rainmachine.com/).
|
|
|
|
### Controlling Your Device
|
|
|
|
After Home Assistant loads, new switches will be added for every enabled program and zone. These work as expected:
|
|
|
|
- Program On/Off: starts/stops a program
|
|
- Zone On/Off: starts/stops a zone (using the `zone_run_time` parameter to determine how long to run for)
|
|
|
|
Programs and zones are linked. While a program is running, you will see both the program and zone switches turned on; turning either one off will turn the other one off (just like in the web app).
|