esphome/tests/test3.yaml

1430 lines
33 KiB
YAML

---
esphome:
name: $device_name
comment: $device_comment
build_path: build/test3
on_boot:
- if:
condition:
- api.connected
- wifi.connected
- time.has_time
then:
- logger.log: Have time
esp8266:
board: d1_mini
early_pin_init: true
substitutions:
device_name: test3
device_comment: test3 device
api:
port: 8000
password: pwd
reboot_timeout: 0min
encryption:
key: bOFFzzvfpg5DB94DuBGLXD/hMnhpDKgP9UQyBulwWVU=
services:
- service: hello_world
variables:
name: string
then:
- logger.log:
format: Hello World %s!
args:
- name.c_str()
- service: empty_service
then:
- logger.log: Service Called
- service: all_types
variables:
bool_: bool
int_: int
float_: float
string_: string
then:
- logger.log: Something happened
- service: array_types
variables:
bool_arr: bool[]
int_arr: int[]
float_arr: float[]
string_arr: string[]
then:
- logger.log:
# yamllint disable rule:line-length
format: "Bool: %s (%u), Int: %d (%u), Float: %f (%u), String: %s (%u)"
# yamllint enable rule:line-length
args:
- YESNO(bool_arr[0])
- bool_arr.size()
- int_arr[0]
- int_arr.size()
- float_arr[0]
- float_arr.size()
- string_arr[0].c_str()
- string_arr.size()
- service: dfplayer_next
then:
- dfplayer.play_next:
- service: dfplayer_previous
then:
- dfplayer.play_previous:
- service: dfplayer_play
variables:
file: int
then:
- dfplayer.play: !lambda "return file;"
- service: dfplayer_play_loop
variables:
file: int
loop_: bool
then:
- dfplayer.play:
file: !lambda "return file;"
loop: !lambda "return loop_;"
- service: dfplayer_play_folder
variables:
folder: int
file: int
then:
- dfplayer.play_folder:
folder: !lambda "return folder;"
file: !lambda "return file;"
- service: dfplayer_play_loo_folder
variables:
folder: int
then:
- dfplayer.play_folder:
folder: !lambda "return folder;"
loop: true
- service: dfplayer_set_device
variables:
device: int
then:
- dfplayer.set_device:
device: TF_CARD
- service: dfplayer_set_volume
variables:
volume: int
then:
- dfplayer.set_volume: !lambda "return volume;"
- service: dfplayer_set_eq
variables:
preset: int
then:
# yamllint disable rule:line-length
- dfplayer.set_eq: !lambda "return static_cast<dfplayer::EqPreset>(preset);"
# yamllint enable rule:line-length
- service: dfplayer_sleep
then:
- dfplayer.sleep
- service: dfplayer_reset
then:
- dfplayer.reset
- service: dfplayer_start
then:
- dfplayer.start
- service: dfplayer_pause
then:
- dfplayer.pause
- service: dfplayer_stop
then:
- dfplayer.stop
- service: dfplayer_random
then:
- dfplayer.random
- service: dfplayer_volume_up
then:
- dfplayer.volume_up
- service: dfplayer_volume_down
then:
- dfplayer.volume_down
- service: battery_level_percent
variables:
level_percent: int
then:
- tm1651.set_level_percent:
id: tm1651_battery
level_percent: !lambda "return level_percent;"
- service: battery_level
variables:
level: int
then:
- tm1651.set_level:
id: tm1651_battery
level: !lambda "return level;"
- service: battery_brightness
variables:
brightness: int
then:
- tm1651.set_brightness:
id: tm1651_battery
brightness: !lambda "return brightness;"
- service: battery_turn_on
then:
- tm1651.turn_on:
id: tm1651_battery
- service: battery_turn_on
then:
- tm1651.turn_off:
id: tm1651_battery
- service: pid_set_control_parameters
then:
- climate.pid.set_control_parameters:
id: pid_climate
kp: 1.0
kd: 1.0
ki: 1.0
- service: fingerprint_grow_enroll
variables:
finger_id: int
num_scans: int
then:
- fingerprint_grow.enroll:
finger_id: !lambda "return finger_id;"
num_scans: !lambda "return num_scans;"
- service: fingerprint_grow_cancel_enroll
then:
- fingerprint_grow.cancel_enroll:
- service: fingerprint_grow_delete
variables:
finger_id: int
then:
- fingerprint_grow.delete:
finger_id: !lambda "return finger_id;"
- service: fingerprint_grow_delete_all
then:
- fingerprint_grow.delete_all:
wifi:
ssid: "MySSID"
password: "password1"
network:
enable_ipv6: true
uart:
- id: uart_1
tx_pin:
number: GPIO1
inverted: true
allow_other_uses: true
rx_pin:
allow_other_uses: true
number: GPIO3
baud_rate: 115200
- id: uart_2
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 9600
- id: uart_3
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 4800
- id: uart_4
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 9600
- id: uart_5
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 9600
- id: uart_6
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 9600
- id: uart_7
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 38400
- id: uart_8
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 4800
parity: NONE
stop_bits: 2
# Specifically added for testing debug with no options at all.
debug:
- id: uart_9
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 9600
- id: uart_10
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 9600
- id: uart_11
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 9600
- id: uart_12
tx_pin:
allow_other_uses: true
number: GPIO4
rx_pin:
allow_other_uses: true
number: GPIO5
baud_rate: 9600
modbus:
uart_id: uart_1
vbus:
uart_id: uart_4
ota:
safe_mode: true
port: 3286
reboot_timeout: 15min
logger:
hardware_uart: UART1
level: DEBUG
esp8266_store_log_strings_in_flash: true
debug:
improv_serial:
next_url: https://esphome.io/?name={{device_name}}&version={{esphome_version}}&ip={{ip_address}}
deep_sleep:
run_duration: 20s
sleep_duration: 50s
wled:
adalight:
sensor:
- platform: daly_bms
voltage:
name: Battery Voltage
current:
name: Battery Current
battery_level:
name: Battery Level
max_cell_voltage:
name: Max Cell Voltage
max_cell_voltage_number:
name: Max Cell Voltage Number
min_cell_voltage:
name: Min Cell Voltage
min_cell_voltage_number:
name: Min Cell Voltage Number
max_temperature:
name: Max Temperature
max_temperature_probe_number:
name: Max Temperature Probe Number
min_temperature:
name: Min Temperature
min_temperature_probe_number:
name: Min Temperature Probe Number
remaining_capacity:
name: Remaining Capacity
cells_number:
name: Cells Number
temperature_1:
name: Temperature 1
temperature_2:
name: Temperature 2
- platform: homeassistant
entity_id: sensor.hello_world
id: ha_hello_world
- platform: hydreon_rgxx
model: RG 9
uart_id: uart_6
id: hydreon_rg9
moisture:
name: hydreon_rain
id: hydreon_rain
temperature:
name: hydreon_temperature
disable_led: true
- platform: hydreon_rgxx
model: RG_15
uart_id: uart_6
acc:
name: hydreon_acc
event_acc:
name: hydreon_event_acc
total_acc:
name: hydreon_total_acc
r_int:
name: hydreon_r_int
resolution: low
- platform: adc
pin: VCC
id: my_sensor
- platform: binary_sensor_map
name: Binary Sensor Map
type: group
channels:
- binary_sensor: bin1
value: 10.0
- binary_sensor: bin2
value: 15.0
- binary_sensor: bin3
value: 100.0
- platform: binary_sensor_map
name: Binary Sensor Map
type: sum
channels:
- binary_sensor: bin1
value: 10.0
- binary_sensor: bin2
value: 15.0
- binary_sensor: bin3
value: 100.0
- platform: binary_sensor_map
name: Binary Sensor Map
type: bayesian
prior: 0.4
observations:
- binary_sensor: bin1
prob_given_true: 0.9
prob_given_false: 0.4
- binary_sensor: bin2
prob_given_true: 0.7
prob_given_false: 0.05
- binary_sensor: bin3
prob_given_true: 0.8
prob_given_false: 0.2
- platform: bl0939
uart_id: uart_8
voltage:
name: BL0939 Voltage
current_1:
name: BL0939 Current 1
current_2:
name: BL0939 Current 2
active_power_1:
name: BL0939 Active Power 1
active_power_2:
name: BL0939 Active Power 2
energy_1:
name: BL0939 Energy 1
energy_2:
name: BL0939 Energy 2
energy_total:
name: BL0939 Total energy
- platform: bl0940
uart_id: uart_3
voltage:
name: BL0940 Voltage
current:
name: BL0940 Current
power:
name: BL0940 Power
energy:
name: BL0940 Energy
internal_temperature:
name: BL0940 Internal temperature
external_temperature:
name: BL0940 External temperature
- platform: bl0942
uart_id: uart_3
voltage:
name: BL0942 Voltage
current:
name: BL0942 Current
power:
name: BL0942 Power
energy:
name: BL0942 Energy
frequency:
name: BL0942 Frequency
- platform: pzem004t
uart_id: uart_3
voltage:
name: PZEM004T Voltage
current:
name: PZEM004T Current
power:
name: PZEM004T Power
- platform: pzemac
id: pzemac1
voltage:
name: PZEMAC Voltage
current:
name: PZEMAC Current
power:
name: PZEMAC Power
energy:
name: PZEMAC Energy
frequency:
name: PZEMAC Frequency
power_factor:
name: PZEMAC Power Factor
- platform: pzemdc
id: pzemdc1
voltage:
name: PZEMDC Voltage
current:
name: PZEMDC Current
power:
name: PZEMDC Power
energy:
name: PZEMDC Energy
- platform: pmsx003
uart_id: uart_9
type: PMSX003
pm_1_0:
name: PM 1.0 Concentration
pm_2_5:
name: PM 2.5 Concentration
pm_10_0:
name: PM 10.0 Concentration
pm_1_0_std:
name: PM 1.0 Standard Atmospher Concentration
pm_2_5_std:
name: PM 2.5 Standard Atmospher Concentration
pm_10_0_std:
name: PM 10.0 Standard Atmospher Concentration
pm_0_3um:
name: Particulate Count >0.3um
pm_0_5um:
name: Particulate Count >0.5um
pm_1_0um:
name: Particulate Count >1.0um
pm_2_5um:
name: Particulate Count >2.5um
pm_5_0um:
name: Particulate Count >5.0um
pm_10_0um:
name: Particulate Count >10.0um
update_interval: 30s
- platform: pmsx003
uart_id: uart_5
type: PMS5003T
pm_1_0:
name: PM 1.0 Concentration
pm_2_5:
name: PM 2.5 Concentration
pm_10_0:
name: PM 10.0 Concentration
pm_1_0_std:
name: PM 1.0 Standard Atmospher Concentration
pm_2_5_std:
name: PM 2.5 Standard Atmospher Concentration
pm_10_0_std:
name: PM 10.0 Standard Atmospher Concentration
pm_0_3um:
name: Particulate Count >0.3um
pm_0_5um:
name: Particulate Count >0.5um
pm_1_0um:
name: Particulate Count >1.0um
pm_2_5um:
name: Particulate Count >2.5um
temperature:
name: PMS Temperature
humidity:
name: PMS Humidity
- platform: pmsx003
uart_id: uart_6
type: PMS5003ST
pm_1_0:
name: PM 1.0 Concentration
pm_2_5:
name: PM 2.5 Concentration
pm_10_0:
name: PM 10.0 Concentration
pm_1_0_std:
name: PM 1.0 Standard Atmospher Concentration
pm_2_5_std:
name: PM 2.5 Standard Atmospher Concentration
pm_10_0_std:
name: PM 10.0 Standard Atmospher Concentration
pm_0_3um:
name: Particulate Count >0.3um
pm_0_5um:
name: Particulate Count >0.5um
pm_1_0um:
name: Particulate Count >1.0um
pm_2_5um:
name: Particulate Count >2.5um
pm_5_0um:
name: Particulate Count >5.0um
pm_10_0um:
name: Particulate Count >10.0um
temperature:
name: PMS Temperature
humidity:
name: PMS Humidity
formaldehyde:
name: PMS Formaldehyde Concentration
- platform: cse7761
uart_id: uart_7
voltage:
name: CSE7761 Voltage
current_1:
name: CSE7761 Current 1
current_2:
name: CSE7761 Current 2
active_power_1:
name: CSE7761 Active Power 1
active_power_2:
name: CSE7761 Active Power 2
- platform: cse7766
uart_id: uart_3
voltage:
name: CSE7766 Voltage
current:
name: CSE7766 Current
power:
name: CSE7766 Power
apparent_power:
name: CSE7766 Apparent Power
power_factor:
name: CSE7766 Power Factor
- platform: fingerprint_grow
fingerprint_count:
name: Fingerprint Count
status:
name: Fingerprint Status
capacity:
name: Fingerprint Capacity
security_level:
name: Fingerprint Security Level
last_finger_id:
name: Fingerprint Last Finger ID
last_confidence:
name: Fingerprint Last Confidence
- platform: sdm_meter
phase_a:
current:
name: Phase A Current
voltage:
name: Phase A Voltage
active_power:
name: Phase A Power
power_factor:
name: Phase A Power Factor
apparent_power:
name: Phase A Apparent Power
reactive_power:
name: Phase A Reactive Power
phase_angle:
name: Phase A Phase Angle
phase_b:
current:
name: Phase B Current
voltage:
name: Phase B Voltage
active_power:
name: Phase B Power
power_factor:
name: Phase B Power Factor
apparent_power:
name: Phase B Apparent Power
reactive_power:
name: Phase B Reactive Power
phase_angle:
name: Phase B Phase Angle
phase_c:
current:
name: Phase C Current
voltage:
name: Phase C Voltage
active_power:
name: Phase C Power
power_factor:
name: Phase C Power Factor
apparent_power:
name: Phase C Apparent Power
reactive_power:
name: Phase C Reactive Power
phase_angle:
name: Phase C Phase Angle
frequency:
name: Frequency
import_active_energy:
name: Import Active Energy
export_active_energy:
name: Export Active Energy
import_reactive_energy:
name: Import Reactive Energy
export_reactive_energy:
name: Export Reactive Energy
- platform: dsmr
energy_delivered_tariff1:
name: dsmr_energy_delivered_tariff1
- platform: nextion
id: testnumber
name: testnumber
variable_name: testnumber
- platform: nextion
id: testwave
name: testwave
component_id: 2
wave_channel_id: 1
- platform: smt100
uart_id: uart_10
counts:
name: Counts
dielectric_constant:
name: Dielectric Constant
temperature:
name: Temperature
moisture:
name: Moisture
voltage:
name: Voltage
update_interval: 60s
- platform: vbus
model: deltasol c
temperature_1:
name: Temperature 1
- platform: kuntze
ph:
name: Kuntze pH
temperature:
name: Kuntze temperature
- platform: haier
haier_id: haier_climate
compressor_current:
name: Haier AC compressor current
compressor_frequency:
name: Haier AC compressor frequency
expansion_valve_open_degree:
name: Haier AC expansion valve open degree
humidity:
name: Haier AC indoor humidity
indoor_coil_temperature:
name: Haier AC indoor coil temperature
outdoor_coil_temperature:
name: Haier AC outdoor coil temperature
outdoor_defrost_temperature:
name: Haier AC outdoor defrost temperature
outdoor_in_air_temperature:
name: Haier AC outdoor in air temperature
outdoor_out_air_temperature:
name: Haier AC outdoor out air temperature
outdoor_temperature:
name: Haier AC outdoor temperature
power:
name: Haier AC power
time:
- platform: homeassistant
binary_sensor:
- platform: daly_bms
charging_mos_enabled:
name: Charging MOS
discharging_mos_enabled:
name: Discharging MOS
- platform: homeassistant
entity_id: binary_sensor.hello_world
id: ha_hello_world_binary
- platform: fingerprint_grow
name: Fingerprint Enrolling
- platform: nextion
page_id: 0
component_id: 2
name: Nextion Component 2 Touch
- platform: nextion
id: r0_sensor
name: R0 Sensor
component_name: page0.r0
- platform: hydreon_rgxx
hydreon_rgxx_id: hydreon_rg9
too_cold:
name: rg9_toocold
em_sat:
name: rg9_emsat
lens_bad:
name: rg9_lens_bad
- platform: template
id: pzemac_reset_energy
on_press:
then:
- pzemac.reset_energy: pzemac1
- platform: template
id: pzemdc_reset_energy
on_press:
then:
- pzemdc.reset_energy: pzemdc1
- platform: vbus
model: deltasol_bs_plus
relay1:
name: Relay 1 On
- platform: gpio
id: bin1
pin:
allow_other_uses: true
number: 1
- platform: gpio
id: bin2
pin:
allow_other_uses: true
number: 2
- platform: gpio
id: bin3
pin:
allow_other_uses: true
number: 3
- platform: haier
haier_id: haier_climate
compressor_status:
name: Haier AC compressor status
defrost_status:
name: Haier AC defrost status
four_way_valve_status:
name: Haier AC four-way valve status
indoor_electric_heating_status:
name: Haier AC indoor electric heating status
indoor_fan_status:
name: Haier AC indoor fan status
outdoor_fan_status:
name: Haier AC outdoor fan status
globals:
- id: my_global_string
type: std::string
initial_value: '""'
remote_receiver:
pin:
allow_other_uses: true
number: GPIO12
dump: []
status_led:
pin:
allow_other_uses: true
number: GPIO2
text_sensor:
- platform: daly_bms
status:
name: BMS Status
- platform: version
name: ESPHome Version
icon: mdi:icon
id: version_sensor
on_value:
# yamllint disable rule:line-length
- lambda: !lambda |-
ESP_LOGD("main", "The state is %s=%s", x.c_str(), id(version_sensor).state.c_str());
# yamllint enable rule:line-length
- script.execute: my_script
- script.wait: my_script
- script.stop: my_script
- homeassistant.service:
service: notify.html5
data:
title: New Humidity
data_template:
message: The humidity is {{ my_variable }}%.
variables:
my_variable: |-
return id(version_sensor).state;
- platform: template
name: Template Text Sensor
lambda: |-
return {"Hello World"};
- platform: homeassistant
entity_id: sensor.hello_world2
id: ha_hello_world2
- platform: nextion
name: text0
id: text0
update_interval: 4s
component_name: text0
- platform: dsmr
identification:
name: dsmr_identification
p1_version:
name: dsmr_p1_version
script:
- id: my_script
then:
- lambda: 'ESP_LOGD("main", "Hello World!");'
switch:
- platform: gpio
id: gpio_switch1
pin:
allow_other_uses: true
number: 1
- platform: gpio
id: gpio_switch2
pin:
allow_other_uses: true
number: 2
- platform: gpio
id: gpio_switch3
pin:
allow_other_uses: true
number: 3
- platform: nextion
id: r0
name: R0 Switch
component_name: page0.r0
climate:
- platform: bang_bang
name: Bang Bang Climate
sensor: ha_hello_world
humidity_sensor: ha_hello_world
default_target_temperature_low: 18°C
default_target_temperature_high: 24°C
idle_action:
- switch.turn_on: gpio_switch1
cool_action:
- switch.turn_on: gpio_switch2
heat_action:
- switch.turn_on: gpio_switch1
away_config:
default_target_temperature_low: 16°C
default_target_temperature_high: 20°C
- platform: thermostat
name: Thermostat Climate
sensor: ha_hello_world
humidity_sensor: ha_hello_world
preset:
- name: Default Preset
default_target_temperature_low: 18°C
default_target_temperature_high: 24°C
- name: Away
default_target_temperature_low: 16°C
default_target_temperature_high: 20°C
idle_action:
- switch.turn_on: gpio_switch1
cool_action:
- switch.turn_on: gpio_switch2
supplemental_cooling_action:
- switch.turn_on: gpio_switch3
heat_action:
- switch.turn_on: gpio_switch1
supplemental_heating_action:
- switch.turn_on: gpio_switch3
dry_action:
- switch.turn_on: gpio_switch2
fan_only_action:
- switch.turn_on: gpio_switch1
auto_mode:
- switch.turn_on: gpio_switch2
off_mode:
- switch.turn_on: gpio_switch1
heat_mode:
- switch.turn_on: gpio_switch2
cool_mode:
- switch.turn_on: gpio_switch1
dry_mode:
- switch.turn_on: gpio_switch2
fan_only_mode:
- switch.turn_on: gpio_switch1
fan_mode_auto_action:
- switch.turn_on: gpio_switch2
fan_mode_on_action:
- switch.turn_on: gpio_switch1
fan_mode_off_action:
- switch.turn_on: gpio_switch2
fan_mode_low_action:
- switch.turn_on: gpio_switch1
fan_mode_medium_action:
- switch.turn_on: gpio_switch2
fan_mode_high_action:
- switch.turn_on: gpio_switch1
fan_mode_middle_action:
- switch.turn_on: gpio_switch2
fan_mode_focus_action:
- switch.turn_on: gpio_switch1
fan_mode_diffuse_action:
- switch.turn_on: gpio_switch2
fan_mode_quiet_action:
- switch.turn_on: gpio_switch1
swing_off_action:
- switch.turn_on: gpio_switch2
swing_horizontal_action:
- switch.turn_on: gpio_switch1
swing_vertical_action:
- switch.turn_on: gpio_switch2
swing_both_action:
- switch.turn_on: gpio_switch1
startup_delay: true
supplemental_cooling_delta: 2.0
cool_deadband: 0.5
cool_overrun: 0.5
min_cooling_off_time: 300s
min_cooling_run_time: 300s
max_cooling_run_time: 600s
supplemental_heating_delta: 2.0
heat_deadband: 0.5
heat_overrun: 0.5
min_heating_off_time: 300s
min_heating_run_time: 300s
max_heating_run_time: 600s
min_fanning_off_time: 30s
min_fanning_run_time: 30s
min_fan_mode_switching_time: 15s
min_idle_time: 30s
set_point_minimum_differential: 0.5
fan_only_action_uses_fan_mode_timer: true
fan_only_cooling: true
fan_with_cooling: true
fan_with_heating: true
- platform: pid
id: pid_climate
name: PID Climate Controller
sensor: ha_hello_world
humidity_sensor: ha_hello_world
default_target_temperature: 21°C
heat_output: my_slow_pwm
control_parameters:
kp: 0.0
ki: 0.0
kd: 0.0
max_integral: 0.0
output_averaging_samples: 1
derivative_averaging_samples: 1
deadband_parameters:
threshold_high: 0.4
threshold_low: -2.0
kp_multiplier: 0.0
ki_multiplier: 0.0
kd_multiplier: 0.0
deadband_output_averaging_samples: 1
- platform: haier
id: haier_climate
protocol: hOn
name: Haier AC
uart_id: uart_12
wifi_signal: true
answer_timeout: 200ms
beeper: true
visual:
min_temperature: 16 °C
max_temperature: 30 °C
temperature_step:
target_temperature: 1
current_temperature: 0.5
supported_modes:
- "OFF"
- HEAT_COOL
- COOL
- HEAT
- DRY
- FAN_ONLY
supported_swing_modes:
- "OFF"
- VERTICAL
- HORIZONTAL
- BOTH
supported_presets:
- AWAY
- BOOST
- ECO
- SLEEP
on_alarm_start:
then:
- logger.log:
level: DEBUG
format: 'Alarm activated. Code: %d. Message: "%s"'
args: [code, message]
on_alarm_end:
then:
- logger.log:
level: DEBUG
format: 'Alarm deactivated. Code: %d. Message: "%s"'
args: [code, message]
sprinkler:
- id: yard_sprinkler_ctrlr
main_switch: Yard Sprinklers
auto_advance_switch: Yard Sprinklers Auto Advance
reverse_switch: Yard Sprinklers Reverse
pump_start_pump_delay: 2s
pump_stop_valve_delay: 4s
pump_switch_off_during_valve_open_delay: true
valve_open_delay: 5s
valves:
- valve_switch: Yard Valve 0
enable_switch: Enable Yard Valve 0
pump_switch_id: gpio_switch1
run_duration: 10s
valve_switch_id: gpio_switch2
- valve_switch: Yard Valve 1
enable_switch: Enable Yard Valve 1
pump_switch_id: gpio_switch1
run_duration: 10s
valve_switch_id: gpio_switch2
- valve_switch: Yard Valve 2
enable_switch: Enable Yard Valve 2
pump_switch_id: gpio_switch1
run_duration: 10s
valve_switch_id: gpio_switch2
- id: garden_sprinkler_ctrlr
main_switch: Garden Sprinklers
auto_advance_switch: Garden Sprinklers Auto Advance
reverse_switch: Garden Sprinklers Reverse
valve_overlap: 5s
valves:
- valve_switch: Garden Valve 0
enable_switch: Enable Garden Valve 0
pump_switch_id: gpio_switch1
run_duration: 10s
valve_switch_id: gpio_switch2
- valve_switch: Garden Valve 1
enable_switch: Enable Garden Valve 1
pump_switch_id: gpio_switch1
run_duration: 10s
valve_switch_id: gpio_switch2
output:
- platform: esp8266_pwm
id: out
pin:
number: D3
frequency: 50Hz
- platform: esp8266_pwm
id: out2
pin:
allow_other_uses: true
number: D4
- platform: slow_pwm
pin:
allow_other_uses: true
number: GPIO5
id: my_slow_pwm
period: 15s
restart_cycle_on_state_change: false
e131:
light:
- platform: neopixelbus
name: Neopixelbus Light
pin:
allow_other_uses: true
number: GPIO1
type: GRBW
variant: SK6812
method: ESP8266_UART0
num_leds: 100
effects:
- wled:
- adalight:
uart_id: uart_3
- e131:
universe: 1
- platform: hbridge
name: Icicle Lights
pin_a: out
pin_b: out2
- platform: sonoff_d1
uart_id: uart_2
use_rm433_remote: false
name: Sonoff D1 Dimmer
id: d1_light
restore_mode: RESTORE_DEFAULT_OFF
- platform: shelly_dimmer
name: "Shelly Dimmer Light"
power:
name: "Shelly Dimmer Power"
voltage:
name: "Shelly Dimmer Voltage"
current:
name: "Shelly Dimmer Current"
max_brightness: 500
firmware: "51.6"
uart_id: uart_11
nrst_pin:
number: 5
allow_other_uses: true
boot0_pin:
number: 4
allow_other_uses: true
sim800l:
uart_id: uart_4
on_sms_received:
- lambda: |-
std::string str;
str = sender;
str = message;
- sim800l.send_sms:
message: hello you
recipient: "+1234"
- sim800l.dial:
recipient: "+1234"
dfplayer:
uart_id: uart_5
on_finished_playback:
then:
if:
condition:
not: dfplayer.is_playing
then:
logger.log: Playback finished event
tm1651:
id: tm1651_battery
clk_pin:
allow_other_uses: true
number: D6
dio_pin:
allow_other_uses: true
number: D5
rf_bridge:
uart_id: uart_5
on_code_received:
- lambda: |-
uint32_t test;
test = data.sync;
test = data.low;
test = data.high;
test = data.code;
- rf_bridge.send_code:
sync: 0x1234
low: 0x1234
high: 0x1234
code: 0x123456
- rf_bridge.learn
on_advanced_code_received:
- lambda: |-
uint32_t test;
std::string test_code;
test = data.length;
test = data.protocol;
test_code = data.code;
- rf_bridge.start_advanced_sniffing:
- rf_bridge.stop_advanced_sniffing:
- rf_bridge.send_advanced_code:
length: 0x04
protocol: 0x01
code: "ABC123"
- rf_bridge.send_raw:
raw: "AAA5070008001000ABC12355"
display:
- platform: nextion
uart_id: uart_1
tft_url: http://esphome.io/default35.tft
update_interval: 5s
on_sleep:
then:
lambda: 'ESP_LOGD("display","Display went to sleep");'
on_wake:
then:
lambda: 'ESP_LOGD("display","Display woke up");'
on_setup:
then:
lambda: 'ESP_LOGD("display","Display setup completed");'
on_page:
then:
lambda: 'ESP_LOGD("display","Display shows new page %u", x);'
fingerprint_grow:
sensing_pin:
allow_other_uses: true
number: 4
sensor_power_pin:
allow_other_uses: true
number: 5
inverted: true
idle_period_to_sleep: 5s
password: 0x12FE37DC
new_password: 0xA65B9840
on_finger_scan_start:
- homeassistant.event:
event: esphome.${device_name}_fingerprint_grow_finger_scan_start
on_finger_scan_invalid:
- homeassistant.event:
event: esphome.${device_name}_fingerprint_grow_finger_scan_invalid
on_finger_scan_matched:
- homeassistant.event:
event: esphome.${device_name}_fingerprint_grow_finger_scan_matched
data:
finger_id: !lambda "return finger_id;"
confidence: !lambda "return confidence;"
on_finger_scan_unmatched:
- homeassistant.event:
event: esphome.${device_name}_fingerprint_grow_finger_scan_unmatched
on_finger_scan_misplaced:
- homeassistant.event:
event: esphome.${device_name}_fingerprint_grow_finger_scan_misplaced
on_enrollment_scan:
- homeassistant.event:
event: esphome.${device_name}_fingerprint_grow_enrollment_scan
data:
finger_id: !lambda "return finger_id;"
scan_num: !lambda "return scan_num;"
on_enrollment_done:
- homeassistant.event:
event: esphome.${device_name}_fingerprint_grow_node_enrollment_done
data:
finger_id: !lambda "return finger_id;"
on_enrollment_failed:
- homeassistant.event:
event: esphome.${device_name}_fingerprint_grow_enrollment_failed
data:
finger_id: !lambda "return finger_id;"
uart_id: uart_6
dsmr:
decryption_key: 00112233445566778899aabbccddeeff
uart_id: uart_6
max_telegram_length: 1000
request_pin:
allow_other_uses: true
number: D5
request_interval: 20s
receive_timeout: 100ms
daly_bms:
update_interval: 20s
uart_id: uart_1
qr_code:
- id: homepage_qr
value: https://esphome.io/index.html
lightwaverf:
read_pin:
number: 13
write_pin:
allow_other_uses: true
number: 14
alarm_control_panel:
- platform: template
id: alarmcontrolpanel1
name: Alarm Panel
codes:
- "1234"
requires_code_to_arm: true
arming_home_time: 1s
arming_night_time: 1s
arming_away_time: 15s
pending_time: 15s
trigger_time: 30s
binary_sensors:
- input: bin1
bypass_armed_home: true
bypass_armed_night: true
on_state:
then:
- lambda: !lambda |-
ESP_LOGD("TEST", "State change %s", alarm_control_panel_state_to_string(id(alarmcontrolpanel1)->get_state()));
- platform: template
id: alarmcontrolpanel2
name: Alarm Panel
codes:
- "1234"
requires_code_to_arm: true
arming_home_time: 1s
arming_night_time: 1s
arming_away_time: 15s
pending_time: 15s
trigger_time: 30s
binary_sensors:
- input: bin1
bypass_armed_home: true
bypass_armed_night: true
on_disarmed:
then:
- logger.log: "### DISARMED ###"
on_pending:
then:
- logger.log: "### PENDING ###"
on_arming:
then:
- logger.log: "### ARMING ###"
on_armed_home:
then:
- logger.log: "### ARMED HOME ###"
on_armed_night:
then:
- logger.log: "### ARMED NIGHT ###"
on_armed_away:
then:
- logger.log: "### ARMED AWAY ###"
on_triggered:
then:
- logger.log: "### TRIGGERED ###"
on_cleared:
then:
- logger.log: "### CLEARED ###"