Estou tentando fazer com que a luz da minha sala apague quando eu fechar a porta, mas só se ela ja estiver apagada antes, se ela estiver acesa, a automação nao deveria funcionar, porém, a luz está apagando mesmo assim.
- alias: ligar sala estar quando abrir porta sala a partir do por do sol
trigger:
platform: state
entity_id: binary_sensor.porta_sala
to: 'on'
condition:
- condition: state
entity_id: sun.sun
state: "below_horizon"
- condition: state
entity_id: light.sala_estar
state: "off"
action:
- service: input_boolean.turn_on
entity_id: input_boolean.porta_sala
- service: light.turn_on
entity_id: light.sala_estar
- alias: desligar sala estar 1 minuto apos fechar a porta se a automação anterior foi ativada
trigger:
platform: state
entity_id: binary_sensor.porta_sala
to: 'off'
for:
minutes: 1
condition:
condition: state
entity_id: input_boolean.porta_sala
state: 'on'
action:
- service: input_boolean.turn_off
entity_id: input_boolean.porta_sala
- service: light.turn_off
entity_id: light.sala_estar
a ideia é: se a luz estiver apagada, ele executa a primeira automação, e assim, com o boolean on, ele ativa a segunda. mas com a luz acesa a primeira automação nao é ativada e, com o boolean off, a luz nao se apaga. mas ela continua apagando mesmo quando acendo a luz antes de abrir a porta.
Não entendi nada do que vc está tentando fazer, poderia explicar melhor por favor?
Vamos lá:
Quero que a luz acenda quando abrir a porta, e depois, quando a porta estiver fechada por 1 minuto, a luz apague. Porém, se a luz já estiver acesa antes de abrir a porta, nao quero que apague.
Entao eu precisava de algo que indicasse se a luz foi acesa pela automaçao ou por outro meio.
Criei um input_boolean
input_boolean:
porta_sala:
name: porta sala
de forma que, quando a primeira automação é ativada, ele muda pra on,
action:
- service: input_boolean.turn_on
entity_id: input_boolean.porta_sala
e na segunda automação, coloquei uma condição, pra ela só ativar se o input_boolean
estivesse on.
condition:
condition: state
entity_id: input_boolean.porta_sala
state: 'on'
Tambem coloquei uma condição na primeira automação pra ela só funcionar se a luz estiver off.
- condition: state
entity_id: light.sala_estar
state: "off"
Entao na teoria, se eu ligar a luz por outro meio, a primeira automação nao seria ativada, por causa da condição da luz nao estar off, e o input_boolean
continuaria off o que nao ativaria a segunda automação e nao desligaria a luz.
Se eu entendi, basta vc colocar a condição pra ela pra acender na sua automação se estiver apagada. É óbvio que acende somente se estiver apagada, mas colocando essa condição, se a porta fechar e a lâmpada já estava acesa antes de a porta abrir, ela não vai apagar.
- id: '1613789106064'
alias: 02.4 .................... garagem {{{ aberto (frente esquerda ligada) }}}
description: ''
trigger:
- platform: device
type: turned_on
device_id: ff8xxxxxxxxxxxxxxxxxxxxxxd4a2
entity_id: switch.sensoresgaragem
domain: switch
condition:
- condition: sun
before: sunrise
after: sunset
- condition: device
type: is_off
device_id: bxxxxxxxxxxxxxxxxxx1f8b
entity_id: light.ftesquerda
domain: light
- condition: device
type: is_on
device_id: 65xxxxxxxxxxxxx63d9b7e
entity_id: light.ftdireita
domain: light
action:
- type: turn_on
device_id: b9xxxxxxxxxxxxxxxxxxx41f8b
entity_id: light.ftesquerda
domain: light
- wait_for_trigger:
- platform: device
type: turned_off
device_id: ff8xxxxxxxxxxxxxxxxxxxxxx4a2
entity_id: switch.sensoresgaragem
domain: switch
for:
hours: 0
minutes: 3
seconds: 0
milliseconds: 0
- type: turn_off
device_id: b9xxxxxxxxxxxxxxxxxxxx1f8b
entity_id: light.ftesquerda
domain: light
mode: single
Durante todo o tempo que eu tava tentando fazer isso funcionar, meu pai nao pensou em dizer que ele tinha uma cena no ewelink pra apagar essa luz quando fecha a porta 
Por fim minha automação funciona perfeitamente e nem precisava ser tao complicada.
- alias: ligar sala estar quando abrir porta sala a partir do por do sol
trigger:
platform: state
entity_id: binary_sensor.porta_sala
to: 'on'
condition:
- condition: state
entity_id: sun.sun
state: "below_horizon"
- condition: state
entity_id: light.sala_estar
state: "off"
action:
- service: light.turn_on
entity_id: light.sala_estar
- delay:
minutes: 1
- service: light.turn_off
entity_id: light.sala_estar
Desculpa pela bagunça.
1 curtida
Preciso de um help, o que precisa alterar nesse scritp para funcionar correto… preciso que a luz acenda apos o sunset baseado na geolocalizaçao… assim que eu entrar na zona que eu criei da minha casa e estiver a noite… ascende a luz…
o probela que ela so está acionando uma vez por dia…
alias: Ligar Spot
description: Ligar Spot se eu entrar em casa
trigger:
- platform: sun
event: sunset
offset: 0
- platform: geo_location
source: ‘’
zone: zone.home
event: enter
condition:
action:
- type: turn_on
device_id: ebf5…c343028
entity_id: switch.sonoff_100148c0e2_1
domain: switch
mode: single
No lugar de geolocalizacao, utilize status com você (person) em home.
Fiz exatamente isso. Só que via node red. É uma possibilidade usar o node red para você?
O por do sol tem que entrar em condição não em trigger.
Se por como trigger ele dispara toda vez q tiver por do sol independente de estar em casa ou não e só imediatamente na hora do por do sol.
O correto pra o comportamento que você quer é que o trigger seja você entrar na zona da sua casa e a condição é que o horário é após por do sol .
Valeu!!!
jã arrumei aqui!!! muito Obrigado mesmo!!!
tenho que aprender a usar o nodred, valeu!!! obrigado!!! alguma pessoas falam que ~e bem mais facil e intuitivo.