Worx Rasenroboter - was gibt die webschnittstelle her

Begonnen von ritter_runkel, 27 Juni 2016, 23:36:10

Vorheriges Thema - Nächstes Thema

Allgaeuer


FFHEM

Hallo Otto und Allgaeuer,
ich habe nun auch den iobroker.worx nach der Anleitung im Git installieren, hier hat auch alles geklappt. Server läuft (angeblich).
Nur funktioniert er irgendwie nicht mit FHEM zusammen, sprich:
Mein Device "Shaun", welches letztes Jahr noch mit dem Landroid-Adapter funktionierte, bekommt jetzt keine Daten, denn hier liegen noch die vom vorigen Jahr drin, s. List unten:
Nur "localhost: Verbindungsaufbau abgelehnt (111)" wird als neue Antwort angezeigt.



Internals:
   CHANGED   
   DEF        localhost
   FUUID      5cbd6d5e-f33f-26cd-6acb-0f1f9d6968ea4be8
   HOST       localhost
   INTERVAL   180
   NAME       Shaun
   NR         689
   PORT       8001
   STATE      Zeitverlängerung: -100 % Pause Batterie: 4.5 °C,  18.55 V, 83 %, No error  -69 dBm
   TYPE       LANDROID
   READINGS:
     2019-11-16 03:08:44   JSON_Error     
     2019-11-16 03:08:44   areasArea1      0
     2019-11-16 03:08:44   areasArea2      0
     2019-11-16 03:08:44   areasArea3      0
     2019-11-16 03:08:44   areasArea4      0
     2019-11-16 03:08:44   areasStartSequence 0,0,0,0,0,0,0,0,0,0
     2019-11-16 03:08:44   batteryChargeCycle 221
     2019-11-16 03:08:44   batteryCharging false
     2019-11-16 03:08:44   batteryLevel    83
     2019-11-16 03:08:44   batteryTemperature 4.5
     2019-11-16 03:08:44   batteryVoltage  18.55
     2019-11-16 03:08:44   bladeTimeCounter 19547
     2019-11-16 03:08:44   calendarWeekday0BorderCut false
     2019-11-16 03:08:44   calendarWeekday0StartTime 00:00
     2019-11-16 03:08:44   calendarWeekday0WorkTime 0
     2019-11-16 03:08:44   calendarWeekday1BorderCut true
     2019-11-16 03:08:44   calendarWeekday1StartTime 00:00
     2019-11-16 03:08:44   calendarWeekday1WorkTime 0
     2019-11-16 03:08:44   calendarWeekday2BorderCut true
     2019-11-16 03:08:44   calendarWeekday2StartTime 14:00
     2019-11-16 03:08:44   calendarWeekday2WorkTime 180
     2019-11-16 03:08:44   calendarWeekday3BorderCut true
     2019-11-16 03:08:44   calendarWeekday3StartTime 00:00
     2019-11-16 03:08:44   calendarWeekday3WorkTime 0
     2019-11-16 03:08:44   calendarWeekday4BorderCut false
     2019-11-16 03:08:44   calendarWeekday4StartTime 14:00
     2019-11-16 03:08:44   calendarWeekday4WorkTime 180
     2019-11-16 03:08:44   calendarWeekday5BorderCut false
     2019-11-16 03:08:44   calendarWeekday5StartTime 00:00
     2019-11-16 03:08:44   calendarWeekday5WorkTime 0
     2019-11-16 03:08:44   calendarWeekday6BorderCut true
     2019-11-16 03:08:44   calendarWeekday6StartTime 14:00
     2019-11-16 03:08:44   calendarWeekday6WorkTime 180
     2019-11-16 03:08:44   changeCfgTimeExtend -100
     2019-11-16 03:08:44   changeRainDelay 0
     2019-11-16 03:08:44   firmware        2.92
     2020-03-17 18:24:19   lastSetCommandMsg localhost: Verbindungsaufbau abgelehnt (111)
     2020-03-17 18:24:19   lastSetCommandState cmd_error
     2020-03-17 18:34:34   lastStatusRequestError localhost: Verbindungsaufbau abgelehnt (111)
     2020-03-17 18:34:34   lastStatusRequestState statusRequest_error
     2019-11-16 03:08:44   mowTimeExtend   -100
     2019-11-16 03:08:44   mowerActive     true
     2019-11-16 03:08:44   mowerError      0
     2019-11-16 03:08:44   mowerErrorTxt   No error
     2019-11-16 03:08:44   mowerState      false
     2019-11-16 03:08:44   mowerStatus     34
     2019-11-16 03:08:44   mowerStatusTxt  Pause
     2019-11-16 03:08:44   mowerWaitRain   0
     2019-11-16 03:08:44   serialNumber    20183019841200320714
     2020-03-17 18:34:34   state           localhost: Verbindungsaufbau abgelehnt (111)
     2019-11-16 03:08:44   totalBladeTime  19547
     2019-11-16 03:08:44   totalDistance   346862
     2019-11-16 03:08:44   totalTime       20574
     2019-11-16 03:08:44   wifiQuality     -69
   helper:
     requestErrorCounter 2
     setErrorCounter 0
Attributes:
   disable    0
   event-on-change-reading .*
   icon       scene_robo_lawnmower
   interval   180
   room       Roboter,Übersicht
   stateFormat Zeitverlängerung: changeCfgTimeExtend % mowerStatusTxt Batterie: batteryTemperature °C,  batteryVoltage V, batteryLevel %, mowerErrorTxt  wifiQuality dBm


Zusätzlich bemerke ich auf meinem Raspberry Pi 3 ganz schön Aktivität:
LandroidSrv.js  braucht  ganz schön CPU, aber auch andere Prozesse, die mit pm2 zusammenarbeiten.
Habt Ihr das auch?
(In dem Bild ist das natürlich nicht nur dieser eine Prozess, es wechselt sehr stark, aber immerhin wird der Raspi jetzt ganz schön geknechtet)

Vielen Dank!





Raspberry Pi 4B, Homematic, Sonoff, Shelly, Worx, Arduino, ESP8266

Otto123

Zitat von: Allgaeuer am 17 März 2020, 17:21:03
@Otto: ich hoffe, ich bin Dir mit meinem vorigen Post nicht auf die Füße getreten. Deine Anleitung war für mich sehr hilfreich und sollte in keinster Weise auch nur ein Hauch von Kritik sein.
Nicht im geringsten! :) Alles in Ordnung.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Allgaeuer

@FFHEM:

bei mir ist die CPU-Auslastung bei beiden Prozessen wesentlich geringer (<5%).

FFHEM

#604
Danke, Allgaeuer, für die Messung. Das deutet daraufhin, dass bei der Installation irgendetwas doch schief gelaufen ist.

Ich hatte bereits im Februar einmal versucht, den worx-Adapter zu installieren, das war aber mit Fehlern abgebrochen.
Bei der jetzigen Installation hat alles soweit geklappt, meine Daten konnte ich im JSON-File eingeben, der Server wurde als Running ausgegeben.
Das FHEM-Device selbst sollte ok sein, es hat den letzten Sommer mit der alten Schnittstelle funktioniert.

Am liebsten würde ich die Installation noch einmal komplett neu machen, da meine Vermutung dahingeht, dass etwas doppelt oder mehrfach gestartet wird.
Ich bin mir aber nicht sicher, wie ich die jetzige Installation am sinnvollsten rückgängig mache und wieder neu installiere.
Otto hatte damals ja auch versehentlich 2 oder mehr Verbindungen zur Amazonwolke gehabt.

Was zeigt bei Euch denn Folgendes, auch 2 Ids wie hier, oder nur eine? Ich erwarte eigentlich nur eine, da ich nur 1 Worx-Roboter habe.

pi@raspberrypi3:~ $ pm2 list
┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
│ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
│ 0  │ LandroidSrv        │ fork     │ 162  │ online    │ 0.3%     │ 44.1mb   │
│ 1  │ LandroidSrv        │ fork     │ 38   │ online    │ 0%       │ 30.2mb   │
└────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
[PM2][WARN] Current process list running is not in sync with saved list. Type 'pm2 save' to synchronize or enable autosync via 'pm2 set pm2:autodump true'






Raspberry Pi 4B, Homematic, Sonoff, Shelly, Worx, Arduino, ESP8266

Allgaeuer

Hallo FFHEM

2 Instanzen sollten nicht laufen. Gib mal ein:
$ pm2 stop 1
$ pm2 delete 1
$ pm2 list
$ pm2 save

damit sollte die 2. Instanz nachhaltig gelöscht sein.

The Spirit

#606
hab jetzt das ganze bei mir auf nen neuen account geswitched.
teste ich im terminal dann kommt immer
Tue, 17 Mar 2020 19:39:26 GMT --> sucessfully connected!
Tue, 17 Mar 2020 19:39:26 GMT --> Landroid WebServer: server initialized
events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE: address already in use :::8001
    at Server.setupListenHandle [as _listen2] (net.js:1279:14)
...

in fhem bleibt der status auf 200.
was kan ich noch testenn?
mit verbose auf 5 steht im log:
2020.03.17 20:45:53 3: LANDROID (Rasi) - enabled
2020.03.17 20:45:55 4: LANDROID (Rasi) - NonblockingGet get URL
2020.03.17 20:45:55 4: LANDROID (Rasi) - LANDROID_RetrieveReadings: calling Host: localhost
2020.03.17 20:45:55 4: LANDROID (Rasi) - LANDROID_Get_stateRequest
2020.03.17 20:45:55 4: LANDROID (Rasi) - LANDROID_RetrieveReadings: processed response data
2020.03.17 20:45:55 4: LANDROID (Rasi) - LANDROID_RetrieveReadings: received http code 200 without any data after requesting LANDROID Device
THZ 304 Eco Baujahr 2015

Allgaeuer

@The Spirit

verwendest Du den Port 8001 auch noch bei einem anderen WEB-Server. Diese Meldung deutet darauf hin:
  Error: listen EADDRINUSE: address already in use :::8001 .

In der config (da wo Du eMail und Passwort für den Landroid-Accout eingibst), kannst Du einen anderen Port angeben. Bitte in der Fhem-Config dann auch den Port anpassen.

The Spirit

Gemacht. State bleibt aber auf 200 und es steht immer empty answer received
THZ 304 Eco Baujahr 2015

Allgaeuer


The Spirit

Ja. Fehler war aber das ich mich m Terminal per pm2 schon den service für den mower 1 gestartet hatte. Und ein zweiter Zugriff geht ja nicht
THZ 304 Eco Baujahr 2015

Allgaeuer

was kommt, wenn Du im Browser eingibst (von Otto geklaut  ;) ):

http://ip-adresse-landroidsrv:8001/getMessage

ip-adresse-landroidsrv und 8001 auf Deine Werte natürlich anpassen.

The Spirit

THZ 304 Eco Baujahr 2015

Allgaeuer

dann liegt's nicht an FHEM. Vermutlich bekommst Du keine Daten von Worx. Funktioniert Eisha's App (aus dem Roboter-Forum) bzw. bist Du sicher, dass Deine Login-Daten passen?

lestat.le

Guten Abend.
ich habe heute meine Robo wieder aktiviert und hatte auch die Fehlermeldung "localhost: Verbindungsaufbau abgelehnt (111)". Ich glaube das einfach das App nicht online war. Bin dann der Anleitung nochmal gefolgt und hab pm2 gestartet.
Nun ist es aber komisch. Ich habe nun im set nicht mehr die Auswahl "edgecutting". ? Ich bilde mir ein ich habe das mal gesehen als im Anfang des Jahres auf iobroker.worx umgestellt habe. Oder ist das Modellabhängig? Ich habe den Worx M800.

Jemand eine Idee.

Sorry falls das ne ganze doofe Frage ist.