--- layout: page title: "RainMachine Switch" description: "Instructions on how to use RainMachine units with Home Assistant." date: 2017-08-14 13:30 sidebar: true comments: false sharing: true footer: true logo: rainmachine.png ha_category: Switch ha_iot_class: "Cloud Polling" ha_release: 0.51 --- The `rainmachine` switch platform allows you to control programs and zones within a [RainMachine smart Wi-Fi sprinkler controller](http://www.rainmachine.com/). ## {% linkable_title Configuring the Platform %} The platform allows for either local (i.e., directly across the LAN) or remote (i.e., through RainMachine's cloud API) access; the route you choose will dictate what your configuration should look like. For local access, specify the IP address/hostname of your RainMachine unit , your RainMachine password, and optionally, the device's HTTP port: ```yaml switch: platform: rainmachine ip_address: 192.168.1.100 password: my_password_123 ``` For remote access, specify your RainMachine username/email and password: ```yaml switch: platform: rainmachine email: user@host.com password: my_password_123 ``` Configuration Variables: - **ip_address** (*Optional*): the IP address of your RainMachine unit; cannot be used with the `email` parameter - **email** (*Optional*): your RainMachine username/email; cannot be used with the `ip_address` parameter - **password** (*Required*): your RainMachine password - **port** (*Optional*): the TCP port used by your unit for the REST API (default: 8080) - **ssl** (*Optional*): whether communication with the local device should occur over HTTPS (default: true) - **zone_run_time** (*Optional*): the number of seconds that a zone should run when turned on (default: 600) ## {% linkable_title Controlling Your Device %} After Home Assistant loads, you will see new switches 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. If a program is running its final zone, 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). ## {% linkable_title Weblink %} If you would like to see and control more detailed information, create an [iFrame](/components/panel_iframe/) that renders the RainMachine web app: ```yaml panel_iframe: rainmachine: title: RainMachine url: "https://my.rainmachine.com/s//ui/" icon: mdi:water-pump ``` You can find `` by logging into [https://my.rainmachine.com](https://my.rainmachine.com ) and taking note of the URL. ## {% linkable_title For Awareness %} The remote RainMachine API currently has two broken operations (i.e., they return error codes): starting a program and stopping a program. Please note that starting/stopping programs with the remote API is disabled until RainMachine can fix the issue.