Ok. Fácil!
Nas automações aberturapeloslider e fechopeloslider, no service mqtt_publish, o tópico está errado. Não mudaste wemosd1mini pelo teu…
Depois diz coisas…
Ok. Fácil!
Nas automações aberturapeloslider e fechopeloslider, no service mqtt_publish, o tópico está errado. Não mudaste wemosd1mini pelo teu…
Depois diz coisas…
Boas pessoal, Há uns tempos que tinha isto a funcionar através do Dual R2 mas decidi encomendar o Sonoff T1 para experimentar. Funciona às 10 maravilhas! Pensei que não fosse aguentar com a corrente dos estores mas até agora tem estado impecável.
O problema são os picos no arranque dos motores… Provavelmente pifam ao fim de algum tempo… 2A é muito “justo”…
Pois é disso que tenho receio mas comprei mesmo para testar. Vamos ver quanto tempo aguenta.
Paran tentar perceber se o erro estava a ser causado por uma troca de nome, deixei o sonoff dual R2 com as seguintes configuraçoes:
Se usar as setas no hassio consigo abrir e fechar as persianas, só não está a funcionar com a barra que estima a posição dos estores.
Acho que não podes ter os friendly name 1 e 2 iguais…
Se já alteraste assim no tasmota. Apaga a config que tens no HA e copia de novo o meu código exatamente como está no tutorial… Depois diz coisas…
@j_assuncao, tb pendei nisso ( friendly name 1 e 2 iguais ).
Mudei o nome nas configurações do Tasmota e nas configurações do HA, e continua igual.
Isso é muito estranho… É só o slider que não funciona?
É. de resto abre e fecha com as setas e para quando mando parar.
Continua igual.
Por via das duvidas testei os codigos que estão nas paginas abaixo:
confirma que a automação esteja activa no HA…
A tua dica deu-me uma ideia.
Colei o seguinte codigo dentro do ficheiro automatiom.yaml e a barra já funciona.
- id: iniciofecho
alias: começou a fechar
trigger:
- platform: state
entity_id: binary_sensor.rele_2
to: 'on'
action:
service: input_text.set_value
data_template:
entity_id: input_text.iniciofecho
value: '{{ now() }}'
- id: fimfecho
alias: parou de fechar
trigger:
- platform: state
entity_id: binary_sensor.rele_2
to: 'off'
condition:
- condition: state
entity_id: 'input_boolean.alterarslider'
state: 'on'
action:
- service: input_number.set_value
data_template:
entity_id: input_number.aberturapersianaold
value: >-
{% if (states.input_number.aberturapersiana.state)|int - ((as_timestamp(now()) - (as_timestamp(states.input_text.iniciofecho.state))|float|round(2))*100/(states.input_text.tempodefecho.state|int))|int < 4 %}
0
{% else %}
{{ (states.input_number.aberturapersiana.state)|int - ((as_timestamp(now()) - (as_timestamp(states.input_text.iniciofecho.state))|float|round(2))*100/(states.input_text.tempodefecho.state|int))|int }}
{% endif %}
- service: input_number.set_value
data_template:
entity_id: input_number.aberturapersiana
value: '{{ states.input_number.aberturapersianaold.state }}'
- id: inicioabertura
alias: começou a abrir
trigger:
- platform: state
entity_id: binary_sensor.rele_1
to: 'on'
action:
service: input_text.set_value
data_template:
entity_id: input_text.inicioabertura
value: '{{ now() }}'
- id: fimabertura
alias: parou de abrir
trigger:
- platform: state
entity_id: binary_sensor.rele_1
to: 'off'
condition:
- condition: state
entity_id: 'input_boolean.alterarslider'
state: 'on'
action:
- service: input_number.set_value
data_template:
entity_id: input_number.aberturapersianaold
value: >-
{% if (states.input_number.aberturapersiana.state)|int + ((as_timestamp(now()) - (as_timestamp(states.input_text.inicioabertura.state))|float|round(2))*100/(states.input_text.tempodeabertura.state|int))|int > 96 %}
100
{% else %}
{{ (states.input_number.aberturapersiana.state)|int + ((as_timestamp(now()) - (as_timestamp(states.input_text.inicioabertura.state))|float|round(2))*100/(states.input_text.tempodeabertura.state|int))|int }}
{% endif %}
- service: input_number.set_value
data_template:
entity_id: input_number.aberturapersiana
value: '{{ states.input_number.aberturapersianaold.state }}'
- id: aberturapeloslider
alias: Abertura pelo slider
trigger:
platform: state
entity_id: input_number.aberturapersiana
condition:
- condition: template
value_template: '{{ states.input_number.aberturapersiana.state|int > states.input_number.aberturapersianaold.state|int }}'
action:
- service: input_boolean.turn_off
data:
entity_id: input_boolean.alterarslider
- service: mqtt.publish
data:
topic: 'cmnd/wemosd1mini/Backlog'
payload_template: "POWER1 ON; delay {% if is_state('input_number.aberturapersiana', '100.0') %} {{ (((states.input_number.aberturapersiana.state|int - states.input_number.aberturapersianaold.state|int)*(states.input_text.tempodeabertura.state|float)/100)|round(1)*10)|round(0) + 20 }} {% else %}
{{ (((states.input_number.aberturapersiana.state|int - states.input_number.aberturapersianaold.state|int)*(states.input_text.tempodeabertura.state|float)/100)|round(1)*10)|round(0) }} {% endif %}; POWER1 OFF"
- delay:
milliseconds: 800
- wait_template: "{{ is_state('binary_sensor.rele_1', 'off') }}"
- service: input_boolean.turn_on
data:
entity_id: input_boolean.alterarslider
- service: input_number.set_value
data_template:
entity_id: input_number.aberturapersianaold
value: '{{ states.input_number.aberturapersiana.state }}'
- id: fechopeloslider
alias: Fecho pelo slider
trigger:
platform: state
entity_id: input_number.aberturapersiana
condition:
- condition: template
value_template: '{{ states.input_number.aberturapersiana.state|int < states.input_number.aberturapersianaold.state|int }}'
action:
- service: input_boolean.turn_off
data:
entity_id: input_boolean.alterarslider
- service: mqtt.publish
data:
topic: 'cmnd/wemosd1mini/Backlog'
payload_template: "POWER2 ON; delay {% if is_state('input_number.aberturapersiana', '0.0') %} {{ (((states.input_number.aberturapersianaold.state|int - states.input_number.aberturapersiana.state|int)*(states.input_text.tempodefecho.state|float)/100)|round(1)*10)|round(0) + 20 }} {% else %}
{{ (((states.input_number.aberturapersianaold.state|int - states.input_number.aberturapersiana.state|int)*(states.input_text.tempodefecho.state|float)/100)|round(1)*10)|round(0) }} {% endif %}; POWER2 OFF"
- delay:
milliseconds: 800
- wait_template: "{{ is_state('binary_sensor.rele_2', 'off') }}"
- service: input_boolean.turn_on
data:
entity_id: input_boolean.alterarslider
- service: input_number.set_value
data_template:
entity_id: input_number.aberturapersianaold
value: '{{ states.input_number.aberturapersiana.state }}'
Ainda bem. Por vezes as automações ficam desligadas… è uma questão de as ligares…
Eu não liguei a automação, o extranho é que quando acedo ás automaçoes, tenho lá uma lista de automaçoes, mas ao abri-las, aparentam estar activas.
Creio que não tenho a trabalhar correctamente os packages.
As automações das packages não podem ser editadas no UI… Mas podem ser activadas e desactivadas se não tiveres o default view personalizado… Podes sempre pôr o grupo all_automations numa view…
Ou utilizar a opção initial_state: true
Já tenho a cabeça cheia de galos de tantas cabeçadas que estou a dar com os estores.
Se tirar as confiuração dentro do ficheiro automação.yaml a barra dos estores deixam de funcionar.
E o outro ficheiro que estás a usar é um package?
PS.: Devias usar capacete antes de dares cabeçadas…
Creio que é um package.
homeassistant:
switch:
#Monitor
- platform: mqtt
name: "Monitor"
icon: mdi:television
state_topic: "stat/monitor/POWER"
command_topic: "cmnd/monitor/POWER"
availability_topic: "tele/monitor/LWT"
payload_available: "Online"
payload_not_available: "Offline"
qos: 1
payload_on: "ON"
payload_off: "OFF"
retain: true
#Tomada
- platform: mqtt
name: "Tomada"
icon: mdi:power-socket-eu
state_topic: "stat/Tomada/POWER"
command_topic: "cmnd/Tomada/POWER"
availability_topic: "tele/Tomada/LWT"
payload_available: "Online"
payload_not_available: "Offline"
qos: 1
payload_on: "ON"
payload_off: "OFF"
retain: true
#Tv
- platform: mqtt
name: "TV"
icon: mdi:power-socket-eu
state_topic: "stat/Tv/POWER"
command_topic: "cmnd/Tv/POWER"
availability_topic: "tele/Tv/LWT"
payload_available: "Online"
payload_not_available: "Offline"
qos: 1
payload_on: "ON"
payload_off: "OFF"
retain: true
automation:
- alias: Desligar Tomada
trigger:
platform: time
at: '00:59:00'
action:
- service: homeassistant.turn_off
entity_id: switch.Tomada
#
- alias: Desligar Monitor
trigger:
platform: time
at: '00:45:00'
action:
- service: homeassistant.turn_off
entity_id: switch.monitor
- alias: Desligar TV
trigger:
platform: time
at: '21:30:00'
action:
- service: homeassistant.turn_off
entity_id: switch.Tv
#estore hall
- alias: Abrir estores as 8
trigger:
platform: time
at: '15:36'
action:
service: cover.open_cover
data:
entity_id: cover.persianahall
- alias: fechar estores as 22
trigger:
platform: time
at: '22:00'
action:
service: cover.close_cover
data:
entity_id: cover.persianahall
sensor:
#"" ""
binary_sensor:
#"" ""
camera:
#"" ""
###########################################
# #
# isto é um grupo #
###########################################
group:
quarto:
view: yes
name: Quarto
entities:
- group.quartogroup
quartogroup:
control: hidden
name: Quarto
entities:
- switch.monitor
- switch.tomada
- swich.tv
Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt