[Modul] Worx, Kress, Landxcape-Adapter

Worx, Kress, Landxcape-Adapter (bisher Worx Landroid MQTT)

Das Modul regelt die Kommunikation zwischen der MQTT-Landroid-Bridge und IP-Symcon. Die MQTT-Landroid-Bridge stellt die Verbindung zur WorxCloud her.

Die Funktion der MQTT-Landroid-Bridge kann nur sichergestellt werden, solange Worx die Cloud-Schnittstelle nicht verändert.

Ab der Version V3.03 wird die bisherige Landroid-Bridge nicht mehr unterstützt! BITTE DIE BISHERIGE LANDROID-BRIDGE DURCH DIE MQTT-LANDROID-BRIDGE ERSETZEN!

Voraussetzung

  1. Worx Landroid, Kress Mission oder Landxcape Mähroboter, der mit der Worx-, Kress- bzw. Landxcape-Cloud verbunden ist
  2. konfigurierte und gestartete MQTT-Landroid-Bridge

Konfiguration der MQTT-Landroid-Bridge

Im Hauptverzeichnis der MQTT-Landroid-Bridge befindet sich die config.json. Mit dieser wird die Bridge wie folgt konfiguriert.

{
	"cloud": {
	    "email": "deinemail@mailserver.org",
	    "pwd": "TopSecret!",
	    "type": "worx"
	},
	"mqtt": {
	    "url": "mqtt://DeinIPS-Server"
	},
	"mower": [
		{
		    "sn": "SerienNummerDeinesMähroboters",
		    "topic": "MeinLieblingsMäher"
		}
	],
	"logLevel": "info"
}

Soll der MQTT-Server von IP-Symcon mit Nuternamen und Passwort geschützt werden, dann ist die Konfiguration wie folgt anzupassen

{
	"mqtt": {
	    "url": "mqtt://user:password@DeinIPS-Server"
	},
}

Ist beim MQTT-Server von IP-Symcon ein alternativer Port eingestellt, dann ist die Konfiguration wie folgt anzupassen

{
	"mqtt": {
	    "url": "mqtt://DeinIPS-Server:PortdesMQTT-Servers"
	},
}

Beide Anpassungen lassen sich auch kombinieren.

Die Beschreibung der Parameter und weiterführende Einstellungen (z.B. Multimäher-Betrieb) findest Du im README der MQTT-Landroid-Bridge.

Nach jeder Änderung der config.json bitte die MQTT-Landroid-Bridge neu starten.

Konfiguration in IP-Symcon

Eine Gateway-Instanz anlegen und als Topic „MeinLieblingsMäher“ (wie in der config.json) eingeben. Das Topic ist frei wählbar, muss aber zwingend in der config.json und im Gateway gleich sein. Wenn noch kein MQTT-Server existiert, wird automatisch einer angelegt und passend konfiguriert.

Solltet Ihr bereits einen laufenden MQTT-Server haben, wird das Modul automatisch mit diesem verbunden. In diesem Fall bitte kontrollieren, ob der Standard-Port für MQTT (1883) eingestellt ist.

Damit ist die Kofiguration abgeschlossen und die Kommunikation mit dem Mäher funktionieren.

Jetzt können die weiteren Instanzen (Zonen, Infos und Scheduler) angelegt werden.

Dokumentation
Die Dokumentation ist hier zu finden: Worx Landroid MQTT
Und hier sind die PHP-Befehle für die Zonen, den Aufgabenplaner, die einmaligen Aufgaben und die erweiterten Einstellungen beschrieben.

3 „Gefällt mir“

Changelog

V1.00
Grundversion

V1.01
Fix: Status-Abfrage nach Konfiguration des Moduls
Fix: Status-Button startet Landroid
Neu: WRX_Status

V1.02
Fix: Error/Status-Code auswertbar als Integer
Neu: Statistische Daten, Lade-Info

V2.00
Neu: Verbindung über Landroid-Bridge

V2.01
Neu: Mähzone und Gierwinkel

V2.02
Fix: WRX_Start() ohne Funktion

V2.03
Fix: Topic-Fehler bei Befehlen

V3.00
Neu: Komplett überarbeitete Struktur mit Gateway, Zonen, Infos, Zeitplaner

V3.01
Neu: Kompatibilität zu älteren Geräten/Firmware
Neu: Verbleibende Regenverzögerung

V3.02
Fix: WRX_SetSchedule für 2. Zeitbereich

V3.03
Neu: Unterstützung der neuen MQTT-Landroid-Bridge
Neu: Unterstützung für Kress Mission und Landxcape
Neu: online-Kontrolle für Mäher und Bridge

V3.04
Fix: Fehlermeldung Scheduler unter IP-Symcon V6.0

V3.05
Neu: Experteneinstellungen für Modelle ab 2019

V3.06
Neu: Einmalige Aufgaben (Mähen, Kantenschnitt)

Hi Jürgen,

Klasse Arbeit - vielen Dank. :slight_smile:

Du hast vermutlich geplant ??? die Statusmeldungen und die Messwerte auch mit auszulesen - oder ???

Besten Dank im Voraus

Ciao
HerbertF

Hallo HerbertF,

die Statusmeldungen und die Batterie-Messwerte werden ausgegeben. Was fehlt Dir?
Viele Grüße
Jürgen

Hi,

vermutlich bin ich betriebsblind :banghead: oder meine Verbindung ins Web funktioniert nicht einwandfrei :eek:

Wie komme ich denn an die Werte ?

Deine Instanz hat keine untergeordneten Elemente :eek: Der MQTT-Client und der Client-Socket liefert im Debug fleißig Daten, das Debug Deiner Instanz ist leer

Ciao
HerbertF

gucke mal, was bei den Daten im Debug unter Topic steht. Das sollte „sub“ sein. Dieses „sub“ musst Du dann auch in der Landroid-Instanz eintragen. Dann sollten die Daten auch kommen.

Viele Grüße
Jürgen

Gute Frage …

ne, da kommt noch nichts. Der Landroid sendet einmal beim Einschalten und dann alle 10 Minuten. Es kann also einen Moment dauern, bis die ersten Daten reinkommen.

probiere mal

WRX_Stop(12345);

Damit kann man auch eine Rückmeldung provozieren.

Die Datenanforderung bei Installation bringe ich aber rein.

Viele Grüße
Jürgen

-gelöscht-

ja, das sieht nach einem Fehler aus. Hast Du alles nach meiner Anleitung durchgeführt?

Firewall habe ich nichts gemacht.

Viele Grüße
Jürgen

Vermutlich hatte ich in der Bridge-conf einen Tippfehler :banghead: - jetzt geht es :smiley:

sehr schön :cool:

Mein erster Versuch ist erstmal gescheitert, die Testmaschine mit Armbian hatte eine zu alte libc6, die ich dann „einfach“ manuell upgedated habe. Nun ist die Kiste platt und ich muss sie erstmal neu machen :(.

Aufpassen ist besser wie nebenbei kaputt spielen :banghead:.

Die libc6 manuell updaten ist Teufelszeug. Habe ich auch schon hinter mir. Wollte das aktuelle Firefox installieren…
…definitiv keine gute Idee. Kommt man nicht ohne weiteres wieder zurück zu einem einwandfreien System.:mad:

ist aber eigentlich erstaunlich. Habe das Ganze auch auf Armbian laufen. Die sind eigentlich immer sehr aktuell. Hast Du Buster oder Stretch laufen?

Hallo Test-User. Das erste Update ist verfügbar und verbessert das Installationsverhalten. Desweiteren gab es einen Bug mit dem Status-Button. Dieser hat den Landroid gestartet -> ist auch behoben. :slight_smile:

Viel Spaß beim weiteren Testen.
Jürgen

Hi Silberstreifen,

funktioniert wirklich Klasse :wink:

Da ich die Status- und Fehlermeldungen weiter verarbeite :eek: wäre es sehr schön, wenn ich Deine deutschen Texte wie z.B. „in Ladestation“ aus der Doku lesen könnte. Alternativ kann ich dies sicher auch irgendwo (wo?) in Deinen Files auf github finden …? Oder halt warten bis jeder Status/Fehlermeldung mal da war :eek:
Es wäre auch schön, wenn Du Änderungen an den Texten hier vorher kommunizieren könntest bzw. am besten vermeidest;)

Ciao und nochmals vielen Dank
HerbertF

@herbertf
Das ist hier hard codiert und wird zusätzlich noch durch die local.json übersetzt.

@Silberstreifen
Die Daten sind doch ein int?
Warum nutzt du eine String Variable und keine Integer mit Assoziationen?
Michael

Danke Michael,
sehr gute Idee. Wird im nächsten Release umgesetzt.

@herbertf
…dann kannst Du den Zahlencode unabhängig vom angezeigten Begriff auswerten.
Viele Grüße
Jürgen

Das ist supi :slight_smile:
Wenn ich jetzt noch den Wunsch äußern dürfte auch die Mähdauer, die Mähstrecke und die Richtung mit zu bekommen?

PS: Eine ganz andere Frage: Wieso hat sich worx diesen bescheuerten Host-Namen mit Leerzeichen „Robotic Mower“ ausgedacht:banghead: Kann man den ändern?

Ciao
HerbertF

Mähdauer, -strecke sind geplant. Die habe ich allerdings noch nicht entschlüsselt, da mein Worx noch kein Kabel und keinen Rasen hat und damit auch noch nicht fährt. :o
Ich gehe aber davon aus, dass es st->d, st->b und st->wt sind. Kannst Du bei Dir mal gucken, ob das passt? Dann ist das schnell umgesetzt.

Wo hast Du den Host-Namen her? Kommt mir irgendwie unbekannt vor.

Viele Grüße
Jürgen