Info / IoT

Atualizado em 09 mai 2022 16h38

Shelly Button1 - Home assistant - MQTT

  • URL Curta:

Venda: Ssd Sata Wd Green 240gb - Para Notebook, Mini Pc - 2.5

Venda: Memoria Corsair 8gb (2 X 4gb) Ddr3 Notebook, Mini Pc

Venda: Injetor Poe Eap225 24v Passivo - Tl-poe2412g - Tp-link

Venda: Injetor Poe Ubiquiti 802.3at 48v 30w Gigabit U-poe-at

Olá pessoal,

Tem uns 90 dias que estou usando dois botões shelly button1, em substituição aos RF433, e estou gostando bastante. Posso dizer que o botão é quase perfeito. Produto é muito bem acabado, aparenta robustez e bem melhor que usar RF433.

A única coisa que acho que ele poderia ter, era uma luz de fundo, para orientação no escuro, mas creio que isso iria drenar muito a bateria. No mais ele também tem um atraso de 2 segundos para conectar ao wifi e executar a ação, mas isso é quase imperceptível e não atrapalha no dia a dia (esta demora é normal, pois na bateria ele entra em standby para economizar). Para mais informações acesse o site oficial

O valor do produto também é bem salgado, recomendo comprar em promoção. Comprei neste link pelo aliexpress.

Bateria
A bateria depende muito do uso, no meu caso, acredito que vai durar de 4 a 5 meses. O carregamento é feito por cabo micro usb.

Requisitos:
- Shelly Button1 configurado com mqtt
- Home assistant

Configuração
Sensor (opcional), adicionar no configuration.yaml, em sensor: ou no arquivos sensors.yaml

#### botao - controle
 - platform: mqtt
   name: "botao - bateria"
   state_topic: "shellies/botaotopic/sensor/battery"
   value_template: "{{ value }}"
   unit_of_measurement: "%"
   icon: mdi:remote


- Automação, criar nova automação, em branco, alterar para modo yaml e colar:

alias: nome da automação
description: botao de controle remoto com 4 acoes
trigger:
 - platform: mqtt
   topic: shellies/botaotopic/input_event/0
condition: []
action:
 - choose:
     - conditions:
         - condition: template
           value_template: '{{ trigger.payload_json.event == ''S'' }}'
       sequence:
         - service: light.toggle
           target:
             entity_id: light.luz1
           data: {}
     - conditions:
         - condition: template
           value_template: '{{ trigger.payload_json.event == ''SS'' }}'
       sequence:
         - service: fan.toggle
           target:
             entity_id: fan.ventilador1
           data: {}
     - conditions:
         - condition: template
           value_template: '{{ trigger.payload_json.event == ''SSS'' }}'
       sequence:
         - service: fan.set_preset_mode
           data:
             preset_mode: high
           target:
             entity_id: fan.ventilador1
     - conditions:
         - condition: template
           value_template: '{{ trigger.payload_json.event == ''L'' }}'
       sequence:
         - service: homeassistant.turn_off
           target:
             entity_id: group.luzes
           data: {}
   default: []
mode: single


Após colar o exemplo, você pode alterar para o modo visual e editar para suas necessidades. Neste exemplo temos:
- 1 clique = S, liga/desliga luz1
- 2 cliques = SS, liga/desliga ventilador1
- 3 cliques = SSS, altera o ventilador1 para a velocidade 3/alta.
- Clique longo = L, desliga todas as luzes (grupo).

Você pode editar e alterar para os dispositivos que for mais conveniente.

- Passo a passo automação:
-- Gatilho
--- Tipo de gatilho: MQTT
--- Topico: shellies/botaotopic/input_event/0

-- Ações
--- Tipo de ação: Selecione
---- Opção 1:
----- Condições:
----- Tipo de condição: Template
----- Template de Valor *: {{ trigger.payload_json.event == 'S' }}
----- Ações:
----- Tipo de ação: Iniciar serviço
----- Serviço: Luz: Toggle, escolher entidade.

Basta adicionar opção e ir configurando, opção 2, opção 3, etc. Para cada opção adicionar a condição de template SS, SSS, L {{ trigger.payload_json.event == 'SS' }}.

Se não quiser usar a ação de 3 cliques, basta não configurar o SSS.

Posso usar o botão para abrir o portão social ou de garagem? Claro, basta chamar o respectivo serviço na opção desejada, recomendo a L. Serviço cover.open_cover (Cobertura: Open) ou se você usar um switch chamar switch.turn_on (Interruptor: Turn on) e escolher entidade.

© MNDTI - Tecnologia e Informação. Todos Direitos Reservados. Política de privacidade.