{% set devicename = "esphome_plug08" %} {% include "/includes/ansible.inc.yaml" %} {% include "/includes/board.esp01_1m.inc.yaml" %} comment: WLED Vorhang {% include "/includes/common.inc.yaml" %} on_message: - topic: ESPHome/{{ devicename }}/state/command payload: "ON" then: - switch.turn_on: relay - topic: ESPHome/{{ devicename }}/state/command payload: "OFF" then: - switch.turn_off: relay - topic: warpzone/door/status_once payload: "OPEN" then: - switch.turn_on: relay substitutions: plug_name: {{ devicename }} # Higher value gives lower watt readout current_res: "0.00221" # Lower value gives lower voltage readout voltage_div: "920" binary_sensor: # Binary sensor for the button press - platform: gpio name: "${plug_name}_button" pin: number: GPIO3 inverted: true on_press: - switch.toggle: relay switch: - platform: gpio id: relay name: "${plug_name}_Relay" restore_mode: ALWAYS_OFF pin: GPIO14 on_turn_on: - light.turn_on: led on_turn_off: - light.turn_off: led sensor: - platform: hlw8012 sel_pin: number: GPIO12 inverted: True cf_pin: GPIO04 cf1_pin: GPIO05 current_resistor: ${current_res} voltage_divider: ${voltage_div} current: name: "${plug_name}_Amperage" unit_of_measurement: A voltage: name: "${plug_name}_Voltage" unit_of_measurement: V power: name: "${plug_name}_Wattage" unit_of_measurement: W id: "${plug_name}_Wattage" change_mode_every: 8 update_interval: 10s - platform: total_daily_energy name: ${plug_name}_Energy power_id: "${plug_name}_Wattage" # Enable time for energy monitoring time: - platform: sntp output: # Relay state led - platform: esp8266_pwm id: state_led pin: number: GPIO1 inverted: true light: # Relay state light - platform: monochromatic output: state_led id: led # Uses the red LED as a status indicator status_led: pin: number: GPIO13 inverted: true