Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- esphome:
- name: pergola
- friendly_name: pergola
- esp8266:
- board: nodemcuv2
- logger:
- ota:
- platform: esphome
- api:
- encryption:
- key: "**********"
- services:
- - service: control_blind
- variables:
- target: int
- then:
- - stepper.set_target:
- id: ${device_id}_stepper
- target: !lambda 'return target;'
- - sensor.template.publish:
- id: ${device_id}_position
- state: !lambda 'return target;'
- captive_portal:
- web_server:
- port: 80
- version: 3
- auth:
- password: "Password"
- username: "Username"
- cover:
- - platform: template
- name: "${friendly_name}"
- id: ${device_id}_cover_component
- device_class: blind
- open_action:
- - delay: .05s
- - stepper.set_target:
- id: ${device_id}_stepper
- target: 1234 ## Change this number to total steps yours uses to fully Open from Closed
- - sensor.template.publish:
- id: ${device_id}_position
- state: !lambda return id(${device_id}_stepper).target_position;
- - delay: 60s
- close_action:
- - delay: .05s
- - stepper.set_target:
- id: ${device_id}_stepper
- target: 0
- - delay: 60s
- - sensor.template.publish:
- id: ${device_id}_position
- state: !lambda return id(${device_id}_stepper).target_position;
- stop_action:
- - stepper.set_target:
- id: ${device_id}_stepper
- target: !lambda return id(${device_id}_stepper).current_position;
- - sensor.template.publish:
- id: ${device_id}_position
- state: !lambda return id(${device_id}_stepper).current_position;
- optimistic: true
- assumed_state: true
- sensor:
- - platform: template
- name: ${friendly_name} Position
- id: ${device_id}_position
- - platform: wifi_signal
- name: ${friendly_name} WiFi Signal
- id: wifi_signal_db
- update_interval: 60s
- entity_category: "diagnostic"
- - platform: copy
- source_id: wifi_signal_db
- name: ${friendly_name} WiFi Signal Percent
- filters:
- - lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
- unit_of_measurement: "Signal %"
- entity_category: "diagnostic"
- - platform: uptime
- name: ${friendly_name} Uptime
- text_sensor:
- - platform: wifi_info
- ip_address:
- name: ${friendly_name} IP Address
- ssid:
- name: ${friendly_name} SSID
- bssid:
- name: ${friendly_name} BSSID
- mac_address:
- name: ${friendly_name} Mac Address
- stepper:
- - platform: a4988
- id: my_stepper
- step_pin: D2
- dir_pin: D1
- sleep_pin: D3
- max_speed: 250 steps/s
- acceleration: inf
- deceleration: inf
- binary_sensor:
- - platform: status
- name: ${friendly_name} Status
- - platform: gpio
- pin:
- number: D3 ## Change to GPIO you're using for OPEN button
- inverted: TRUE
- mode:
- input: TRUE
- pullup: TRUE
- name: ${friendly_name} Open Button
- filters:
- - delayed_on: 10ms
- on_multi_click:
- #SINGLE CLICK
- - timing:
- - ON for at most 0.5s
- - OFF for at least 0.5s
- then:
- - delay: .05s
- - stepper.set_target:
- id: ${device_id}_stepper
- target: 0
- - delay: 60s
- - sensor.template.publish:
- id: ${device_id}_position
- state: !lambda return id(${device_id}_stepper).target_position;
- - platform: gpio
- pin:
- number: D4 ## Change to GPIO you're using for CLOSE button
- inverted: TRUE
- mode:
- input: TRUE
- pullup: TRUE
- name: ${friendly_name} Close Button
- filters:
- - delayed_on: 10ms
- on_multi_click:
- #SINGLE CLICK
- - timing:
- - ON for at most 0.5s
- - OFF for at least 0.5s
- then:
- - delay: .05s
- - stepper.set_target:
- id: ${device_id}_stepper
- target: 1234 ## Change this number to total steps yours uses to fully Open from Closed
- - sensor.template.publish:
- id: ${device_id}_position
- state: !lambda return id(${device_id}_stepper).target_position;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement