substitutions: device_id: basement-bath-shower-light-heat device_name: Basement Bathroom Shower Light and Heater board: esp01_1m api_key: !secret basement_bathroom_shower_light_heat_key pwd: !secret basement_bathroom_shower_light_heat_pwd packages: device_base: !include ./packages/device_base_esp8266.yaml binary_sensor: - platform: gpio id: light_button pin: number: 12 mode: INPUT_PULLUP on_press: then: - light.toggle: shower_light - platform: gpio id: heater_button pin: number: 3 mode: INPUT_PULLUP on_press: then: - switch.toggle: heater light: - platform: binary id: shower_light name: Basement Shower Light output: light_output on_turn_on: - component.update: shower_light_power on_turn_off: - component.update: shower_light_power output: - platform: gpio id: light_output pin: 13 status_led: pin: number: 0 inverted: true switch: - platform: gpio id: heater name: Basement Bathroom Heater icon: mdi:radiator pin: 4 on_turn_on: - component.update: heater_power on_turn_off: - component.update: heater_power sensor: - platform: template id: shower_light_power name: Basement Shower Light Power unit_of_measurement: "W" device_class: power state_class: measurement accuracy_decimals: 1 update_interval: never lambda: |- return id(shower_light).current_values.is_on() ? 11.5 : 0.0; filters: - heartbeat: period: 10s optimistic: true - platform: template id: heater_power name: Basement Bathroom Heater Power unit_of_measurement: "W" device_class: power state_class: measurement accuracy_decimals: 1 update_interval: never lambda: |- return id(heater).state ? 500.0 : 0.0; filters: - heartbeat: period: 10s optimistic: true - platform: total_daily_energy name: Basement Shower Light power_id: shower_light_power method: left - platform: total_daily_energy name: Basement Bathroom Heater power_id: heater_power method: left