Integration unseres Rasenmähers Bosch Indego in Home Assistant

gut, Folgen Sie den Beiträgen zur Integration von IoT-Geräten unserer Smart Homes mit Home Assistant, wie könnte es weniger sein, kontrollieren zu können, Kennen Sie den Status und automatisieren Sie mit unserem Bosh Indego Rasenmäher.

Vamos ist eine nützliche Controller-Anwendung und API für Bosch Indego Connect’ das haben wir schon gesehen in diesem Beitrag wie man es installiert und in Grafana integriert. Dieses Mal werden wir dieses großartige Projekt nutzen, um einen Adapter zu verwenden, der es uns ermöglicht, ihn in Home Assistant zu integrieren, da er über MQTT mit unserem Broker sprechen kann. In der Lage sein, den Status zu kennen oder Befehle über Themen zu senden. Wir werden all dies in die restlichen Geräte in unserem Haus integrieren, In einer einfachen Oberfläche und wie Sie sich durch die Automatisierung vorstellen, können wir wissen, wann der Schnitt beginnt, wenn es stecken bleibt, Wann hast du fertig gemäht?; und natürlich je nachdem ob es geregnet hat / regnen wird, Also geh raus um zu schneiden.

nach der Installation, Wir werden den Indego-Adapter mit MQTT anheben und die Datei mit den Verbindungsdaten angeben. Wir können diesen Adapter unter Windows oder Linux ausführen, In meinem Fall habe ich es unter Linux gemountet, Also, wenn ich möchte, dass es jedes Mal aufsteht, wenn diese Maschine startet, Wir werden es in eine Cron-Aufgabe stecken:

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

Und die IndegoMqttAdapterConfig.properties-Datei wäre dies, Korrigieren Sie jede Ihrer Indego-Zugriffsdaten (Mail / Passwort), und die MQTT-Daten:

# Basis-URL des Indego-Webdienstes (falls abweichend von der Standardeinstellung)
# indego.mqtt.device.base-url = https://api.indego.iot.bosch-si.com/api/v1/
# Benutzername für die Verbindung zum Indego-Server (das gleiche wie in der Indego App)

indego.mqtt.device.username = USUARIO_MAIL_DE_INDEGO
# Passwort für die Verbindung zum Indego-Server (das gleiche wie in der Indego App)
indego.mqtt.device.password = INDEGO_PASSWORD

# Verbindung zum MQTT-Broker
indego.mqtt.broker.connection = tcp://ADDRESS_IP_BROKER_MQTT:1883
# Eindeutige ID dieses Kunden
indego.mqtt.broker.client-id = IndegoMqttAdapter
# Benutzername für die Authentifizierung beim MQTT-Broker
indego.mqtt.broker.username = USUARIO_MOSQUITTO
# Passwort zur Authentifizierung beim MQTT-Broker
indego.mqtt.broker.password = CONTRASEÑA_MOSQUITTO
# Themenwurzel (Namespace) für Indego-Themen
indego.mqtt.broker.topic-root = test / device / indego

# Gibt an, wie oft der Indego-Status abgefragt wird und die MQTT-Themen aktualisiert werden sollen
indego.mqtt.polling-interval-ms = 30000

Wenn der Adapterdienst bereits auf einem Computer ausgeführt wird, Wir können unseren Bosch Indego Rasenmäher jetzt bei Home Assistant registrieren, Wie? wie immer, Ändern der Datei configuration.yaml, Wir werden den folgenden Code im Abschnitt Sensoren hinzufügen:

Sensor:
...
  - Plattform: mqtt
    Name: "Indego 350 - Energiezustand"
    state_topic: "test / device / indego / online"
    value_template: '{% if value == "aus" %}AUS{% sonst %}gefeuert{% endif %}'
    Symbol: mdi:Autobatterie

  - Plattform: mqtt
    Name: "Indego 350 - Zustand"
    state_topic: "test / device / indego / stateMessage"
    Symbol: mdi:Kartenmarkierung
    value_template: '{% if value == "Angedockt" %}An der Wurzel{% elif value == "Aufladen" %}Wird geladen{% elif value == "Mähen" %}Mähen{% elif value == "Relokalisierung" %}Ich finde mich{% elif value == "Rückkehr zum Dock" %}Nach Hause zurückkehren{% elif value == "Rand geschnitten" %}Kanten abschneiden{% elif value == "Leerlauf im Rasen" %}Müßig im Garten{% elif value == "unbekannte" %}Unbekannt{% elif value == "Pause" %}Langsam{% elif value == "Rückkehr zum Dock - Batterie schwach" %}Niedriger Batteriestatus{% endif %}'

  - Plattform: mqtt
    Name: "Indego 350 - Gemäht"
    state_topic: "test / device / indego / mowedPercent"
    Maßeinheit: "%"
    Symbol: mdi:Robotermäher

  - Plattform: mqtt
    Name: "Indego 350 - Letzte Mähzeit"
    state_topic: "test / device / indego / runtimeSessionOperationMins"
    Symbol: mdi:Schaufel
    value_template: '{{ (Wert | schweben / 60) | runden(2, "Decke") }}'
    Maßeinheit: "h"

  - Plattform: mqtt
    Name: "Indego 350 - Die Zeit hat gearbeitet"
    state_topic: "test / device / indego / runtimeTotalOperationMins"
    Symbol: mdi:Timer
    value_template: '{{ (Wert | schweben / 60) | runden(2, "Decke") }}'
    Maßeinheit: "h"

Nach dem Neustart von Home Assistant und dem erneuten Laden der Änderungen können wir eine Karte mit all diesen Entitäten hinzufügen. In dem wir den Energiezustand sehen können, der Zustand des Mähers (wenn es in der Basis ist, Wird geladen, Ernten, Ortung, Nach Hause zurückkehren, Kanten abschneiden, müßig im Garten / stecken, mit niedriger Seite… ), der Schnittprozentsatz, die Zeit des letzten Mähens, die Gesamtzeit gearbeitet… Das letzte Mähen bekomme ich mit einer MySQL-Abfrage an Hassios DB.

sicher, wenn Sie eine Karte mit hinzufügen möchten 3 Tasten, a Spielen, um mit dem Mähen zu beginnen, eine Pause oder eine andere, um das Mähen zu beenden, Ich lasse dieses Beispiel:

Karten:
  - Entität: sensor.indego_350_estado
    hold_action:
      Aktion: keiner
    Symbol: 'mdi:abspielen'
    icon_height: 30px
    Name: Ein Segar
    tap_action:
      Aktion: Anrufservice
      Bedienung: mqtt.publish
      service_data:
        Nutzlast: MÄHEN
        Thema: test / device / indego / command
    Art: Entity-Button
  - Entität: sensor.indego_350_estado
    hold_action:
      Aktion: keiner
    Symbol: 'mdi:Pause'
    icon_height: 30px
    Name: Pausar
    tap_action:
      Aktion: Anrufservice
      Bedienung: mqtt.publish
      service_data:
        Nutzlast: PAUSE
        Thema: test / device / indego / command
    Art: Entity-Button
  - Entität: sensor.indego_350_estado
    hold_action:
      Aktion: keiner
    Symbol: 'mdi:Zuhause'
    icon_height: 30px
    Name: Eine Casa
    tap_action:
      Aktion: Anrufservice
      Bedienung: mqtt.publish
      service_data:
        Nutzlast: RÜCKKEHR
        Thema: test / device / indego / command
    Art: Entity-Button
Art: horizontaler Stapel

Ich überlasse Ihnen dieses Beispiel der Automatisierung, um 6 Uhr morgens ins Wasser gehen, wenn es nicht geregnet hat oder es nicht regnet, Natürlich hängt der Teil der Regenerkennung von jedem ab, Sie können die AccuWeather-Integration verwenden.

Diese Automatisierung benachrichtigt uns per Telegramm oder von den Lautsprechern des Hauses, dass es zu mähen beginnt. Die Idee davon ist für den Fall, dass wir tagsüber ernten und wir möchten mitteilen, dass es gehen wird, damit ich nicht erwischt werde 😉

Und diese neueste Automatisierung sendet uns eine Telegrammnachricht und benachrichtigt uns über die Lautsprecher, dass der Bosch Indego-Mäher blockiert ist.

In der Hoffnung, dass es Ihnen dienen könnte, Ich sende allen einen Gruß und danke Ihnen wie immer, dass Sie ihn in sozialen Netzwerken teilen.