Worx Rasenroboter - was gibt die webschnittstelle her

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

Vorheriges Thema - Nächstes Thema

ti_bar74

Das hat irgendwienicht funktioniert. Jetzt scheint auch nicht mehr der LandroidSrv.js zu starten. Am Wochenende fange ich am besten noch einmal von vorn. Ich vermute, dass ich etwas durcheinander gebracht habe...

axel.mohnen

Am Besten du löschst vorher alle Prozesse mit:
$ pm2 delete all 

ti_bar74

Ok, mache ich. Dann fange ich neu an.

Viele Grüße, Tilo

ti_bar74

Irgendent etwas will nicht mehr. Seid dem ich das Startup-Script kopiert habe, bekomme ich über ".../getMessage" keine Verbindung mehr. Liegt das an dem Startup?

useratfhem

Hallo Axel,

ich wollte an dieser Stelle mal ein dickes THX sagen. Finde es klasse das du dir die Mühe gemacht hast dieses Modul zu schreiben. Mit der Version 1.3 habe ich es am Laufen.

Evtl. gibt es ja irgendwann doch eine lokale Version die ohne Internet auskommt. Wobei ich mal annehme das man dafür natürlich die Firmware des Landroid anpassen muss und selbst wenn man das hinbekommt damit wohl die Garantie erlischt. Oder gibt es Pläne seitens des Herstellers das man den Landroid auch "NUR" im lokalen Netz direkt ansprechen kann?

Danke für die Infos und den Support.

VG

bioklima

Zitat von: Xell1984 am 16 Mai 2018, 09:18:58
Vielen vielen Dank!!!! :)

Falls es Interessiert: Meine Mähzeit ist von 10-13:30 Uhr (2 Ausfahrten). Wenn es in der Zeit regnet dann bleibt er 3 Stunden stehen. Ein DOIF  erstellt damit er die Zeit verdoppelt in dem Fall. Den nächsten Morgen wird es wieder zurück gesetzt.

defmod Eddie_Regen DOIF ([09:03] and [Eddie:mowTimeExtend]!= 0) (set Eddie changeCfgTimeExtend 0)\
DOELSEIF\
([?09:05-12:00] and [Eddie:mowerError]== 5) (set Eddie changeCfgTimeExtend 100)\





defmod Strom_Maehroboter DOIF ([09:00]) (set GA.Wifi_Eddie on)\
DOELSEIF\
([?13:00-14:30] and [Eddie:mowerStatus] == 1 and [?Eddie:mowTimeExtend] == 0) (set GA.Wifi_Eddie off)\
DOELSEIF\
([?17:00-18:00] and [Eddie:mowerStatus] == 1 and [?Eddie:mowTimeExtend] != 0) (set GA.Wifi_Eddie off)\

attr Strom_Maehroboter wait 0:120:120



Nach dem mähen wird der Strom abgedreht um unnötige Ladezyklen die im Laufe des Tages entstehen zu vermeiden. Dadurch ist er natürlich nicht direkt aus der App zu erreichen, aber Strom ist ja per Handy fix wieder angestellt...

Guten Abend,

Durch diese Anregung habe ich mir die Nachtabschaltung abhängig von dem eingestellten Wochenplan gebastelt. Der Mäher wird nach der Arbeit aufgeladen, dann der Strom abgeschaltet, entlädt sich innerhalb von gut 2h bis auf 75% selbst und schaltet dann in den Idle-Zustand. Durch das Einschalten des Ladestromes wacht er 45min vor Start des nächsten Mähzyklus wieder ein und lädt in ca. 30min. vollständig wieder auf. Der Versuch abends den Strom bei 76% Ladung zu unterbrechen mündete in ein Piepkonzert, daher zunächst die vollständige Aufladung.

Die Variablen:
                     zw_up4_ELWterr.01:          Fibaro-Unterputzschalter für die Aussensteckdose des Mähers
                     worxs_Strom (DOIF):        schaltet den Strom der Ladestation abhängig vom Wochenplan ein und nach dem Mähen und Aufladen ab
                     worxs_StartTime (at) :      setzt das reading todayStartTime mit der tagesaktuellen Startzeit in worxs_Strom
                     worxs_WorkTime (at):       setzt das reading todayWorkTime mit der tagesaktuellen Startzeit in worxs_Strom
                     worxs: der Mäher


define worxs_Strom DOIF ([([[worxs_Strom:todayStartTime]]-[00:45])]) (set zw_up4_ELWterr.01 on) DOELSEIF ([?([[worxs_Strom:todayStartTime]]+[worxs_Strom:todayWorkTime]*60*(1+[worxs:changeCfgTimeExtend]/100))-22:00] and [worxs:batteryCharging]eq"false" and [worxs:mowerStatus]==1) (set zw_up4_ELWterr.01 off)
attr worxs_Strom event-on-update-reading .*
attr worxs_Strom room Draussen
attr worxs_Strom wait 0:120

define worxs_StartTime at *08:15:00 {if($wday == 0) {fhem("setreading worxs_Strom todayStartTime [worxs:calendarWeekday0StartTime]");;} elsif($wday == 1) {fhem("setreading worxs_Strom todayStartTime [worxs:calendarWeekday1StartTime]");;} elsif($wday == 2) {fhem("setreading worxs_Strom todayStartTime [worxs:calendarWeekday2StartTime]");;} elsif($wday == 3) {fhem("setreading worxs_Strom todayStartTime [worxs:calendarWeekday3StartTime]");;} elsif($wday == 4) {fhem("setreading worxs_Strom todayStartTime [worxs:calendarWeekday4StartTime]");;} elsif($wday == 5) {fhem("setreading worxs_Strom todayStartTime [worxs:calendarWeekday5StartTime]");;} elsif($wday == 6) {fhem("setreading worxs_Strom todayStartTime [worxs:calendarWeekday6StartTime]");;} else {fhem("setreading worxs_Strom todayStartTime [worxs:calendarWeekday7StartTime]");;}}
attr worxs_StartTime room Draussen

define worxs_WorkTime at *08:20:00 {if($wday == 0) {fhem("setreading worxs_Strom todayWorkTime [worxs:calendarWeekday0WorkTime]");;} elsif($wday == 1) {fhem("setreading worxs_Strom todayWorkTime [worxs:calendarWeekday1WorkTime]");;} elsif($wday == 2) {fhem("setreading worxs_Strom todayWorkTime [worxs:calendarWeekday2WorkTime]");;} elsif($wday == 3) {fhem("setreading worxs_Strom todayWorkTime [worxs:calendarWeekday3WorkTime]");;} elsif($wday == 4) {fhem("setreading worxs_Strom todayWorkTime [worxs:calendarWeekday4WorkTime]");;} elsif($wday == 5) {fhem("setreading worxs_Strom todayWorkTime [worxs:calendarWeekday5WorkTime]");;} elsif($wday == 6) {fhem("setreading worxs_Strom todayWorkTime [worxs:calendarWeekday6WorkTime]");;} else {fhem("setreading worxs_Strom todayWorkTime [worxs:calendarWeekday7WorkTime]");;}}
attr worxs_WorkTime room Draussen


Grüße und eine ruhige Woche
Raspi2B mit FHEM Razberry-ZWave/CUL-FS20 (noch Reste)/Homebridge/Landroid-S, Airupnp(Airplay für Sonos),HueBridge2,...

ti_bar74

Hallo zusammen,
jetzt habe ich es mit separater Hilfe von Axel auch zum laufen bekommen. Problem war die Mitnahme der Mower-ID im Startscript...

Vielen Dank für dei Unterstützung.

Hat jetzt noch jemand einen Tip, wir ich den StatusText in der Statusleiste darstellen kann? Das ist bestimmt einfach, aber ich habe gelernt, dass selbst das einfachste zum Problem werden kann.

Viele Grüße, Tilo

araym

Und wie hast du das Problem gelöst? Bei mir klappt auch nur das mit dem startscript nicht.

ti_bar74

Habe von Axel direkt die Unterstützung bekommen. Danke nochmal an dieser Stelle.

Ich sollte prüfen, was in der PM2 Log-Datei steht:
ZitatWas steht in der PM2 Log Datei:
https://pm2.io/doc/en/runtime/guide/log-management/?utm_source=pm2&utm_medium=website&utm_campaign=rebranding

Das Ergebnis war, dass die Mower-ID fehlt ("Mower ID is missing")

Als Lösungsvorschlag kam:
Zitat...das erklärt wirklich alles  ;)
Schau mal in die README von der branch "version13"....
Code: [Auswählen]

$ pm2 start /opt/landroid/fhem-landroid-s/LandroidSrv.js -f -- mower1

Danach lief es.

Viele Grüße, Tilo

useratfhem

Zitat von: ti_bar74 am 22 Juni 2018, 08:33:36

Hat jetzt noch jemand einen Tip, wir ich den StatusText in der Statusleiste darstellen kann? Das ist bestimmt einfach, aber ich habe gelernt, dass selbst das einfachste zum Problem werden kann.


Das kommt drauf an was du genau da stehen haben willst. Ich nutze dafür immer das stateFormat Attribut in Zusammenhang mit ReadingsVal

z.b. stateFormat:   
      {sprintf("%s - Battery: %d%%", ReadingsVal("$name","mowerStatusTxt","Unknown"), ReadingsVal("$name","batteryLevel",0))}

gibt dir den aktuellen Status und den Akku Ladestand.

ti_bar74

Vielen Dank,
so etwas habe ich gesucht und wieder etwas dazu gelernt.

Viele Grüße, Tilo

bugster_de

Zitat von: axel.mohnen am 31 Mai 2018, 09:58:37
Wenn bugster_de die mehrfach Mäher konfiguration getestet hat
Ich bin wieder aus dem Urlaub zurück war aber gleich beruflich jeweils die ganze Woche unterwegs und bin auch diese Woche erst am Freitag wieder daheim. Dann geht's los !
Ich mag ungern neue Sachen einspielen, wenn ich nicht zu Hause bin und etwaige Probleme fixen. Das senkt den WAF doch erheblich.

bugster_de

#282
Soderle nun habe ich Zeit gefunden das zu testen. Es geht mit zwei Mowern. Also alles gut. Danke dafür !

[Update]: das ganze läuft jetzt seit Wochen stabil bei mir mit 2 Mowern. Echt cool !

slawekking

Hi,

danke für das super Modul.

Bei uns in der Nachbarschaft sind in den letzten Monaten Roboter verschwunden, deswegen wollte ich im Urlaub und gegebenfalls Nachts meinen Landroid an meine Alarmanlage vom Haus anbinden.

Das Problem welches ich habe ist das Interval von 60s. Bis die Meldung in Fhem ankommt kann der Mäher schon über alle berge sein.

Kann mir einer von euch vielleicht helfen die Meldung moverErrorTxt:Upside down direkt nach dem Eintreten an Fhem zu übertragen?

Gruß

Christoph

axel.mohnen

Hi Christoph,

du solltest die Gegend wechseln, oder anketten  ;)

Versuche mal den Internal in FHEM herunter zusetzen.
Status Änderungen vom Landroid sollten in Echtzeit aus der Cloud kommen und an den LandroidSrv übergeben werden.
Das Attribute "Interval" in FHEM gibt den Interval zwischen LandroidSrv und FHEM an.

Gruss
Axel