--- layout: page title: "Water Heater" description: "Instructions on how to setup water heater devices within Home Assistant." date: 2018-10-10 19:00 sidebar: true comments: false sharing: true footer: true --- The `water_heater` component is built for the controlling and monitoring of hot water heaters. To enable this component, pick one of the platforms, and add it to your `configuration.yaml`: ```yaml # Example configuration.yaml entry water_heater: platform: demo ``` ## {% linkable_title Services %} ### {% linkable_title Water heater control services %} Available services: `water_heater.set_temperature`, `water_heater.turn_away_mode_on`, `water_heater.turn_away_mode_off`, `water_heater.set_operation_mode`

Not all water heater services may be available for your platform. Be sure to check the available services Home Assistant has enabled by checking service developer tool icon **Services**.

### {% linkable_title Service `water_heater.set_temperature` %} Set target temperature of water heater device | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | | `entity_id` | yes | String or list of strings that point at `entity_id`'s of water heater devices to control. Else targets all. | `temperature` | no | New target temperature for water heater | `operation_mode` | yes | Operation mode to set temperature to. This defaults to current_operation mode if not set, or set incorrectly. #### {% linkable_title Automation example %} ```yaml automation: trigger: platform: time at: "07:15:00" action: - service: water_heater.set_temperature data: entity_id: water_heater.demo temperature: 24 operation_mode: eco ``` ### {% linkable_title Service `water_heater.set_operation_mode` %} Set operation mode for water heater device | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | | `entity_id` | yes | String or list of strings that point at `entity_id`'s of water heater devices to control. Else targets all. | `operation_mode` | no | New value of operation mode #### {% linkable_title Automation example %} ```yaml automation: trigger: platform: time at: "07:15:00" action: - service: water_heater.set_operation_mode data: entity_id: water_heater.demo operation_mode: eco ``` ### {% linkable_title Service `water_heater.turn_away_mode_on` %} Turn away mode on for water heater device | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | | `entity_id` | yes | String or list of strings that point at `entity_id`'s of water heater devices to control. Else targets all. #### {% linkable_title Automation example %} ```yaml automation: trigger: platform: time at: "07:15:00" action: - service: water_heater.turn_away_mode_on data: entity_id: water_heater.demo ``` ### {% linkable_title Service `water_heater.turn_away_mode_off` %} Trun away mode off for water heater device | Service data attribute | Optional | Description | | ---------------------- | -------- | ----------- | | `entity_id` | yes | String or list of strings that point at `entity_id`'s of water heater devices to control. Else targets all. #### {% linkable_title Automation example %} ```yaml automation: trigger: platform: time at: "07:15:00" action: - service: water_heater.turn_away_mode_off data: entity_id: water_heater.demo ```