Viva, estou aqui a tentar uma configuração por uma limitação de um sensor ou por falha minha na configuração. Dou só contexto:
Tenho sensor xiaomi aqara de movimento e iluminação e quero ligar uma luz quando valor de iluminação está abaixo de 10.
Tenho o seguinte:
- alias: auto_kitchen_light_on
initial_state: True
trigger:
- platform: state
entity_id: sensor.movimentocozinhanovo
to: 'True'
condition:
condition: and
conditions:
- condition: numeric_state
entity_id: sensor.iluminacaocozinhanovo
below: 10
- condition: template
value_template: '{{ as_timestamp(now()) - as_timestamp(states.automation.auto_kitchen_light_on.attributes.last_triggered) | int > 60 }}'
action:
- service: switch.turn_on
entity_id: switch.luz_cozinha_esquerda
Então está a acontecer o seguinte:
#1 - Entro na cozinha com luz apagada e luminosidade zero e ele liga a luz e funciona bem.
#2 - Por algum motivo ele não volta a ler a luminosidade a não ser que eu ande lá a mexer-me. (parece que é o sensor de movimento que força leitura de luminosidade, o que faz sentido para poupar bateria)
#3 - Então, se eu voltar a entrar na cozinha, mesmo que a luz esteja acesso, vai voltar a despoletar outra vez a acção de ligar a luz, que na prática a desliga, pois o interruptor é RFID.
O que descobri a testar:
A luminosidade é alterada logo depois do movimento, mas quando faço o trigger já é tarde demais e ele ainda me apanha luminosidade a zero.
Pergunta:
Existe alguma forma de colocar uma especie de timer entre validações? Ou seja, eu queria dizer que depois de entrar na cozinha, queria validar a iluminação 1 segundo depois! Dessa forma teria a certeza que ia apanhar a leitura do valor certo de iluminação.
PS: Assim que chegar o shelly2 vou trocar este interruptor, mas até lá queria ultrapassar este desafio.