[Modul] Worx, Kress, Landxcape, Ferrex-Adapter

Ja, Landroid-Bridge muss neu gestartet werden.
Nein, mit den Einstellungen hat das normalerweise nichts zu tun. Hast Du Dein Cloud-Passwort geändert? Das ist der häufigste Grund.

Viele Grüße
Jürgen

Nein hab das PS nicht geändert.
Es ist ganz merkwürdig. Über mobiles Datennetz am Smartphone kann ich die App starten. Im WLAN hängt sich die App schon beim starten auf und das alles seitdem ich gestern versucht habe den Robbi mit IPS zu verbinden.
Neuinstallation der App --> beim anmelden sagt er im WLAN „Verbindungsfehler“.
Danach umschalten auf mobiles Datennetz, Login geht ganz normal:confused:

das ist ja komisch. WLAN irgendetwas geändert?

Nein auch nicht. Das ist ganz merkwürdig. Habe den Robbi in der App nun nochmal neu mit dem WLAN verbunden. Ich kann den Status (fahren, rückkehr ausgangsposition etc.) durch aktualisieren des Hauptbildschirms der App abrufen, aber ich kann weder starten, noch Einstellungen wie Regenverzögerung etc. über die App vornehmen. Ich hatte bei meinem letzten Worx das Problem, dass er sich nicht mit dem Haupt-Wlan verbinden konnte. Nur ein zusätzliches Gast WLAN hat geholfen den Robbi einzubinden. Würde ich nochmal ausprobieren, aber wie gesagt beim 1. Robbi konnte ich den gesamten „Smartlink-Vorgang“ nicht ausführen.

EDIT: Also es ist nach wie vor kurios. Ich habe den Robbi nun 3 mal neu ans WLAN angebunden.

  1. mal an das Haupt WLAN der Fritzbox --> Verbindung steht, Status kann abgerufen werden, aber keine Einstellungen, kein Start/Stop möglich
  2. mal an das GastWLAN angebunden --> Verbindung steht, es kann sowohl gestartet, als auch gestoppt werden.
    Weil ich danach das Smartphone nochmal mit Haupt-WLAN und danach mit mobilem Datennetz betrieben habe, NOCHMAL neu verbunden danach, da zwischendurch wieder keine Einstellungen möglich und der Robbi selber auch angezeigt hat WLAN-getrennt (Im Display unter Diagnose)
  3. mal wieder ans GastWLAN angebunden und sämtliche Datennetze probiert. Lief wunderbar, start/stop und Einstellungen wie Regenverzögerung über die App möglich. Kontrolle direkt danach im Display vom Robbi zeigte das die Einstellungen dort übernommen wurden.

DANN an den PC und zu IPS gewechselt und versucht eine Kommunikation über die Bridge herzustellen, MQTT Port war in der Server Socket Instanz noch falsch, bzw. passte nicht zum config file --> geändert und aus der Landroid Instanz heraus „Befehle getestet“.
–> In allen Debug Fenstern in IPS sah ich, dass etwas herein und herausgeht.
Dann versucht über IPS die Regenverzögerung zu setzen und wollte diese per App kontrollieren --> wieder keine Verbindung in der App möglich. Drücke ich auf Speichern (oben rechts in der App) kommt ja normal das Pop-up mit „Verbindung zu Landroid“, das kommt jetzt einfach nicht mehr und man sieht nicht woran es liegt

der erste Punkt hört sich nach Firewall-Problem an. Hast Du dem Robbi ein eingeschränktes Profil gegeben?
der zweite Punkt hört sich nach Einschränkungen im Gast-WLan an. Welche Einschränkungen hast Du da eingestellt? (z.B. nur Surfen und Mail, Zwangstrennung nach 30 Minuten,…)

Manchmal hilft es auch den Robbi nochmal komplett in der Cloud zu löschen und von vorne anzufangen. Die Cloud hat da noch einige Bugs, wenn man das WLan wechselt. Auf alle Fälle müssen Handy und Robbi beim Anmelden in der Cloud im selben WLan sein, sonst läuft nichts.

Viele Grüße
Jürgen

Schau ich mir auf jeden Fall nochmal genauer an Danke.
Wie kann ich den Robbi denn aus der Cloud löschen?

EDIT: Ich nehme an einfach im worx Account anmelden und dort auf „unpair“?! Danach war er auch nicht mehr in der App ersichtlich. Hat aber leider nichts gebracht… Gastprofil hat keine Einschränkungen

Nachdem die App gestern und heute wieder wunderbar funktioniert hat (mehrmalsiges entfernen in der Cloud, verschiedene WLAN Netze probiert), wollte ich heute den Schritt weiter gehen und die Anbindung an IPS vornehmen. Nachdem ich den Robbi Testweise aus der Station geholt habe und dieser nach 20 min den automatischen shutdown gemacht hat, geht über die App wieder nichts.

Es kann doch eig nicht sein, dass man regelmäßig den pair Vorgang zur Cloud vornehmen muss oder?

Du hast da schon ein komisches Verhalten.

Ich habe vor drei Jahren das Paaring durchgeführt, nach jeder Winterpause ohne Probleme wieder verbunden und noch nie Störungen mit der Cloud gehabt.

Ja ich meine auch das das nicht sehr SMART ist :D. Habe auch nochmal Positec angeschrieben und im roboter-forum gefragt.

Hi Marcell,

ich hatte hier die gleichen Probleme. Jetzt läuft es aber sehr stabil. Gefühlt :smiley: würde ich folgendes empfehlen:

  1. Löschen in der Cloud
  2. Neuverbinden mit APP (Anmeldung WLAN (an WLAN NIX mehr ändern!!!)
  3. Mit App nicht mehr rumspielen (3 Tage:banghead:)
  4. Neueinrichtung in IPS mit diesem Modul
  5. Stabile Funktion von IPS-Modul 3 Tage beobachten (auch Steuern, Zeitpläne…) es sollten regelmäßig Aktualisierungen erscheinen (in IPS)
  6. Die App kann wieder benutzt werden (was man aber eigentlich nicht braucht)

Summary: Ja, die Cloud-Lösung ist eigenartig:eek:

Ciao
HerbertF

Hi Herbert,

dann bin ich schonmal beruhigt. Dachte schon ich wäre zu doof :smiley:

Hab deine Pkt mal abgearbeitet und nochmals neu eingerichtet.
Jetzt muss ich aber wieder direkte Fragen zur bridge stellen.
In der Info heißt es:

Über das WebFront kann der Worx Landroid gestartet, gestoppt und eingestellt werden.
Darüber hinaus gibt es einen Befehlsatz zur Ansteuerung des Worx Landroid per Skript.

Heißt doch eigentlich nur, wenn ich die Instanz im WF verfügbar machen müsste ich steuern können oder den Status sehen oder? Das tut es leider nicht.

Testweise ein Skript ausgeführt mit WRX_Stop($ID) oder auch WRX_Status($ID) zeigt mir im Debug Fenster der Worx-Landroid Instanz nur zwei „Sended“ Befehle an, im MQTT Server btw auch. Aber es müsste doch auch irgendwas zurück kommen oder?

Jepp, es muss etwas zurückkommen;)

Wenn Du folgendes Script (Instanz ist Dein Worx-Modul) ausführst, kommt SOFORT eine Rückmeldung siehe Snapshot (dazu öffne bitte vom MQTT-Server das Debug-Fenster):


$Value='[["15:00",180,1],["15:00",180,1],["15:00",180,1],["15:00",180,1],["15:00",180,1],["15:00",180,1],["15:00",180,1]]';
echo $Value;
WRX_SetSchedule($InstanzID, $Value);

leider dasselbe wie mit dem WRX_Status Befehl… mmmh.
Wenn ich am raspberry node dist/server.js ausführe, sehe ich ja was der Server macht oder? zuerst hatte ich noch die Meldung „Port already in use 1883“ (dieser ist im config.json konfiguriert). Aber ich hatte die Ssrver Socket Instanz ebenfalls mit 1883 konfiguriert. Ist die dortige egal oder lasse ich die auf Standard? Nach dem einrichten war diese dort auf 1024.

Nachdem ich jedenfalls den Port in der Server socket instanz geändert habe, zeigt mir node dist/server.js nur immer an:

pi@raspberry:~/landroid-bridge $ node dist/server.js
[2020-06-18T12:34:11.431] [INFO] server.ts - Starting Landroid Bridge…
[2020-06-18T12:34:11.444] [INFO] server.ts - Setting port to 1883…
[2020-06-18T12:34:11.669] [INFO] Mqtt - Connecting to MQTT Broker…
[2020-06-18T12:34:11.677] [INFO] App - Adding static files path /home/pi/landroid-bridge/www
[2020-06-18T12:34:11.679] [INFO] Scheduler - Skipping scheduler initialization (not enabled)
[2020-06-18T12:34:11.693] [INFO] LandroidS - Initializing Landroid Cloud Service…
Mqtt url: undefined
[2020-06-18T12:34:13.411] [INFO] IoBrokerAdapter - mower 0 selected
[2020-06-18T12:35:11.694] [INFO] LandroidS - Could not finish initialization, retrying…
Mqtt url: undefined
[2020-06-18T12:35:12.922] [INFO] IoBrokerAdapter - mower 0 selected
[2020-06-18T12:36:11.694] [INFO] LandroidS - Could not finish initialization, retrying…

1883 ist richtig im MQTT-Server-Socket in IPS - läuft der - was sagt dessen Log

In der config.json folgendes:

"mqtt": {
    "enable": true,
    "url": "mqtt://user:password@localhost",
    "topic": "Shaun"
},

??
Bei localhost muss beides natürlich auf der gleichen Maschine sein?

Ok es tut sich etwas mehr…
Der Port in der Socket Instanz steht nun auf 1883 im config.json file stand dieser unter http auch auf 1883, weswegen immer die Meldung kam „Port is already in use“ BTW: der http port ist dafür da, um über den browser auf die bridge zuzugreifen?

Nunja mittlerweile kann ich wie gesagt schonmal aus IPS an den server auf dem pi senden wie es aussieht:

pi@raspberry:~/landroid-bridge $ sudo node dist/server.js
[2020-06-18T18:33:37.059] [INFO] server.ts - Starting Landroid Bridge...
[2020-06-18T18:33:37.069] [INFO] server.ts - Setting port to 3001...
[2020-06-18T18:33:37.288] [INFO] Mqtt - Connecting to MQTT Broker...
[2020-06-18T18:33:37.299] [INFO] App - Adding static files path /home/pi/landroi                                                                                         d-bridge/www
[2020-06-18T18:33:37.302] [INFO] Scheduler - Skipping scheduler initialization (                                                                                         not enabled)
[2020-06-18T18:33:37.318] [INFO] LandroidS - Initializing Landroid Cloud Service                                                                                         ...
[2020-06-18T18:33:37.432] [INFO] Mqtt - Successfully connected to MQTT Broker!
Mqtt url: undefined
[2020-06-18T18:33:43.519] [INFO] IoBrokerAdapter - mower 0 selected
[2020-06-18T18:34:14.521] [INFO] Mqtt - Incoming MQTT message to topic landroid/                                                                                         set/poll:
[2020-06-18T18:34:14.522] [INFO] LandroidS - Sending to landroid cloud: {}

Aber bisher noch kein response??? Nochmal an die Worx cloud anbinden?

Mit localhost hatte ich es zu Beginn meiner Versuche mal, war aber wohl ein anderer Fehler. bridge und IPS laufen aber auf dem Raspberry ja. user und passwort kann ich weglassen wenn ich im IPS MQTT Server auch nichts eingetragen habe?

Du hast die MQTT-Url in der config.json falsch gesetzt. Hier musst Du die Adresse Deines IPS-Rechners eintragen.

Viele Grüße
Jürgen

Schreibt ihr die Status-Meldungen mit und bekommt „immer alle“?

Ich habe immer wieder das Problem, dass scheinbar nicht alle Meldungen übermittelt werden. Im Beispiel fehlen ab 10:59 die Meldungen 3 und 33 zwischen 1 und 7. Bei der ersten Ausfahrt waren alle Meldungen da.

landroid-status.png

kann ich leider aktuell noch nichts zu sagen, da mein Robbi immer noch nicht im Einsatz ist. Heute ist aber Rasen eingesät worden. :smiley:
Mit etwas Glück, kann der Robbi dann in ca. 2-3 Wochen fahren. :rolleyes:

Viele Grüße
Jürgen

Du hast die MQTT-Url in der config.json falsch gesetzt. Hier musst Du die Adresse Deines IPS-Rechners eintragen.

Hier Trage ich doch wie auch oben nochmal beschrieben die IP des Zielrechners ein oder? Mein IPS und auch landroid-bridge laufen auf dem Raspberry mit der IP 192.168.178.50.
Demnach muss die Zeile mit der URL lauten:

„url“: „mqtt://192.168.178.50“,

oder

„url“: „mqtt://user: passwod@192.168.178.50“,

Wenn ich unter der MQTT Server Instanz in IPS einen user mit pw vergeben habe

EDIT: Hab auch mittlerweile schon einmal alles entfernt und neu aufgesetzt. Jetzt kommt das:

pi@raspberry:~/landroid-bridge $ sudo service landroid-bridge status
● landroid-bridge.service - Landroid Bridge
Loaded: loaded (/lib/systemd/system/landroid-bridge.service; disabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Fri 2020-06-19 15:26:56 CEST; 1s ago
Docs: https://github.com/weweave/landroid-bridge
Process: 17480 ExecStart=/usr/bin/node /home/pi/landroid-bridge/dist/server.js (code=exited, status=1/FAILURE)
Main PID: 17480 (code=exited, status=1/FAILURE)

Wenn beides auf dem gleichen Rechner läuft - reicht auch localhost …:wink: