Advertisement
to4ko

Untitled

Sep 8th, 2020
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. substitutions:
  2. board_name: esp01_air_freshener
  3.  
  4. esphome:
  5. name: ${board_name}
  6. platform: ESP8266
  7. board: esp01_1m
  8.  
  9. wifi:
  10. ssid: !secret wifi_ssid_k
  11. password: !secret wifi_pass
  12. domain: .localdomain
  13. reboot_timeout: 0s
  14. output_power: 17.5dB
  15. fast_connect: true
  16. power_save_mode: none
  17. manual_ip:
  18. static_ip: 192.168.1.141
  19. gateway: 192.168.1.1
  20. subnet: 255.255.255.0
  21.  
  22. mqtt:
  23. broker: '192.168.1.30'
  24. username: !secret mqtt_user
  25. password: !secret mqtt_pass
  26. discovery: True
  27. discovery_retain: True
  28. client_id: esp01_air_freshener
  29.  
  30. logger:
  31. baud_rate: 0
  32.  
  33. # api:
  34. # reboot_timeout: 0s
  35.  
  36. ota:
  37.  
  38. deep_sleep:
  39. id: deep_sleep_1
  40. run_duration: 20s
  41. sleep_duration: 5min
  42.  
  43. # web_server:
  44. # port: 80
  45.  
  46. interval:
  47. - interval: 10s
  48. then:
  49. - lambda: |-
  50. if ((id(on_flag).state) == 1 and (id(sleep_avail).state) == 1){
  51. id(script1).execute();}
  52. if ((id(on_flag).state) == 0 and (id(sleep_avail).state) == 1){
  53. id(script2).execute();}
  54. if ((id(on_flag).state) == 0 and (id(sleep_avail).state) == 0){
  55. id(script3).execute();}
  56. if ((id(on_flag).state) == 1 and (id(sleep_avail).state) == 0){
  57. id(script4).execute();}
  58.  
  59.  
  60. script:
  61. - id: script1
  62. then:
  63. #- deep_sleep.prevent: deep_sleep_1
  64. - mqtt.publish:
  65. topic: esp01_air_freshener/air_fresh
  66. payload: 0
  67. retain: true
  68. - switch.turn_on: spray
  69. - delay: 1s
  70. - deep_sleep.enter: deep_sleep_1
  71.  
  72. - id: script2
  73. then:
  74. - deep_sleep.enter: deep_sleep_1
  75.  
  76. - id: script3
  77. then:
  78. - deep_sleep.prevent: deep_sleep_1
  79.  
  80. - id: script4
  81. then:
  82. - mqtt.publish:
  83. topic: esp01_air_freshener/air_fresh
  84. payload: 0
  85. retain: true
  86. - switch.turn_on: spray
  87.  
  88. binary_sensor:
  89. - platform: status
  90. name: ${board_name}_Status
  91.  
  92. sensor:
  93. - platform: uptime
  94. name: ${board_name}_Uptime_s
  95. id: uptime_sensor
  96. update_interval: 5s
  97.  
  98. - platform: mqtt_subscribe
  99. name: ${board_name}_on_flag
  100. id: on_flag
  101. topic: esp01_air_freshener/air_fresh
  102.  
  103. - platform: mqtt_subscribe
  104. name: ${board_name}_sleep_avail
  105. id: sleep_avail
  106. topic: esp01_air_freshener/sleep_avail
  107.  
  108. - platform: adc
  109. pin: VCC
  110. name: ${board_name}_Vcc
  111. update_interval: 5s
  112.  
  113. switch:
  114. - platform: restart
  115. name: ${board_name}_Restart
  116.  
  117. - platform: gpio
  118. pin: GPIO03
  119. name: ${board_name}_switch
  120. internal: true
  121. id: valve
  122.  
  123. - platform: template
  124. name: ${board_name}_valve
  125. icon: mdi:spray
  126. id: spray
  127. turn_on_action:
  128. - switch.turn_on: valve
  129. - delay: 100ms
  130. - switch.turn_off: valve
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement