Ah endlich ist es besser!
Der „Mähen“-Button startet tatsächlich einen Mähvorgang / Pause / Fortsetzung
Der „Aktualisieren“-Button funktioniert gut: Die Informationen erscheinen sofort
Aber es gibt trotzdem ein Problem: Der Roboter startet einen Mähvorgang in nur einer Zone und mit Standardparametern, die nicht gut sind. Ich weiß nicht, wo er die hernimmt?
Sie kommen nicht aus der Mammotion-App: Sie sind hartcodiert in src/mammotion/commands.js:210 (buildRouteContent). Es sind die Standardwerte von Home Assistant:
1 Randumlauf
25 cm Abstand zwischen den Durchgängen
Geschwindigkeit 0,3 m/s
Hinderniserkennung aktiviert
keine automatische Richtungsänderung
Schneidehöhe (src/mammotion/client.js:504): Die letzte vom Roboter gesendete Höhe. Falls er keine gesendet hat, sind es 60 mm (DEFAULT_BLADE_HEIGHT_MM, Zeile 52).
Die Mammotion-App speichert ihre Einstellungen im Telefon. Gladys kann sie nicht lesen.
Warum nur eine Zone
Gladys fordert die Liste der Zonen vom Roboter an (buildZoneListRequestContent, die „Liste der Zonenamen“), und startet dann das Mähen auf allen empfangenen Zonen.
Die wahrscheinlichste Hypothese: Diese Liste enthält nur Zonen die einen Namen haben. Zonen ohne Namen werden ignoriert. Das habe ich noch nicht überprüft.
Andere Möglichkeit: Der Roboter sendet die Liste in mehreren Nachrichten und Gladys behält nur die erste.
Um zu entscheiden, schaut in den Gladys-Logs nach der Zeile:
planning a route over N zone(s) (…)
Sie zeigt an, wie viele Zonen gefunden wurden und welche.
Was ich vorschlage zu korrigieren
Die echte Liste aller Zonen abrufen (die Liste der „Hashes“ der Karte, nicht nur die mit Namen).
Die Einstellungen in der Service-Konfiguration änderbar machen: Höhe, Abstand, Geschwindigkeit, Randumläufe, Zonen zum Mähen.
Soll ich diese Änderungen vornehmen? Wenn ja, sende mir die obige Logzeile und deine üblichen Einstellungen in der App.
[2026-10-02T15:35:24.944Z] [INFO] Starte die Mammotion-Integration...
[2026-10-02T15:35:25.154Z] [INFO] [gladys-sdk] verbunden mit Gladys (http://172.30.0.1:80)
[2026-10-02T15:35:25.533Z] [INFO] [mammotion] Angemeldet beim Mammotion-Cloud
[2026-10-02T15:35:26.763Z] [WARN] [mammotion] Aliyun-Bindungen nicht verfügbar: Abruf fehlgeschlagen
[2026-10-02T15:35:26.764Z] [INFO] 1 Rasenmäher auf dem Mammotion-Konto gefunden
[2026-10-02T15:35:30.804Z] [INFO] [mammotion] Luba-VPMBS8RA ist nicht auf Aliyun, wechsle zum Mammotion-Broker
[2026-10-02T15:35:31.340Z] [INFO] [mammotion-mqtt] Verbunden mit dem Mammotion-Broker mqtt-eu.mammotion.com
[2026-10-02T15:35:31.374Z] [INFO] [mammotion-mqtt] Folgt Luba-VPMBS8RA auf dem Mammotion-Broker
[2026-10-02T15:35:31.517Z] [INFO] [mammotion-mqtt] Erste Daten von Luba-VPMBS8RA erhalten (device_protobuf_msg_event)
[2026-10-02T15:37:37.269Z] [INFO] 1 Rasenmäher auf dem Mammotion-Konto gefunden
[2026-10-02T15:39:27.365Z] [INFO] onSetValue <- ext:ext-prohand-gladys-mammotion:mower:nNlJJBp0Cxx538To70i6000000:mowing = 1
[2026-10-02T15:39:28.121Z] [INFO] [mammotion] Luba-VPMBS8RA: Planung einer Route über 1 Zone(n) (Hinterer Garten), Klinge auf 50 mm
[2026-10-02T15:39:28.464Z] [INFO] [mammotion] Luba-VPMBS8RA: Route geplant (Ergebnis 0)
[2026-10-02T15:39:28.464Z] [INFO] [mammotion] Sende "start" an Luba-VPMBS8RA
[2026-10-02T15:40:07.907Z] [INFO] onSetValue <- ext:ext-prohand-gladys-mammotion:mower:nNlJJBp0Cxx538To70i6000000:refresh = 1
[2026-10-02T15:42:13.573Z] [INFO] onSetValue <- ext:ext-prohand-gladys-mammotion:mower:nNlJJBp0Cxx538To70i6000000:refresh = 1
[2026-10-02T15:42:31.332Z] [INFO] onSetValue <- ext:ext-prohand-gladys-mammotion:mower:nNlJJBp0Cxx538To70i6000000:mowing = 0
[2026-10-02T15:42:31.333Z] [INFO] [mammotion] Sende "pause" an Luba-VPMBS8RA
[2026-10-02T15:43:01.106Z] [INFO] onSetValue <- ext:ext-prohand-gladys-mammotion:mower:nNlJJBp0Cxx538To70i6000000:mowing = 1
[2026-10-02T15:43:01.107Z] [INFO] [mammotion] Sende "resume" an Luba-VPMBS8RA
[2026-10-02T15:43:37.579Z] [INFO] onSetValue <- ext:ext-prohand-gladys-mammotion:mower:nNlJJBp0Cxx538To70i6000000:dock = 1
[2026-10-02T15:43:37.580Z] [INFO] [mammotion] Sende "dock" an Luba-VPMBS8RA
[2026-10-02T15:44:32.548Z] [INFO] onSetValue <- ext:ext-prohand-gladys-mammotion:mower:nNlJJBp0Cxx538To70i6000000:refresh = 1
[2026-10-02T15:46:20.191Z] [INFO] onSetValue <- ext:ext-prohand-gladys-mammotion:mower:nNlJJBp0Cxx538To70i6000000:refresh = 1
und hier ist die fragliche Zeile: ```
[2026-10-02T15:39:28.121Z] [INFO] [mammotion] Luba-VPMBS8RA: Planung einer Route über 1 Zone(n) (Hinterer Garten), Klinge auf 50 mm
[2026-10-02T15:39:28.464Z] [INFO] [mammotion] Luba-VPMBS8RA: Route geplant (Ergebnis 0)
Schnittlänge: 60 mm
Geschwindigkeit: 0,6 m/s
32 cm zwischen den Durchgängen
Schnittwinkel: 111°
Mähpfadmodus: Zickzackpfad
Randmähgang: 0
Hinderniserkennung: deaktiviert
Mähgang der Sperrzonen: 0
Reihenfolge der Routen: Zuerst Zickzack
Startfortschritt: 0%
Ich habe basierend auf deinem Feedback Korrekturen in Version 1.0.9 eingespielt
Die Ursache
Um die Zonen zu kennen, fragte Gladys den Roboter nach seiner Zonenliste. Diese Liste enthält jedoch nur die Zonen, die einen Namen in der Mammotion-App haben. Bei mir hatte nur „Hinter“ einen Namen, von 6 Zonen.
Die Mäh-Einstellungen waren hart im Code codiert. Es sind die Standardwerte von Home Assistant: 1 Randumlauf, 25 cm, 0,3 m/s, Hinderniserkennung aktiviert.
Die Mammotion-App speichert ihre Einstellungen im Telefon: Gladys kann sie nicht lesen.
Was sich ändert
Gladys liest jetzt alle Elemente der Karte und behält die Zonen, mit oder ohne Namen (gleiche Methode wie die von Home Assistant verwendete PyMammotion-Bibliothek).
Der Typ jedes Kartelements wird nur einmal abgefragt, um den Mammotion-Cloud nicht zu überlasten.
Wenn der Roboter nicht antwortet, kehrt Gladys zum alten Verhalten zurück (nur benannte Zonen).
Neuer Abschnitt „Neues Mähen“ in der Integrationskonfiguration:
Zonen zum Mähen (durch Kommas getrennte Namen, leer = alle Zonen)
Schnitthöhe, Geschwindigkeit, Abstand der Bahnen, Winkel
Bahnmodus (Zickzack / Schachbrett), Reihenfolge der Routen
Randumläufe, Umläufe der verbotenen Zonen
Hinderniserkennungsmodus
Die Logs zeigen jetzt die Zonen und alle an den Roboter gesendeten Einstellungen an.
Standardwerte
60 mm, 0,6 m/s, 32 cm, 111°, Zickzack, zuerst Zickzack, 0 Randumläufe, 0 Umläufe der verbotenen Zonen, Hinderniserkennung deaktiviert.
Punkte zur Bestätigung an einem echten Roboter
Der Winkel wird im „relativen“ Modus gesendet. Zu überprüfen im Vergleich zu „Anpassen“ in der App.
„Deaktiviert“ für die Hinderniserkennung entspricht dem Wert 0 (direkter Kontakt). Zu bestätigen.
Eine namenlose Zone heißt „Zone 1“, „Zone 2“… in den Logs. Um sie in „Zonen zum Mähen“ auszuwählen, ist es besser, ihr in der App einen Namen zu geben.
jetzt: input / binary, die Standard-Ja/Nein-Messung von Gladys
gleicher Wert 0/1, und sie funktioniert weiterhin in den Szenen
Neue Kennung charging-state (statt charging): Die alte Messung wird nicht mehr unterstützt.
Zusätzlich: Eine Batterie mit 0 % aus der Cloud wird ignoriert. Die protobuf-Berichte taten dies bereits. Ein solcher 0 %-Wert würde denselben falschen Alarm auslösen.
Dokumentation: README, docs/fr.md und docs/en.md aktualisiert, mit einem Eintrag in der Fehlerbehebung.
Tests: Ein Test überprüft, dass nur die Batterie in % in der Kategorie Batterie bleibt.
Für Chris75, nach dem Update
Den Tab Entdeckung öffnen und auf Aktualisieren beim Rasenmäher klicken.
Gladys entfernt dann die alte Messung « Ladevorgang ». Ich habe dies im Gladys-Code (device.create.js) überprüft. Der Alarm stoppt.
Solange dieser Klick nicht erfolgt, bleibt die alte Messung mit ihrem letzten Wert gespeichert. Der Alarm am Samstag kann daher weiterhin ausgelöst werden.
Ich habe ein Problem beim Speichern der Konfiguration:
Die Auswahl für die Bewegungsgeschwindigkeit akzeptiert nur 2 Werte: 0,2 und 1,2
Daher wird der Standardwert (0,6) nicht akzeptiert
Daher startet der „Mähen“-Knopf immer das Mähen mit den Standardeinstellungen der Mammotion-App
Anderes Problem: Der „Zurück zur Basis“-Knopf bringt den Roboter tatsächlich zur Basis zurück, lässt den Status aber auf „Pause“ und die Mammotion-App bleibt ebenfalls in der Pause, sodass man in der Mammotion-App auf „Stop“ drücken muss
Letzte Frage: Es wäre schön, den Roboter wie die externe Integration „dreame“ steuern zu können, d. h. alle Einstellungen in Geräten (und nicht auf Konfigurationsebene) vornehmen zu können, um dann mit diesen Einstellungen einen Mähvorgang zu starten
1. Die Konfiguration wurde nicht gespeichert (Geschwindigkeit)
Das Geschwindigkeitsfeld akzeptierte nur 0,2 und 1,2: Das Formular von Gladys schreitet ab dem Minimum in Schritten von 1 voran.
Folglich wurde nichts gespeichert (Zonen, Höhe…). Der Mähvorgang startete mit den Standardwerten.
Die Geschwindigkeit ist jetzt eine Liste von 0,2 bis 1,2 m/s.
2. „Zurück zur Basis“ ließ den Mähvorgang in der Pause
Bei einem Mähvorgang in der Pause sendet Gladys zuerst Stop, dann Zurück zur Basis, wie in der App.
Kein Bedarf mehr, in der Mammotion-App auf Stop zu drücken.
Während eines laufenden Mähvorgangs (nicht in der Pause) ändert sich nichts: einfacher Rückweg, der Mähvorgang kann danach wieder aufgenommen werden.
3. Neu: Einstellungen am Gerät (wie bei Dreame)
Der Rasenmäher hat jetzt Listen „Einstellung – …“: Zonen, Schnitthöhe, Geschwindigkeit, Abstand, Winkel, Trajektorienmodus, Umfangsrunden, Hinderniserkennung, Runden der verbotenen Zonen, Reihenfolge.
Die Werte werden gewählt (Armaturenbrett oder Szene), dann wird Mähen eingeschaltet: Der Mähvorgang startet mit diesen Einstellungen.
Zu Beginn übernehmen die Listen die Werte der Konfiguration.
Eine Wahl am Gerät gilt nur für diesen Rasenmäher.
Ein neuer in der Konfiguration gespeicherter Wert wird auf alle Rasenmäher angewendet.
Die Zonenliste bietet „Alle Zonen“ und dann jede Zone der Karte. Die Karte wird beim Start der Integration und bei jedem Mähvorgang gelesen.
Beispielszene: Samstags „Zonen zum Mähen“ = „Vorderseite“ dann Mähen; Mittwochs „Alle Zonen“.
Nach dem Update
Den Tab Entdeckung öffnen und auf Aktualisieren beim Rasenmäher klicken. Ohne das erscheinen die Listen nicht.
Die Konfiguration einmal neu speichern, da die Geschwindigkeit jetzt eine Liste ist.
Zu testen auf deiner Seite, Chris75
Pause dann Zurück zur Basis: Fährt der Rasenmäher richtig zurück und ist die App nicht mehr in der Pause?
Wenn die Zonenliste nur „Alle Zonen“ anzeigt, hat der Rasenmäher seine Karte noch nicht gesendet: Die Integration mit eingeschaltetem Rasenmäher neu starten.
Ihr habt super gearbeitet und viele Probleme in kürzester Zeit gelöst. Mein Roboter wurde sofort entdeckt, jetzt versuche ich, alle Elemente zu verstehen, die hochkommen, und dann Szenen zu erstellen, die meinen Bedürfnissen entsprechen. Ich werde euch nicht viel helfen können, ich bin leider eher ein Mitläufer. Ich entdecke eigentlich gerade Gladys…
Durchzuführende Änderungen: Anpassungen für den Roboter Luba 2
Schneidehöhen-Einstellung: von 25 mm auf 70 mm in 5-mm-Schritten
Geschwindigkeits-Einstellung: von 0,2 m/s auf 0,8 m/s in 0,1 m/s-Schritten
Einstellung des Abstands der Bahnen: von 20 cm auf 32 cm in 1-cm-Schritten
Einstellung des Schneidewinkels der Bahn: Es gibt 2 Einstellungen
– Auswahl zwischen « optimal », « anpassen », « zufällig »
– dann, wenn « anpassen » gewählt wird, gibt es eine Einstellung des Winkels: von 0° bis 180° in 1°-Schritten (wichtig, um schöne parallele/perpendikuläre Linien zum Haus zu haben)
Fehlende Möglichkeit, mehrere Zonen zum Mähen auszuwählen (gleiches Problem wie bei der externen Integration Dreame)
und, falls möglich, ein « Karten »-Widget erstellen, das die Zonen und die Positionierung des Roboters anzeigt (siehe auch, was bei der externen Integration Dreame gemacht wird)
Alles, was du gefragt hast, ist in der Version 1.1.0 enthalten, inklusive der Karte.
Die Listen folgen dem Mähroboter-Modell
Gladys liest das Modell aus dem Namen des Mähroboters (Luba-VP… für dich).
Bei deinem Luba 2 X:
Schnitthöhe: 25 bis 70 mm in 5-mm-Schritten
Geschwindigkeit: 0,2 bis 0,8 m/s in 0,1-Schritten
Abstand: 20 bis 32 cm in 1-cm-Schritten
Runden der No-Go-Zonen: 0 bis 3.
Schnittwinkel
Neue Liste „Winkeltyp“: Optimal, Anpassen, Zufällig.
Dann „Angepasster Winkel“: 0 bis 180° in 1°-Schritten.
Neue Einstellungen
Adaptiver Zickzack-Modus im Pfadmodus hinzugefügt.
Startfortschritt: 0 bis 99 % in 1 %-Schritten.
Mehrere Rasenflächen zum Mähen
Ein Schalter „Rasenfläche zum Mähen – …“ pro Karte (ersetzt die alte Liste „Rasenflächen zum Mähen“).
Du schaltest die gewünschten Flächen ein und dann „Mähen“.
Wenn keine Fläche eingeschaltet ist, mäht der Roboter alle Flächen.
Neue Werte während des Mähens
Mähfortschritt (%)
Verstrichene Mähzeit (Min.), zusätzlich zur verbleibenden Zeit
Zu mähende Fläche (m²)
Die Karte
Der Mähroboter hat jetzt eine Karte: ein Bild mit den Flächen und ihren Namen, den No-Go-Zonen in Grau und dem Roboter als roter Punkt.
Leuchtend grün: die Flächen des nächsten Mähvorgangs. Blassgrün: die anderen.
Das Bild folgt dem Roboter während des Mähens.
Zum Anzeigen: Auf dem Dashboard ein Widget „Kamera“ hinzufügen und den Roboter auswählen.
Nach dem Update
Registerkarte „Entdecken“ → „Aktualisieren“ am Roboter. Ohne das werden die Neuerungen nicht angezeigt.
Die Schalter für die Flächen und die Karte kommen, sobald die Karte gelesen wurde: Der Roboter muss beim Start der Integration eingeschaltet sein.
Beim ersten Start liest Gladys die Umrisse der Flächen nur einmal. Das dauert etwas länger als sonst.
Chris75, bitte teste das auf deiner Seite
Winkeltyp und adaptiver Zickzack: Ich bin mir nicht zu 100 % sicher, welche Werte an den Roboter gesendet werden. Kannst du einen Mähvorgang über die Mammotion-App starten mit:
Winkel „Anpassen“ (z. B. 45°)
dann Winkel „Zufällig“
dann Modus „Adaptiver Zickzack“
Nach jedem Versuch suche in den Logs der Integration nach „route settings seen“ und füge mir die Zeilen hinzu. Ich werde korrigieren, falls nötig.
Die Karte: Ist sie im richtigen Verhältnis zur App oder gedreht oder gespiegelt? Ist der rote Punkt am richtigen Ort? Ein Screenshot würde helfen.
Die Einstellungen: Startet ein von Gladys gestarteter Mähvorgang mit den gewählten Flächen, der richtigen Höhe und der richtigen Geschwindigkeit?
Bilder der Zonen mit Roboterposition: Ich hoffe, dass die Positionierung des Roboters das Mammotion-Cloud-Kontingent (ca. 600 Nachrichten in 12 Stunden) nicht überschreitet
Ich habe die Tests noch nicht abgeschlossen, weil es Nacht ist!!
Ansonsten gibt es beim Speichern der Gerätekonfiguration einen Fehler:
Die Geräteseite sendet das gesamte Gerät an Gladys, und Gladys lehnt alles über 100 kB ab.
Die Listen „Benutzerdefinierter Winkel“ (181 Optionen) und „Startfortschritt“ (100 Optionen) sowie das Kartenbild überschritten dieses Limit.
Diese beiden Einstellungen sind jetzt Schieberegler (Schrittweite 1): 0 bis 180° und 0 bis 99 %.
Falls der Fehler wieder auftritt, könntest du die Gladys-Logs (nicht die der Integration) zum Zeitpunkt des Klicks auf „Speichern“ überprüfen? Ich suche nach einer Zeile mit „too large“ oder „PayloadTooLarge“.
Benutzerdefinierter Winkel: 111° entspricht 69°
Der Rasenmäher zählt den Winkel in die andere Richtung (69 = 180 − 111).
Gladys sendet jetzt den Winkel wie die App: 111° in Gladys = 111° in der App.
„Zone 2“ statt „Zone 1“
Die App nummeriert die benannten Zonen ab 0, Gladys begann bei 1.
Das ist korrigiert: Zone 1, Zone 4, Zone 5, wie in der App.
Der Schalter „Zone zum Mähen – Zone 2“ wird zu „Zone zum Mähen – Zone 1“. Vergiss nicht, ihn in deinen Szenen wieder zu aktivieren.
Abstand der Bahnen
Luba 2 X: 20 bis 35 cm in 1-cm-Schritten.
Mammotion-Cloud-Quota
Die Karte sendet keine zusätzlichen Nachrichten. Sie verwendet die Position, die der Rasenmäher bereits während des Mähens sendet.
Die Integration fragt den Status höchstens einmal alle 5 Minuten ab (ca. 144 in 12 Stunden). Der „Aktualisieren“-Button fügt bei jedem Klick einen weiteren ab.
Nach dem Update
Registerkarte „Entdeckung“ → „Aktualisieren“ am Rasenmäher. Ohne das werden die Schieberegler und die neuen Zonennamen nicht angezeigt.
Anschließend den Winkel und den Fortschritt erneut über die Schieberegler auswählen.
Zu testen auf deiner Seite, Chris75
Winkel 111° von Gladys: Zeigt die App korrekt „Personalisieren 111“ an?
Funktioniert das Speichern des Geräts?
Und wenn es hell wird: Fortsetzung der Tests (Winkeltyp „Zufällig“, adaptives Zickzack, Kartenausrichtung).
Und bezüglich der Geräte „Mähen“ und „Zurück zur Basis“:
Wenn ich „Mähen“ stoppe und dann „Zurück zur Basis“ drücke, hört der Roboter tatsächlich auf zu mähen, kehrt zur Basis zurück, aber ich muss auf „Stop“ in der Mammotion-App drücken, um die Aufgabe abzuschließen
Es fehlt nur noch der Selektor für mehrere zu mähnende Zonen, und dieser Selektor muss auch die Reihenfolge beachten, in der die Zonen ausgewählt werden (wie in der Mammotion-App)
Aktuell wähle ich die 6 Zonen über Schalter aus, und die Reihenfolge wird nicht beachtet