Integrar o nosso cortador de relva Bosch Indego no Home Assistant

Poço, seguindo os posts sobre a integração de dispositivos IoT de nossas casas inteligentes com o Home Assistant, como poderia ser menos capaz de controlar, conheça o estado e faça automações com o nosso cortador de relva Bosh Indego.

Vamos a utilizar 'Controller application and API for Bosch Indego Connect’ que já vimos Neste post como instalar e integrar com o Grafana. Nesta ocasião, vamos aproveitar este magnífico projeto para usar um adaptador que vem com ele e nos permitirá integrá-lo ao Home Assistant graças ao fato de que ele pode falar através do MQTT com o nosso Broker. Ser capaz de saber o status ou enviar comandos através de tópicos. Teremos tudo isso integrado com o resto dos dispositivos em nossa casa, Em uma interface simples e como você pode imaginar através de automações poderemos saber quando o corte começa, Se ficar preso, Quando é que acabou de cortar; e, claro, dependendo se choveu/vai chover, Bem, deixe-o sair e cortar.

Depois de instalá-lo, vamos levantar o adaptador Indego com MQTT indicando o arquivo com os dados de conexão. Este adaptador pode ser executado a partir de um Windows ou Linux, no meu caso eu tenho montado no Linux, Então, se eu quiser que ele se levante toda vez que a máquina for ligada., Vamos colocá-lo em uma tarefa cron:

@reboot /home/pi/indego/bin/IndegoMqttAdapter -c /home/pi/indego/IndegoMqttAdapterConfig.properties

E o arquivo IndegoMqttAdapterConfig.properties seria este, cada um deles corrige os seus dados de acesso ao Indego (e-mail/palavra-passe), e dados MQTT:

# URL base do serviço Web Indego (se diferente do padrão)
# indego.mqtt.device.base-url=https://api.indego.iot.bosch-si.com/api/v1/
# Nome de usuário para conexão com o servidor Indego (o mesmo que no aplicativo Indego)

indego.mqtt.device.username=USUARIO_MAIL_DE_INDEGO
# Senha para conexão com o servidor Indego (o mesmo que no aplicativo Indego)
indego.mqtt.device.password=CONTRASEÑA_DE_INDEGO

# Conexão com o broker MQTT indego.mqtt.broker.connection=tcp://DIRECCION_IP_BROKER_MQTT:1883
# ID exclusivo deste cliente indego.mqtt.broker.client-id=IndegoMqttAdapter
# Nome de usuário para autenticação no broker MQTT indego.mqtt.broker.username=USUARIO_MOSQUITTO
# Senha para autenticação no broker MQTT indego.mqtt.broker.password=CONTRASEÑA_MOSQUITTO
# Raiz do tópico (espaço de nomes) para tópicos Indego indego.mqtt.broker.topic-root=test/device/indego

# Especifica com que frequência o estado Indego é consultado e os tópicos MQTT devem ser atualizados indego.mqtt.polling-interval-ms=30000

Cuando tengamos el servicio del adaptador ya corriendo en alguna máquina, ya podremos dar de alta nuestro cortacesped Bosch Indego en Home Assistant, como? Como de costume, modificando el fichero configuration.yaml, añadiremos en la sección de los sensores el siguiente código:

sensor:
...
  - Plataforma: Nome MQTT: "Indego 350 - Estado energia"
    state_topic: "teste/dispositivo/indego/online"
    value_template: '{% se valor == "Apagado" %}DESLIGADO{% mais %}Encendido{% Fim %}'
    icon: Mdi:carro-bateria

  - Plataforma: Nome MQTT: "Indego 350 - Estado"
    state_topic: "test/device/indego/stateMessage"
    ícone: Mdi:value_template do marcador de mapa: '{% se valor == "Atracado" %}En la base{% valor elif == "Carregamento" %}Cargando{% valor elif == "Ceifada" %}Segando{% valor elif == "Relocalização" %}Ubicandome{% valor elif == "Regresso à doca" %}Volviendo a casa{% valor elif == "Corte de fronteiras" %}Recortando los bordes{% valor elif == "Ocioso no gramado" %}Ocioso en el jardin{% valor elif == "Desconhecido" %}Desconocido{% valor elif == "Pausa" %}Pausado{% valor elif == "Regresso à doca - Bateria fraca" %}Bateria baja{% Fim %}'

  - Plataforma: Nome MQTT: "Indego 350 - Segado"
    state_topic: "teste/dispositivo/indego/mowedPercent"
    unit_of_measurement: "%"
    ícone: Mdi:cortador-robô

  - Plataforma: Nome MQTT: "Indego 350 - Tiempo último segado"
    state_topic: "test/device/indego/runtimeSessionOperationMins"
    ícone: Mdi:pá value_template: '{{ (valor | flutuar / 60) | redondo(2, "ceil") }}'
    unit_of_measurement: "h"

  - Plataforma: Nome MQTT: "Indego 350 - Tiempo trabajado |"
    state_topic: "test/device/indego/runtimeTotalOperationMins"
    ícone: Mdi:temporizador value_template: '{{ (valor | flutuar / 60) | redondo(2, "ceil") }}'
    unit_of_measurement: "h"

E depois de reiniciar o Home Assistant e recarregar as alterações, poderemos adicionar um cartão com todas estas entidades. Em que podemos ver o estado energético, A condição do cortador de grama (Se for na base, Carregando, Ceifada, Classificação, Regresso a casa, Aparar as arestas, Ocioso no jardim / preso, com lateria baixa… ), a percentagem do corte, O tempo da última colheita, tempo total trabalhado… O último eu recebo com uma consulta mysql para o banco de dados do Hassio.

A propósito, Se você quiser adicionar um cartão com 3 paquete, uma peça para começar a ceifar, uma pausa ou outra para terminar a ceifa;, Deixo-vos este exemplo:

cartões:
  - entidade: sensor.indego_350_estado hold_action:
      Ação: Ícone Nenhum: 'mdi:play'
    icon_height: 30Nome Px: Para colher tap_action:
      Ação: Serviço de atendimento telefónico: mqtt.publish service_data:
        Carga útil: Tópico MOW: test/device/indego/tipo de comando: botão-entidade
  - entidade: sensor.indego_350_estado hold_action:
      Ação: Ícone Nenhum: 'mdi:pause'
    icon_height: 30Nome Px: Pausa tap_action:
      Ação: Serviço de atendimento telefónico: mqtt.publish service_data:
        Carga útil: Tópico PAUSE: test/device/indego/tipo de comando: botão-entidade
  - entidade: sensor.indego_350_estado hold_action:
      Ação: Ícone Nenhum: 'mdi:home'
    icon_height: 30Nome Px: Início tap_action:
      Ação: Serviço de atendimento telefónico: mqtt.publish service_data:
        Carga útil: Tópico RETURN: test/device/indego/tipo de comando: tipo de botão de entidade: pilha-horizontal

Deixo-vos este exemplo de automatização, para que possa sair para a água às 6h da manhã se não tiver chovido ou não vai chover, É claro que a parte de detetar chuva vai depender de cada um, você pode usar a integração AccuWeather.

Esta automatização notifica-nos por mensagem de Telegram ou pelos altifalantes da casa que começa a cortar. A ideia é no caso de cortarmos durante o dia e queremos avisar que vai sair, Então eu não te pego 😉

E esta última automação irá enviar-nos uma mensagem de Telegram e notificar-nos através dos altifalantes que o cortador de relva Bosch Indego ficou preso.

Esperando que tenha sido útil para você, Envio uma saudação a tod@s e como sempre obrigado por partilhá-la nas redes sociais.

Postagens recomendadas

Autor

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Não hesite em contactar-me, Vou tentar ajudá-lo sempre que puder, Compartilhar é viver ;) . Desfrute de documentos!!!