NEWS
Test Adapter anthbot-genie v0.1.x npm/GitHub
-
Info Adapter anthbot-genieVersion 0.1.0npm latest 0.1.0npm next 0.1.0-beta.2Quelle npm / GitHub GitHub https://github.com/reloxx13/ioBroker.anthbot-genie npm https://www.npmjs.com/package/iobroker.anthbot-genie Paket iobroker.anthbot-geniejs-controller >= 6.0.11Admin >= 7.6.20Node.js >= 20Verbindung Cloud Status latest Hinweis inoffiziell, nicht mit Anthbot verbunden Hallo zusammen,
ich möchte Version 0.1.0 meines ioBroker Adapters für Anthbot Genie Mähroboter bereitstellen.
Der Adapter ist ein inoffizieller Cloud-Adapter für Anthbot Genie. Er meldet sich an der Anthbot Cloud an, sucht die verfügbaren Geräte, ermittelt Region und IoT-Endpunkte und fragt regelmäßig Statusdaten des Mähroboters ab. Zusätzlich stellt er schreibbare States für Einstellungen, Mähbefehle, Docking, Wartung und Zonen bereit.
Funktionen
- Anthbot Cloud Login
- Geräteerkennung
- Region- und IoT-Endpunkt-Ermittlung
- Polling von Mower Property Shadow und Service Shadow
- Status-, Metrik-, Diagnose- und Rohdaten-States pro Mähroboter
- Steuerbefehle über ioBroker States
- Vollflächenmähen, manuelles Zonenmähen und automatisches Zonenmähen
- Punktmähen, Kantenmähen und Mähen nahe der Ladestation
- Start, Pause, Fortsetzen, Stoppen und Beenden von Mähaufgaben
- Rückkehr zur Ladestation inklusive Pause der Rückfahrt
- Wartungsbefehle wie Roboter finden, Grasablage und Scheibenwartungsmodus
- Verbrauchsmaterial-States für Ladeport, Kameras und Klingen inklusive Reset-Buttons
- Regen- und Mähparameter-Steuerung
- Passwort wird als verschlüsselte native Konfiguration gespeichert
Voraussetzungen
- ioBroker mit js-controller >= 6.0.11
- Admin >= 7.6.20
- Node.js >= 20
- Anthbot Account mit eingerichtetem Genie Mähroboter
Angelegte States
Pro erkanntem Mähroboter werden unter anderem folgende Bereiche angelegt:
info.*metrics.*diagnostics.*location.*consumable.*controls.*commands.*zones.*raw.*
Wichtige Punkte für 0.1.0
- neue gruppierte State-Struktur unter
metrics,diagnostics,consumable,controls,commands,zonesundraw - Diagnosewerte für RTK, Firmware, OTA, Netzwerk, GPS/Position, Karte und Fehler
- Reset-Buttons für Ladeport-, Kamera- und Klingen-Lebensdauer
- neue Befehle: Roboter finden, Grasablage, Scheibenwartungsmodus, Kantenmähen, Mähen nahe der Ladestation und Punktmähen
- Task-Befehle: Mähen pausieren/fortsetzen, Rückfahrt pausieren und Mähen beenden
- Steuerung für Mähen nahe der Ladestation
- Vollflächenmähen mit optionalem Kantenschnitt
- RTK-Antenne-bewegt-Warnung und Befehl zum Zurücksetzen dieser Warnung
Einige Befehle können je nach Modell, Firmware, aktuellem Mäherzustand und vorhandenen Karten-/Kantendaten nicht verfügbar sein oder vom Mäher abgelehnt werden.
Manuelles Zonenmähen
Die bekannten manuellen Zonen werden unter folgendem State als JSON-Array abgelegt:
<instance>.<serial>.zones.manual.listZum Starten einer oder mehrerer Zonen kann in diesen State geschrieben werden:
<instance>.<serial>.commands.mowing.startZoneAkzeptierte Werte:
- einzelne Zone per ID:
3 - einzelne Zone per Name:
Front yard - mehrere Zonen kommasepariert:
3,5,Back yard - mehrere Zonen als JSON-Array:
[3,5,"Back yard"]
Automatische Zonen liegen unter
<instance>.<serial>.zones.autoListund werden mit<instance>.<serial>.commands.mowing.startAutoZonegestartet.Punktmähen
Punktmähen wird über folgenden State gestartet:
<instance>.<serial>.commands.mowing.startPointAkzeptierte Werte:
- Koordinaten als Text:
123,456 - Koordinaten als JSON-Objekt:
{"x":123,"y":456}
Nach erfolgreicher Ausführung wird der State wieder geleert.
Was getestet werden sollte
- Login mit Anthbot Account
- Erkennung eines oder mehrerer Mähroboter
- Aktualisierung von Status, Metriken, Diagnosewerten und Verbindungsstatus
- Start, Pause, Fortsetzen, Stoppen und Beenden von Mähaufgaben
- Rückkehr zur Ladestation sowie Pause der Rückfahrt
- manuelles und automatisches Zonenmähen, falls Zonen in der Anthbot App vorhanden sind
- Punktmähen, Kantenmähen und Mähen nahe der Ladestation, falls vom Gerät unterstützt
- Reset der Verbrauchsmaterial-Werte nur dann, wenn der jeweilige Lebensdauerwert bei oder unter 5 Prozent liegt
- Verhalten bei falschen Zugangsdaten oder Cloud-Verbindungsproblemen
Rückmeldungen bitte mit Adapterversion, ioBroker/js-controller Version, Node.js Version und relevanten Logauszügen posten. Bitte keine Zugangsdaten, Tokens, Seriennummern oder andere persönliche Daten veröffentlichen.
Hinweis: Der Adapter ist inoffiziell und nicht mit Anthbot verbunden oder von Anthbot unterstützt.
Transparenzhinweis
Bei der Erstellung dieses Adapters wurde KI unterstützend eingesetzt, insbesondere bei Code-Entwurf, Strukturierung, Dokumentation und Prüfung. Die fachliche Verantwortung, Tests und Veröffentlichung liegen beim Entwickler.
Installation
Über ioBroker Admin
- Adapteransicht öffnen.
- Über das GitHub-/Custom-Installationssymbol installieren.
- Für die aktuelle Version aus npm eine der folgenden Angaben verwenden:
iobroker.anthbot-genieoder exakt:
iobroker.anthbot-genie@0.1.0Alternativ direkt aus GitHub:
https://github.com/reloxx13/ioBroker.anthbot-genie- Nach der Installation eine Instanz des Adapters anlegen.
- In der Adapterkonfiguration Anthbot Benutzername, Passwort und Landesvorwahl eintragen.
- Instanz starten und Log sowie States prüfen.
Über CLI
Installation der aktuellen Version über npm:
iobroker add anthbot-genieoder exakt:
iobroker add anthbot-genie@0.1.0Alternativ direkt aus GitHub:
iobroker url https://github.com/reloxx13/ioBroker.anthbot-genieFalls die Instanz nach der Installation noch nicht automatisch angelegt wurde:
iobroker add anthbot-genie --enabled -
Hallo zusammen,
anbei ein Blockly-Beispiel für eine automatische Steuerung des Anthbot Genie Mähroboters über den Adapter
anthbot-genie.Das Blockly startet nicht einfach stur nach Uhrzeit, sondern prüft mehrere Bedingungen, bevor ein Zonenmähen ausgelöst wird. Ziel ist, dass der Mähroboter nur dann automatisch fährt, wenn Wetter, Akku und letzter Mähzeitpunkt passen.
Kurzüberblick
Info Wert Script Main.Maehroboter.sharing.xmlAdapter anthbot-genieAdapterversion 0.1.0Wetterquelle weatherundergroundBenachrichtigung Telegram Funktion automatisches Zonenmähen Zeitfenster Montag bis Samstag, 09:00 bis 21:00 Uhr Prüfung alle 30 Minuten Beispiel-Zonen 102,101,100Was das Blockly macht
Das Script legt zuerst eigene Hilfs-States unter
0_userdata.0.maehroboter.*an:lastZoneMowlastRainlastZoneMowAttempt
Diese States werden genutzt, um zu speichern, wann zuletzt gemäht wurde, wann zuletzt Regen erkannt wurde und wann zuletzt ein Startversuch ausgeführt wurde.
Regenlogik
Das Blockly prüft regelmäßig die Regenwerte aus
weatherunderground.1.forecastHourly.Wenn in der aktuellen Stunde Regen erkannt wird, wird
lastRainaktualisiert. Falls der Mähroboter gerade mäht, sendet das Script zusätzlich den Befehl zur Rückkehr zur Ladestation:anthbot-genie.0.SERIAL_NUMBER.commands.docking.startReturn = trueZusätzlich wird eine Telegram-Nachricht gesendet, dass Regen erkannt wurde und der Mähroboter zur Ladestation fährt.
Bedingungen für automatisches Zonenmähen
Das automatische Zonenmähen wird nur gestartet, wenn alle Bedingungen erfüllt sind:
- Adapter ist verbunden
- Mähroboter ist online
- aktuell kein Regen
- in den nächsten konfigurierten Forecast-Stunden kein Regen
- Luftfeuchtigkeit ist maximal
85 % - letzte Zonenmahd ist mindestens
72 Stundenher oder wurde noch nie gespeichert - aktuelle Uhrzeit liegt vor bzw. bei
21:00 - nach erkanntem Regen ist die vom Mähroboter gemeldete Wartezeit abgelaufen
- Akku ist mindestens
90 % - letzter Startversuch ist mindestens
6 Stundenher oder wurde noch nie gespeichert
Wenn diese Bedingungen erfüllt sind, schreibt das Blockly die gewünschten Zonen in:
anthbot-genie.0.SERIAL_NUMBER.commands.mowing.startZoneIm Beispiel werden die Zonen so gestartet:
102,101,100Danach sendet das Script eine Telegram-Nachricht und aktualisiert
lastZoneMowAttemptsowielastZoneMow.Wartungshinweise
Zusätzlich überwacht das Blockly die Lebensdauerwerte für:
- Klingen
- Kameras
- Ladeport
Wenn einer dieser Werte auf
5 %oder weniger fällt, wird eine Telegram-Nachricht mit dem aktuellen Restwert gesendet.Erkennung manueller Starts
Zusätzlich überwacht das Blockly den Status:
anthbot-genie.0.SERIAL_NUMBER.metrics.status.mowerWenn der Status auf
mowingwechselt, werdenlastZoneMowAttemptundlastZoneMowebenfalls aktualisiert. Dadurch erkennt das Script auch Starts, die nicht durch dieses Blockly ausgelöst wurden, und verhindert unnötige doppelte Starts.Anpassungen vor der Nutzung
Vor dem Import müssen mindestens diese Werte angepasst werden:
- Seriennummer im Objektpfad des Mähroboters
- gewünschte Zonen-IDs für
commands.mowing.startZone - Wetter-Objektpfade von
weatherunderground - Telegram-Instanz und Benutzer
- gewünschtes Zeitfenster
- Grenzwerte für Luftfeuchtigkeit, Akku und Wartezeiten
In der geteilten XML-Datei sind die Seriennummer als
SERIAL_NUMBERund der Telegram-Benutzer alsUSERersetzt. Diese Platzhalter müssen nach dem Import angepasst werden.Hinweis
Das Blockly ist nur ein Beispiel und sollte nach dem Import zuerst mit den eigenen Objektpfaden und Logausgaben geprüft werden. Besonders die Zonen-IDs müssen zur eigenen Anthbot-Konfiguration passen.
-
iobroker url https://github.com/reloxx13/ioBroker.anthbot-genie
Da der Adapter auf npm verfügbar ist, sollte vorzugsweise von npm installiert werden.
Von direkten Installation von GitHub - insbesondere auf produktiven Systemen - wird explizit abgeraten.
DANKE für deine Arbeit.
Wenn der Adapter für User funktioniert lass ihn in die Repositories aufnehmen:
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden