Skip to content
Interface to Husqvarna Automower with Connect-Module
PHP
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows
.style @ c637923
AutomowerConnectConfig
AutomowerConnectDevice
docs
libs
.gitmodules
README.md
library.json

README.md

IPSymconAutomowerConnect

Version Version Version License

Dokumentation

Inhaltsverzeichnis

  1. Funktionsumfang
  2. Voraussetzungen
  3. Installation
  4. Funktionsreferenz
  5. Konfiguration
  6. Anhang
  7. Versions-Historie

1. Funktionsumfang

  • Übernahme von eineigen Status-Informationen zu einem Husqvarna Automower mit Connect-Modul.
  • Senden von Befehlen zum Starten, Stoppen und Parken des Mährobotors.

Es wird die REST-Schnittstelle des Husqvarna Connect-Moduls verwendet. Für diese liegt keine Dokumentation vor, sodaß nicht alle der Funktionen der APP abgebildet werden konnten. Ich habe die unten angegebenen Quellen verwendet.

2. Voraussetzungen

  • IP-Symcon ab Version 5
    Version 4.4 mit Branch ips_4.4 (nur noch Fehlerkorrekturen)
  • Husqvarna Automower mit Connect-Modul

3. Installation

a. Laden des Moduls

Die Konsole von IP-Symcon öffnen. Im Objektbaum unter Kerninstanzen die Instanz Modules durch einen doppelten Mausklick öffnen.

In der Modules Instanz rechts oben auf den Button Hinzufügen drücken.

In dem sich öffnenden Fenster folgende URL hinzufügen:

https://github.com/demel42/IPSymconAutomowerConnect.git

und mit OK bestätigen.

Anschließend erscheint ein Eintrag für das Modul in der Liste der Instanz Modules

b. Einrichtung in IPS

In IP-Symcon zuerst Konfigurator Instanzen den Konfigurator AutomowerConnect Konfigurator hinzufügen. Hier die Zugangsdaten eintragen, Übernehmen und dann kann man in der Auswahlbox einen der mit diesem Account verknüpften Mäher auswählen und mit Importiern eine Instanz anlegen.

Die so erzeugte Instanz enthält neben den Zugangsdaten die interne Geräte-ID.

4. Funktionsreferenz

zentrale Funktion

boolean AutomowerDevice_ParkMower(integer $InstanzID)
Parken des Mähers in der Ladestation

boolean AutomowerDevice_StartMower(integer $InstanzID)
Starten eines manuellen Mähvorgangs

boolean AutomowerDevice_StopMower(integer $InstanzID)
Stoppen der Aktivität der Mähers

string AutomowerDevice_GetRawData(integer $InstanceID, string $Name)
Liefert interne Datenstrukturen. Beistpiel-Script siehe docs/docs/GetRawData2GoogelMaps.php.

Name Beschreibung
LastLocations mit dem Status werden die letzten 50 GPS-Positionen geliefert

5. Konfiguration:

Variablen

Eigenschaft Typ Standardwert Beschreibung
Instanz ist deaktiviert boolean false Instanz temporär deaktivieren
Benutzer string Husqvarna-Benutzer
Passwort string Passwort des Benutzers
nur AutomowerDevice
Geräte-ID string interne Geräte-ID
Modell string Modell
mit GPS-Daten boolean false Gerät schickt GPS-Daten
Position speichern boolean false Position in der Variablen 'Position' speichern
Aktualisiere Daten ... integer 1 Aktualisierungsintervall, Angabe in Minuten

Bezeichnung Beschreibung
Zugangsdaten überprüfen Testet die Zugangsdaten und gibt ggfs Accout-Details aus
nur AutomowerConfig  
Import des Rasenmähers Anlage einer AutomowerDevice-Instanz
nur AutomowerDevice  
Aktualisiere Status Status des Rasenmähers abrufen

Statusvariablen

folgende Variable werden angelegt, zum Teil optional

Name Typ Beschreibung
Connected boolean Verbindungsstatus des Mähers mit Husqvarna
Battery integer Ladekapazität der Batterie
OperationMode string Betriebsart
MowerStatus string Status des Mähers
MowerActivity integer aktuelle Aktivität des Mähers
MowerAction integer Start einer Aktivität
NextStart UNIX-Timestamp nächster geplanter Start
LastLongitude integer letzter Längengrad
LastLatitude integer letzter Breitengrad
LastStatus UNIX-Timestamp letzte Status-Abfrage
Position string letzte Position (Longitude, Latitude)

In MowerActivity werden die diversen MowerStatus in die Haupt-Aktivitäten gruppiert und als Integer abgelegt:

Wert Beschreibung
-1 Fehler
0 ausser Betrieb
1 geparkt
2 lädt
3 pausiert
4 fährt
5 mäht

Es ist damit z.B. egal, ob der Mähvorgang vom Timer ausgelöst wurde oder manuell. Das kann man dann leicht in einem Diagramm darstellen bzw. als Basis für Berechnungen verwenden.

in Position wird die akuelle Positon gespeichert; es werden Longitude und Latitude als json-encodeded String abgelegt. Wenn die Variable protokolliert wird, können damit längerfristig die Weg des Mähers dargestellt werden. Beistpiel-Script siehe docs/docs/Position2GoogelMaps.php.

Variablenprofile

Es werden folgende Variableprofile angelegt:

  • Boolean

    • Automower.Connection
  • Integer

    • Automower.Error: enthält die (unvollständige) Umsetzung der Fehlercodes vom Automower.
    • Automower.Action, Automower.Activity, Automower.Battery, Automower.Duration
  • Float

    • Automower.Location

6. Anhang

GUIDs

  • Modul: {5D3A5F03-B872-4C4F-802C-65A654A7772C}
  • Instanzen:
    • AutomowerConnectConfig: {664A5A69-6171-481A-BCB7-1CACDE4BF50D}
    • AutomowerConnectDevice: {B64D5F1C-6F12-474B-8DBC-3B263E67954E}

Quellen:

7. Versions-Historie

  • 1.13 @ 13.10.2019 13:18

    • Anpassungen an IPS 5.2
      • IPS_SetVariableProfileValues(), IPS_SetVariableProfileDigits() nur bei INTEGER, FLOAT
      • Dokumentation-URL in module.json
    • Umstellung auf strict_types=1
    • Umstellung von StyleCI auf php-cs-fixer
  • 1.12 @ 25.04.2019 16:20

    • Konfigurator-Dialog abgesichert
  • 1.11 @ 25.04.2019 10:32

    • Schreibfehler korrigiert
  • 1.10 @ 23.04.2019 17:08

    • Konfigurator um Sicherheitsabfrage ergänzt
  • 1.9 @ 29.03.2019 16:19

    • SetValue() abgesichert
  • 1.8 @ 20.03.2019 14:56

    • Anpassungen IPS 5, Abspaltung von Branch ips_4.4
    • Schalter, um eine Instanz (temporär) zu deaktivieren
  • 1.7 @ 23.01.2019 18:18

    • curl_errno() abfragen
  • 1.6 @ 22.12.2018 11:19

    • Fehler in der http-Kommunikation nun nicht mehr mit echo (also als ERROR) sondern mit LogMessage als NOTIFY
  • 1.5 @ 21.12.2018 13:10

    • Standard-Konstanten verwenden
  • 1.4 @ 02.12.2018 11:07

    • Variablenprofil Automower.Connection für Connected
  • 1.3 @ 27.11.2018 16:40

    • OperatingMode Home darstellen
  • 1.2 @ 26.09.2018 18:54

    • Fix zu v1.1 (Fehlermeldung bei Aufruf von ApplyChanges())
    • (alle) Fehlercodes als Text hinterlegt
      Hinweis: damit das Profil Automower.Error ergänzt wird, das Profil vor dem Update löschen
  • 1.1 @ 17.09.2018 17:54

    • Versionshistorie dazu,
    • define's der Variablentypen,
    • Schaltfläche mit Link zu README.md im Konfigurationsdialog
  • 1.0 @ 25.06.2018 16:59
    Initiale Version

You can’t perform that action at this time.