IRobot Roomba mit Roowifi steuern

Begonnen von 2P4u, 06 Januar 2014, 20:33:59

Vorheriges Thema - Nächstes Thema

2P4u

Hallo liebe Leute.
Ich automatisiere schon länger mit FHEM.
Nun mein erstes Thema hier im Forum, da ich nicht mit der suche nichts finden kann.

Folgendes: Ich möchte mithilfe eines At oder Weekdaytimers folgenden weblink:
define RoombaClean weblink link http://192.168.178.XX/roomba.cgi?button=CLEAN ausführen.
Dies sollte immer Mo,Mi und Fr um 14.00 Uhr passieren.
Ausserdem sollte der Befehl auch mittels eines Wandtasters ausführbar sein.

Optional wäre noch super die Anwesenheitskontrolle einzubauen (nur Befehl ausführen wenn ich nicht Zuhause bin), dass aber nur als spätere Option.

Ich habe versucht das mit einem notify zu lösen:
define RoombaSaug notify RoombaClean_FB5 set RoombaClean on
oder so:
define RoombaStation notify RoombaDock_FB6 {\
fhem("set RoombaDock on");;\
fhem("set RoombaDock off");;\


Doch leider komme ich nicht weiter. Kann mir jemand von euch auf die Sprünge helfen?  :-[
Vielen Dank im Voraus.
Grüsse Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

UliM

Zitat von: 2P4u am 06 Januar 2014, 20:33:59
Folgendes: Ich möchte mithilfe eines At oder Weekdaytimers folgenden weblink:
define RoombaClean weblink link http://192.168.178.XX/roomba.cgi?button=CLEAN ausführen.
Dies sollte immer Mo,Mi und Fr um 14.00 Uhr passieren.
Ausserdem sollte der Befehl auch mittels eines Wandtasters ausführbar sein.
Hi Daniel,
den Weblink kannst Du nicht aus einem notify o.ä. zur Ausführung aufrufen. Das musst Du über einen Webaufruf machen:
define staubsaugerstart notify staubsaugerstart {my $reply = GetFileFromURL("http://192.168.178.XX/roomba.cgi?button=CLEAN", 3);}
(die 3 am Ende sind timeout, falls der Staubsauger nicht antworten mag)

Das Ding läuft dann los nach einem
trigger staubsaugerstart
Diesen Trigger kannst Du dann in beliebige andere notifies oder at einbauen.

Mangels Hitech-Staubsauger nicht getestet ;-)

Gruß, Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

2P4u

Hi Uli, danke für deine schnelle Antwort.
Jetzt hats geklappt, jedoch hab eich noch folgendes:
staubsaugerstart return value: 401 Unauthorized: Password required

Also machen wir das doch mit:
http://192.168.178.XX/roomba.cgi?user=admin&root=roombawifi&button=CLEAN (hab ich irgendwo im Netz gefunden) Ich bin aber noch am testen.
Bis jetzt steht er noch brav neben mir.

Ich berichte weiterhin. Cool wäre doch ein Modul für den Roomba zu erstellen.
Damit kann man mit XML Sensoren abfragen wie z.B. Ladezustand und Temperatur...
Leider hab ich keine Ahnung wie ich die XML Daten in FHEM bekommen soll.

1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

UliM

Hi,
für solche Abfragen entsteht gerade ein Modul: http://forum.fhem.de/index.php/topic,17804.0.html
Und der Autor sucht nach Testern.
Vielleicht magst Du Dich ja daran versuchen?
Gruß, Uli
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

2P4u

Hey Leute. Ich komm nicht weiter.
Mit dem Code in dem ich user und Pw mitgebebe:
http://192.168.2.70/roomba.cgi?user=admin&pwd=roombawifi&button=CLEAN

Da bekommen ich im logfile ein:
401 Unauthorized: Password required

Irgendwie schluckt der das Pw nicht. Meint ihr ich kann das anderst aufrufen? Vielleicht wie bei FTP mit user:pw@?

Grüße Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

UliM

@ ist doch in fhem der Platzhalter für den Gerätenamen in einem notify.
Versuchs mit @@
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

2P4u

Ich habs immernoch nicht, er will nicht losfahren.
Wenn ich das staubsaugerstart {my $reply = GetFileFromURL("http://admin:roombawifi@192.168.178.120/roomba.cgi?button=CLEAN", 3);}
eingebe geht es nicht. Gebe ich aber das:
http://admin:roombawifi@192.168.178.120/roomba.cgi?button=CLEAN direkt im Browser ein, legt er gleich mit saugen los.

Meint ihr vielleicht man könnte sowas hier in FHEM integrieren?
http://www.ip-symcon.de/forum/threads/23208-Roomba-Wifi-%C3%BCber-anderes-Subnet-ansprechen?p=210205#post210205

Danke für die Hilfe
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

Wernieman

Hast Du ausprobiert, was UliM geschrieben hat?

Das @ zu maskieren??
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

2P4u

ZitatHast Du ausprobiert, was UliM geschrieben hat?

Das @ zu maskieren??

Versuche ich heute Abend. War noch dabei das Aquarium auf FHEM umzubauen.
Man muss immer eine Baustelle nach der anderen abarbeiten.
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

2P4u

Hi Leute.
Ich bins nochmal.

Ich habe die letzten Tage getestet und folgendes ist dabei rausgekommen.
Wenn ich den wie folgt definierten Weblink anklicke maschiert der Sauger los.
define RoombaClean weblink link http://192.168.178.120/roomba.cgi?user=admin&root=roombawifi&button=CLEAN


Wenn ich das jedoch wie oben beschrieben mit einem :
define clean_noti notify clean {my $reply = GetFileFromURL("http://192.168.178.120/roomba.cgi?user=admin&root=roombawifi&button=CLEAN", 3);}

Und diesen mit einem
trigger clean_noti
in einen Weekdaytimer packen möchte, komme ich nicht weiter.

Vielleicht kann mir nochmal jemand einen Gedankenanstoss geben? Wäre super von euch.
Ich probier dann mal weiter...

Danke Gruss Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

Darth.Weber

Versuchs mal mit GetHttpFile("192.168.178.1", "/cmds...etc...")




scooty

Hallo zusammen,

ähnliches widerfährt nun mir, daher hänge ich mich einfach 'mal hier dran.

Zusammenfassung:
Mein Roomba/RooWifi reagiert etwa 10 Minuten nach dem letzten durch fhem aufgerufenen Befehl nur auf weitere Befehle, wenn erst über die Adresszeile eines Browsers der Befehl abgesetzt oder die Startseite des RooWifi Webservers aufgerufen wurde.

Details und Problem:
RooWifi ist so konfiguriert, dass KEINE Benutzeranmeldung notwendig ist
Dummy-Schalter für Roomba-Status:
define WZOG_Roomba_Control dummy
attr WZOG_Roomba_Control eventMap on:CLEAN off:DOCK


DOIF mit Aufruf Webseite für Roomba-Befehl bei Statusänderung des Dummy (der besseren Lesbarkeit halber etwas formatiert):
define WZOG_Roomba_Control_Action
DOIF ([WZOG_Roomba_Control] eq "CLEAN")
({GetFileFromURL("http://192.168.0.166/roomba.cgi?button=CLEAN",5,,0,5)})
DOELSEIF ([WZOG_Roomba_Control] eq "DOCK")
({GetFileFromURL("http://192.168.0.166/roomba.cgi?button=CLEAN",5,,0,5);;fhem("sleep 2");;GetFileFromURL("http://192.168.0.166/roomba.cgi?button=DOCK",5,,0,5)})
attr WZOG_Roomba_Control_Action do always

(Anmerkung: Um den Roomba wieder in die Docking Station fahren zu lassen, muss er erst durch CLEAN gestoppt werden)

Funktioniert alles soweit, aber leider nicht mehr nach ca. 10 Minuten, nachdem man den letzten Befehl abgesetzt hat.

Der RoWifi scheint in irgendeinen "Schlafmodus" zu verfallen, der erst wieder aufgehoben wird, wenn man im Browser den Befehl absetzt (http://192.168.0.166/roomba.cgi?button=CLEAN) oder im Browser das Webinterface des RooWifi aufruft (http://192.168.0.166).

Die Verwendung von "GetHttpFile" bringt auch keine Besserung.

Habe schon versucht, über PRESENCE mit 2-minütigem "lan-ping" den RooWifi  "am Leben zu erhalten", aber auch das funktioniert nicht (Roomba meldet allerdings immer, dass er "present" ist, PINGs sind erfolgreich).

Ebenso wenig funktionieren "lebenserhaltenden Maßnahmen" (alle 4 Minuten) mit Abfrage eines XML-Files auf dem RooWifi, in dem der aktuelle Status der Sensoren gespeichert ist {GetFileFromURL("http://192.168.0.166/roomba.xml")}.

Auch auf die direkte Eingabe von
{GetFileFromURL("http://192.168.0.166/roomba.cgi?button=CLEAN",5,,0,5)
im Webinterface von fhem erfolgt nach einer etwa 10 minütigen Ruhezeit keine Reaktion.

Die Rückkehrcodes sind jedoch immer 1 (auch wenn keine Reaktion auf den Befehl erfolgt), also nach RooWifi Handbuch OK.

Fragen:
Hat jemand von euch erfolgreich die Start/Stop Funktion für einen Roomba in fhem implementiert?
Gibt es Geräte mit Webinterface, die sich ähnlich verhalten und wie habt ihr es dort gelöst?

Für jeden Tipp bin ich dankbar, sollten noch weitere Informationen/Tests benötigt werden, kann ich diese gerne nachliefern.

Vielen Dank und Grüße,
Andreas

PS: Es gibt natürlich noch elegantere Methoden, den Roomba mit RooWifi zu steuern (s. http://www.roowifi.com/roowifi-api-11b/), aber mangels Kenntnissen wage ich ich mich nicht daran.
Fhem auf Gigabyte Brix
CUL V3 HM / CUL V3 MAX / MaxCube aFW Homematic&MAX / ZWave.me ZME_UZB1 / SDuino 433 / Velux KLF200
Homematic / MAX / Logitech Hub / ZWave / Wifi LED / div. 433 Temperatursensoren / pywws WH10880 / IO Homecontrol

herrmannj

Hi,

hast Du einen vernünftigen Weg gefunden das wifi modul an den roomba zu bekommen ? Welcher Typ ist das ?

vg
Jörg

scooty

#13
Na ja, vernünftig ist eher relativ, habe einen Roomba 880 und das RooWifi-Modul ist auf dem PS/2 Anschluss unter dem Griff aufgesteckt (und hebt ihn somit ein Stück an, aber auch nicht höher als den Knubbel des Näherungssensors(?)).

Der RooWifi ist die aktuelle Version Rev.2, habe ihn vor ca. 4 Wochen bekommen.

Hatte Deine Erfahrungen hier auch schon gelesen, hast Du die gleichen Phänomene wie ich oben beschrieben habe?

Andreas
Fhem auf Gigabyte Brix
CUL V3 HM / CUL V3 MAX / MaxCube aFW Homematic&MAX / ZWave.me ZME_UZB1 / SDuino 433 / Velux KLF200
Homematic / MAX / Logitech Hub / ZWave / Wifi LED / div. 433 Temperatursensoren / pywws WH10880 / IO Homecontrol

herrmannj

Ich hab einen 780er. Da sitzt der oben drauf und guckt doof raus. Das mag ich meinen Mädels nicht antun, außerdem habe ich Bedenken das der wifi beschädigt wird wenn der roomba unter Möbel fährt, sich verhakt und so.

Habe es also nie ausprobiert sondern war (bin) sauer. ...

vg
jörg

2P4u

Hi Jungs.
Cool, dass es hier weiter geht.
Ich habe mittlerweile den Roowifi in den Technikschrank geworfen.
Immer wenn ich den in mein Netzwerk eingebunden habe, wollten sich alle meine Geräte mit ihm verbinden.

Mittlerweile habe ich mir eine Harmony Ultimate gekauft und wollte nun damit die Befehle senden.
Da ich aber im moment mit dem Umzug von meinem RasPi auf den Cubietruck beschäftigt bin und hier noch ein Paar kleine Probleme habe bin ich auch noch zu keiner Lösung gekommen.

Läuft euer Roowifi einfach?

Gruss Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

stoxx

#16
Hi scooty,

ich hatte das gleiche Problem und habe nach etlichen Versuchen herausgefunden, dass Du den Roomba nur zuverlässig aus dem Schlafmodus bekommst, wenn Du vorher den Port 9001 ansprichst. Nicht die eleganteste Lösung, aber funktioniert (mit einer 15 Sekunden-Verzögerung). Hier mein notify:

roombabef { if (Value("roombabef") eq "start") {{GetFileFromURL("http://192.168.178.23:9001/roomba.cgi", 3)};
fhem("define roombago at +00:00:15 {GetFileFromURL('http://192.168.178.23/roomba.cgi?button=CLEAN', 3)};");};
if (Value("roombabef") eq "stop") {{GetFileFromURL("http://192.168.178.23/roomba.cgi?button=CLEAN", 3)}};
if (Value("roombabef") eq "dock") {{GetFileFromURL("http://192.168.178.23/roomba.cgi?button=DOCK", 3)}};
if (Value("roombabef") eq "spot") {{GetFileFromURL("http://192.168.178.23/roomba.cgi?button=SPOT", 3)}};}


Grüße,
stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

2P4u

stoxx, kannst du bitte mal deine Roowifi einstellungen als screenshot posten?
Natürlich kannst du die pw´s löschen.

Ich frage mich was habt ihr bei User und Passwort eingetragen?
Einfach leerlassen?
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

stoxx

FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

2P4u

Danke dir.
Wenn ich den Username und das PW weglasse komm ich nicht mehr mit der eingestellten IP drauf.
Komisch, dass das bei euch klappt.
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

stoxx

#20
Vielleicht liegts an der Roowifi Version? Ich habe einen v2.
(siehe Anhang)
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

2P4u

Nach deinem Bild habe ich auch die V2.
Ich muss mich mal intensiv damit beschäftigen.
Werde die einstellungen genau wie du übernehmen, dann sollte das ja klappen.

Danke für deine Hilfe.
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

2P4u

Hi stoxx,
ich bin schon weiter gekommen.

Kannst du mir vielleicht mal den ganzen Code posten, den du für den Roomba benutzt?
Inkl. Dummy?

Danke Gruss Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

scooty

Hallo zusammen,

ups, die Antworten und weiteren Themen sind wohl etwas an mir vorbeigegangen.  :-[
Danke für die ganzen Infos.
Besonders mit Port 9001, meine Gedanken gingen auch schon in die Richtung, hatte es aber noch nicht weiterverfolgt.

Also vielen Dank nochmals, werde über den weiteren Fortschritt berichten (aber wohl besser in diesem Thema).

Andreas
Fhem auf Gigabyte Brix
CUL V3 HM / CUL V3 MAX / MaxCube aFW Homematic&MAX / ZWave.me ZME_UZB1 / SDuino 433 / Velux KLF200
Homematic / MAX / Logitech Hub / ZWave / Wifi LED / div. 433 Temperatursensoren / pywws WH10880 / IO Homecontrol

stoxx

Hi 2P4u,

klar schicke ich Dir meinen Roomba-Code, bin aber selber kein FHEM/Perl- Experte..

Ich fange einfach mal bei den 2 dummys an:

Dem dummy "roombabef" gebe ich die Roomba-Befehle, die per cgi ansteuerbar sind:

define roombabef dummy
attr roombabef webCmd start:stop:dock:spot


"roostat" soll den aktuellen Status des Roombas auslesen:

define roostat dummy


Dann gehts weiter mit dem Kalender. Ich habe dafür einen eigenen "Roomba" Kalender bei Google eingerichtet:

define RoombaCal Calendar ical url  https://www.google.com/calendar/ical/xxxxxxxxxxxxxxxxxxxxxxxxxxx



Damit kann man endlich einen fixen Zeitpunkt für den Roomba-Start festlegen und nicht nur bestimmte Wochentage. Das ist besonders nützlich, wenn man längere Zeit weg ist und den Roomba nur einmal vor Ankunft starten möchte.

Weiter gehts mit der Roomba-Status-Meldung, damit der Roomba FHEM meldet, was er gerade macht:

define RoombaStat HTTPMOD http://192.168.178.23/roomba.xml 180
attr RoombaStat readingsName2 Distance
attr RoombaStat readingsName3 ChState
attr RoombaStat readingsName4 Current
attr RoombaStat readingsRegex2 'Distance'</name><value>([\D]?[\d]+)
attr RoombaStat readingsRegex3 State'</name><value>([\d])
attr RoombaStat readingsRegex4 'Current'</name><value>([\D]?[\d]+)


Jetzt die notifys:
Der erste notify zum Ausführen des Roomba-Befehls, den z.B. im Floorplan einbinden kannst.

define roomba_notify notify roombabef { if (Value("roombabef") eq "start") {{GetFileFromURL("http://192.168.178.23:9001/roomba.cgi", 3)};;\
fhem("define roombago at +00:00:15 {GetFileFromURL('http://192.168.178.23/roomba.cgi?button=CLEAN', 3)};;");;};;
if (Value("roombabef") eq "stop") {{GetFileFromURL("http://192.168.178.23/roomba.cgi?button=CLEAN", 3)}};;
if (Value("roombabef") eq "dock") {{GetFileFromURL("http://192.168.178.23/roomba.cgi?button=DOCK", 3)}};;
if (Value("roombabef") eq "spot") {{GetFileFromURL("http://192.168.178.23/roomba.cgi?button=SPOT", 3)}};;}


Der notify für den Kalender:

define RoombaStartCal notify RoombaCal:modeStarted.*googlecom.* {roombastart();;}


Und nun noch für den Status (auch geeignet zur Anzeige im Floorplan). Leider gibts hier keinen Status "gedockt", "in Arbeit", usw. Man kann das nur über diverse Kombinationen der Sensoren-Werte erreichen. Ich habe das so gemacht:

define roostat_notify notify RoombaStat
{
if (ReadingsVal("RoombaStat", "ChState", 0) == 2) {fhem("set roostat 2");;}
if ((ReadingsVal("RoombaStat", "ChState", 0) == 3)||((ReadingsVal("RoombaStat", "ChState", 0) == 4)&&(ReadingsVal("RoombaStat", "Current", 0) >= -200))) {fhem("set roostat 0")};;
if ((ReadingsVal("RoombaStat", "ChState", 0) == 4)&&(ReadingsVal("RoombaStat", "Distance", 0) == 0)&&(ReadingsVal("RoombaStat", "Current", 0) < -200)&&(ReadingsVal("RoombaStat", "Current", 0) > -500)) {fhem("set roostat 3");;}
if ((ReadingsVal("RoombaStat", "ChState", 0) == 4)&&(ReadingsVal("RoombaStat", "Distance", 0) != 0)&&(Value("roostat") != 1)) {fhem("set roostat 1");;}
}

Dabei bedeutet der Wert von roostat folgendes: 0=Gedockt 1=Saugt  2=Lädt 3=steht irgendwo rum(Fehler!)
Dazu habe ich einige Zeit gegoogelt - eine Kombi aus vielen Vorschlägen in diversen Foren. Klappt ganz gut!

Mehr hab ich bis jetzt nicht.. Ist bestimmt auch alles noch nicht ausgereift, aber bis jetzt funzt es!
Achtung: Den Code oben habe ich aus der fhem.cfg rauskopiert..

Grüße
stoxx

FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

2P4u

Super cool  8)

So ist schon sehr viehl mehr möglich mit dem sauger.
Was jetzt noch toll wäre, wenn wir den iRobot Roomba Driver ansteuern könnten.
Sprich wir lassen den Roomba wenn er 5x gesagt hat (in der Regel ist er dann voll) einfach 3 Sekunden vom Dock rückwärts fahren.
Dann sieht man, dass man den Behälter leeren muss.
Mein Roomba steht z.B. unter einem Schrank und somit vergesse ich oft ihn zu leeren.

Gruss Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

stoxx

Ja, das mit dem Driver wäre schon klasse.. Mein Roomba steht auch unter nem Schrank und ich lasse ihn einfach per "Start" "Stop" Befehl per Timer über AT 35 sek fahren und dann landet er immer an der selben Stelle - und zwar außerhalb des Schranks  ;)
Aber keine Frage -schöner mit einem direkten Steuerbefehl, aber leider keine Ahnung wie...
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

stoxx

Habe die Steuerbefehle gefunden:

Zitat
Parameter für http://<ip>/rwr.cgi?exec=<Befehl>
rwr.cgi?exec=h     "start driver mode"
rwr.cgi?exec=j      "main brush"
rwr.cgi?exec=k     "side brush"
rwr.cgi?exec=a     "vorwärts"
rwr.cgi?exec=b     "15 Grad Links"
rwr.cgi?exec=c      "45 Grad Links"
rwr.cgi?exec=d      "90 Grad links"
rwr.cgi?exec=l       "rückwärts"
rwr.cgi?exec=e      "15 Grad Rechts"
rwr.cgi?exec=g      "90 Grad Rechts"
rwr.cgi?exec=f       "45 Grad Rechts"
rwr.cgi?exec=1      "IDLE"
rwr.cgi?exec=4      "Clean"
rwr.cgi?exec=5      "Spot"
rwr.cgi?exec=6      "Dock"

Ich überarbeite gerade meinen "ich fahre unter dem Schrank hervor" Code  :D

Grüße
stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

2P4u

Perfekt!
Leider gibts keinen "Gefällt mir" Button :(

Jetzt können wir eigentlich fast alles was mit dem Roomba möglich ist.
Bastel mir vielleicht noch ne Webcam drauf ;)

Gruss
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

2P4u

Zitat von: stoxx am 13 November 2014, 19:29:38
Habe die Steuerbefehle gefunden:

Ich überarbeite gerade meinen "ich fahre unter dem Schrank hervor" Code  :D

Grüße
stoxx

Hi Stoxx
Ich überarbeite auch grade meine ganze Roomba Geschichte. Bisher funktioniert alles wirklich prima.
Jetzt wollte ich ihn unterm Schrank vorfahren lassen, jedoch wenn ich ein http://192.168.178.69/rwr.cgi?exec=rwr.cgi?exec=h eingebe kommt im Browser eine 0 zurück.

Wie hast du das bei dir gelösst?
Ich habe vor:
Starten der Driver mode
Fahre 3 sec rückwärts
(Wie stoppt er dann? Den link nochmal ausführen?)
Dreh dich um 90° nach links.

Das wäre alles was er machen sollte.
Das ganze würde ich gerne mit eine Weekdaytimer immer Samstags laufen lassen.

Kannst du mal deine Lösung posten, damit ich n Anhaltspunkt habe?

Vielen Dank und Grüsse
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

stoxx

Hi Daniel,

versuche es mal so, dann müsste es klappen:

http://192.168.178.69/rwr.cgi?exec=h

Danach halt noch die Steuercodes l, 1 (für IDLE) und d setzen.
Also z.B.

{GetFileFromURL('http://192.168.178.23/rwr.cgi?exec=h', 3)}
fhem("define RooBack at +00:00:05 {GetFileFromURL('http://192.168.178.23/exec=l', 3)}
fhem("define RooStop at +00:00:10 {GetFileFromURL('http://192.168.178.23/exec=1', 3)}
fhem("define RooLeft at +00:00:15 {GetFileFromURL('http://192.168.178.23/exec=d', 3)}

Mit den Zeiten musst Du halt ein bisserl rumprobieren..



FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

2P4u

Oh  :-[ ich Host.
Klar, jetzt fällts mir auch auf.
Aber das Idle= Stop ist gut.

Danke!
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

fl_dutch

Hallo,

nach ein wenig FHEM Abstinenz (es läuft halt) im letzten Jahr einen Roomba 780 gekauft und auf das Roowifi Modul gestoßen, dass in der letzten Woche hier angekommen ist. Gleich mal geschaut, obs da in FHEM schon was gibt...

DANKE Ihr seid klasse!

Kurze Anregung:
Folgende Zeile ging bei mir nicht:
define RoombaStartCal notify RoombaCal:modeStarted.*googlecom.* {roombastart();;}
geändert in:
define RoombaStartCal notify RoombaCal:modeStarted.*googlecom.* {fhem("set roombabef start");;}
Auch hier wieder direkt in der fhem.cfg (sorry, lange nicht mehr mit fhem gespielt, kannte nur diesen Weg - da ist ja einiges passiert).

Und noch ne Frage, da ich grad zu blöd bin, das selber umzusetzen:
Ich hätte gerne die Zustandswerte, die via roostat_notify erzeugt werden, gerne regelmäßig in ein logfile geschrieben. Unter RoombaStat erzeuge ich diese Einträge bereits mit:
define log_roomba_state FileLog /var/log/fhem/roomba_state-%Y.log RoombaStat:*
Jemand eine Idee, wie ich da den "erzeugten" Status mit einbaue? Ich hatte zwar einfach mal versucht, mit dem Beispiel aus dem roostat_notify die Werte mit ins Log zu bekommen, aber habe es nicht hinbekommen.

Ziel der Maßnahme ist es, aus den Logfiles dann natürlich per SVG hübsche Aktivitätscharts zu basteln (damit ich bspw. unterwegs auch sehen kann, ob der "Pursche" auch wirklich seinen Dienst tut).

fl_dutch

Nachtrag:
Nachdem ich mir jetzt beim ersten kalendergesteuerten Reinigungsvorgang das roowifi-Modul vom 780er gerissen habe, habe ich mich nochmal nach einer Alternative umgesehen, die ich bereits gefunden hatte, nachdem ich die roowifi Karte bereits bestellt hatte:

http://www.thinkingcleaner.com/

Zumindest für die 500/600er Serie absolut gute Sache, für die 700/800er Serie ist die Produktion leider verzögert :(. Entweder ich werde den roowifi mit ein wenig Löten ins Gehäuseinnere einbauen (und damit die Garantie abhaken dürfen) oder ich muss mir da anderweitig was bauen, solange Thinkingcleaner noch nicht für die 700/800er da ist.

Wie sind da eure Erfahrungen?

stoxx

Hi fl_dutch,
danke für den Link! Das Konkurrenz-Produkt(?) kannte ich noch garnicht ...! Wobei man alle Features, die der Thinking Cleaner vorstellt, auch mit dem roowifi umsetzen könnte. Und der Beep-Befehl, der im Video gezeigt wird, ist klasse - den werde ich gleich nachbauen. Was ist denn mit Deinem roowifi passiert? Hat sich die Antenne irgendwo verfangen? Das Teil in die Abdeckung zu integrieren ist schon nett, aber dafür 50 Euro mehr...? Ich hab schon ein paar Cases für den Roowifi beim googlen gesehen..
Viele Grüße
stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

fl_dutch

Der Roowifi hat sich scheinbar an den Kabeln der Dock verfangen - oder anderweitig an irgendwas :(.

Etwas off topic: scheinbar wird der DHCP Server des roowifi nicht deaktiviert? Hat da jemand Erfahrungen damit, dass die Kiste das ganze Netzwerk wild mit IP-Adresse versorgt?

Ich hab mir jetzt in nem Shop für 9.95 die Top-Plate des Roombas bestellt - etwas Dremel Arbeit und vielleicht noch Glasfasermatte & Spachtel und schon dürfte da etwas stoßfestes draus werden.

daduke

Hallo Roomba-Fans,

ich schreibe gerade an einem Modul für RooWifi und bin dabei auch über das Problem gestolpert, dass sich mein 870er nach 5 min schlafen legt und nur schwer wieder aufwecken lässt. Naja, fragen wir doch mal den iRobot-Support! Was dann folgt ist Realsatire: http://daduke.org/misc/roomba.html
Wer mit shitstormen will: RT von https://twitter.com/daduke oder den wall post auf https://www.facebook.com/iRobot kommentieren  ;)

cheers,
-Christian
fhem auf pcengines apu, Philips Hue, MAX!, div. HomeMatic, Spark Core, panstamp, div. eigene Hardware

fl_dutch

Dass der feld-wald-und-wiesen Supporter da keine Checkung hat und mit so speziellen Sachen leicht überfordert ist, dürfte klar sein - der SCI Port wird wohl kaum in deren Supportdatenbank auftauchen :).

Btw. gibt es mittlerweile den Create 2, den es wahrscheinlich auch in Europa geben wird, das ganze mit einem updated SCI Guide. Diverse Downloads gibt es hier: http://www.irobot.com/About-iRobot/STEM/Create-2/Projects.aspx

Vielleicht wirst du da ja fündig, es gibt einige neue Befehle seit der 600er Serie, auf der der Create 2 basiert.

Evtl. lohnt es sich auch für dich, auf Thinkingcleaner für die 700/800er Serie warten - werde sobald das Ding verfügbar ist ein solches Anschaffe und villeicht noch nen alten 500er/600er zum Spielen mit dem Roowifi.

Bei meinem 780er habe ich das Problem mit dem Schlafen legen übrigens nicht. Die Info mit dem Anschieben auf Port 9001 weiter vorne im Thread hattest du gelesen - woll? Könnte ja auch sein, dass das Problem beim roowifi liegt. Welche roowifi Revision hast du? Die 1er oder die 2er?

daduke

Zitat von: fl_dutch am 18 Februar 2015, 14:21:09
Dass der feld-wald-und-wiesen Supporter da keine Checkung hat und mit so speziellen Sachen leicht überfordert ist, dürfte klar sein - der SCI Port wird wohl kaum in deren Supportdatenbank auftauchen :).
einverstanden. Deshalb habe ich ihm ja mehrfach gesagt, er soll mir nen Techie geben.
Das neueste ist jetzt, dass Amis SCI dürfen, aber Europäer nicht. Versteh' einer die Logik.

Zitat von: fl_dutch am 18 Februar 2015, 14:21:09
Btw. gibt es mittlerweile den Create 2, den es wahrscheinlich auch in Europa geben wird, das ganze mit einem updated SCI Guide. Diverse Downloads gibt es hier: http://www.irobot.com/About-iRobot/STEM/Create-2/Projects.aspx

Vielleicht wirst du da ja fündig, es gibt einige neue Befehle seit der 600er Serie, auf der der Create 2 basiert.
ok das ist gut, danke.

Zitat von: fl_dutch am 18 Februar 2015, 14:21:09
Bei meinem 780er habe ich das Problem mit dem Schlafen legen übrigens nicht. Die Info mit dem Anschieben auf Port 9001 weiter vorne im Thread hattest du gelesen - woll? Könnte ja auch sein, dass das Problem beim roowifi liegt. Welche roowifi Revision hast du? Die 1er oder die 2er?
ja mit meinem alten 563 war das auch nicht. Der 870er, wenn er off dock 5 min steht, geht in sleep. Ich bekomme ihn dann schon aufgeweckt, aber nur mit paar Mal senden und warten. Das will ich einfacher (und v.a. schneller).
Port 9001 ist einfach die Socketverbindung für SCI, die mache ich in meinem Modul sowieso. Mein roowifi müsste ein v2 sein, Dezember bekommen.

cheers,
-Christian
fhem auf pcengines apu, Philips Hue, MAX!, div. HomeMatic, Spark Core, panstamp, div. eigene Hardware

fl_dutch

Ah, off Dock - die Info hatte ich noch net gelesen (oder auch überlesen).

Gerade mal probiert: der 780 geht scheinbar auch in den Schlafmodus (beim halten nach ner Zeit alle Lichter aus), sobald ich auf Stop gegangen bin. Vielleicht muss ich noch länger warten, aber in FHEM 1x auf Start geklickt und schon gehts wieder los (gut, es dauert kurz und war nicht "instant" bzw. realtime). Wie geschrieben, gibts bei nem "Start" jeweils noch 1x das Anschieben auf Port 9001.

War jetzt auch nur ein Versuch und vielleicht Zufallstreffer.

daduke

Zitat von: fl_dutch am 18 Februar 2015, 16:21:46
Gerade mal probiert: der 780 geht scheinbar auch in den Schlafmodus (beim halten nach ner Zeit alle Lichter aus), sobald ich auf Stop gegangen bin. Vielleicht muss ich noch länger warten, aber in FHEM 1x auf Start geklickt und schon gehts wieder los (gut, es dauert kurz und war nicht "instant" bzw. realtime). Wie geschrieben, gibts bei nem "Start" jeweils noch 1x das Anschieben auf Port 9001.
genau, aber das Anschieben und den wait will ich eliminieren. Über die Socket-Verbindung könnte man dann nämlich periodisch eine kurze Abfrage absetzen und die Sensoren und den Status wirklich auslesen (nicht nur erraten).

hab hoffentlich bald mal ersten Code zum Spielen.

-Christian
fhem auf pcengines apu, Philips Hue, MAX!, div. HomeMatic, Spark Core, panstamp, div. eigene Hardware

stoxx

Zitatgenau, aber das Anschieben und den wait will ich eliminieren. Über die Socket-Verbindung könnte man dann nämlich periodisch eine kurze Abfrage absetzen und die Sensoren und den Status wirklich auslesen (nicht nur erraten).
Das hört sich super an - bin gespannt und teste gerne  :)
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

daduke

Hallo alle,

so, getreu "publish early, publish often" haben ich mal eine ganz erste Version meines Moduls zur Kommunikation über den RooWifi am Start: https://github.com/daduke/Robotics-IRobot-Roowifi
Basiert auf Robotics::IRobot, angepasst auf RooWifi (socket statt seriell) und etlichen Korrekturen. Meine Idee ist, zuerst die Kommunikation und Befehle an sich zu kapseln und dann mit FHEM weiter zu schauen. Die meisten Kommandos funktionieren, sind aber z.T. noch überarbeitungsfähig (Kalibration beim Winkel etc). Würde mich freuen, wenn jemand dabei wäre. Gegenüber den cgi commands, die man RooWifi direkt schicken kann, sind wir hier im gateway mode (SCI) und haben volle Kontrolle über alle Motoren und Sensoren. Man kann also z.B. beliebige Fahrmuster programmieren (s. demo.pl).

viele Grüße,
-Christian
fhem auf pcengines apu, Philips Hue, MAX!, div. HomeMatic, Spark Core, panstamp, div. eigene Hardware

2P4u

Zitat von: daduke am 24 Februar 2015, 20:37:18
Hallo alle,

so, getreu "publish early, publish often" haben ich mal eine ganz erste Version meines Moduls zur Kommunikation über den RooWifi am Start: https://github.com/daduke/Robotics-IRobot-Roowifi
Basiert auf Robotics::IRobot, angepasst auf RooWifi (socket statt seriell) und etlichen Korrekturen. Meine Idee ist, zuerst die Kommunikation und Befehle an sich zu kapseln und dann mit FHEM weiter zu schauen. Die meisten Kommandos funktionieren, sind aber z.T. noch überarbeitungsfähig (Kalibration beim Winkel etc). Würde mich freuen, wenn jemand dabei wäre. Gegenüber den cgi commands, die man RooWifi direkt schicken kann, sind wir hier im gateway mode (SCI) und haben volle Kontrolle über alle Motoren und Sensoren. Man kann also z.B. beliebige Fahrmuster programmieren (s. demo.pl).

viele Grüße,
-Christian

Hi Christain,
Ich habe mir das ganze nun mal angeschaut. Sieht ja super aus und sollten wir denke ich weiter verfolgen.

Wie hast du vor das ganze in FHEM aufzurufen? Ob ich dir grossartig helfen kann daraus ein fertiges Modul zu schreiben weiss ich nicht, jedoch würde ich dir gerne helfen.

Lieben Gruss
Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

daduke

Hi Daniel,

danke für Deine Bereitschaft zur Mithilfe. Ich bin derzeit leider ausser Gefecht gesetzt, da es mein Roomba geschafft hat, beim Navigieren unter dem Schrank ein paar Bauteile auf dem RooWifi abzuscheren, obwohl ich ihm sogar eine schöne Hutze gedruckt hatte. Soll heissen, ich habe im Moment keinen funktionierenden RooWifi und kann daher nicht testen. Falls Du das aber aufnehmen möchtest, helfe ich gerne nach Kräften.

best,
-Christian
fhem auf pcengines apu, Philips Hue, MAX!, div. HomeMatic, Spark Core, panstamp, div. eigene Hardware

2P4u

Hey Christian,
shit, darum habe ich meinen in den Roomba eingebaut.
Bei 770 ist hinten rechts neben dem Stromstecker genug Platz.
Einfach Kabel angelötet und diese dann direkt auf die Platine gelötet.
Er hat super Empfang und ihm kann so nichts mehr passieren.

Hast den Roowifi noch? Hat es Bauteile abgerissen? Ich kann dir den auch gerne wieder richten!

Aktuell habe ich noch folgendes Problem aber ich komm nicht auf die Lösung.
Der Roomba soll nur unter dem Schrank vorfahren um ihn zu leeren.
Roombaleeren:start {
fhem("set wz_Roomba on");;
fhem("define RooWach at +00:00:01 {GetFileFromURL("http://192.168.178.45/rwr.cgi?exec=h")}");;
fhem("define RooBack at +00:00:03 {GetFileFromURL("http://192.168.178.45/rwr.cgi?exec=l")}");;
fhem("define RooStop at +00:00:06 {GetFileFromURL("http://192.168.178.45/rwr.cgi?exec=l")}");;
}


Leider motzt fhem an der Stelle:
2015.05.29 09:55:56 1: PERL WARNING: Bareword found where operator expected at (eval 10307) line 3, near ""define RooBack at +00:00:03 {GetFileFromURL("http"
2015.05.29 09:55:56 3: eval: {{GetFileFromURL("http://192.168.178.45/rwr.cgi?exec=h")};
fhem("set wz_Roomba on");
fhem("define RooBack at +00:00:03 {GetFileFromURL("http://192.168.178.45/rwr.cgi?exec=l")};");}
2015.05.29 09:55:56 1: PERL WARNING: String found where operator expected at (eval 10307) line 3, near "l")};""
2015.05.29 09:55:56 3: eval: {{GetFileFromURL("http://192.168.178.45/rwr.cgi?exec=h")};
fhem("set wz_Roomba on");
fhem("define RooBack at +00:00:03 {GetFileFromURL("http://192.168.178.45/rwr.cgi?exec=l")};");}
2015.05.29 09:55:56 3: Roombaleer2 return value: syntax error at (eval 10307) line 3, near ""define RooBack at +00:00:03 {GetFileFromURL("http"
Unknown regexp modifier "/1" at (eval 10307) line 3, at end of line
Unknown regexp modifier "/9" at (eval 10307) line 3, at end of line
Unknown regexp modifier "/2" at (eval 10307) line 3, at end of line


Ich seh aktuell nicht, wo ich hier ein Zeichenproblem habe.
wenn ich die so eingebe:
define RooBack at +00:00:03 {GetFileFromURL("http://192.168.178.45/rwr.cgi?exec=l")}
laufen die, aber eben in dem Noti hab ich irgendwo n Bock.

Vielleicht sieht es ja jem von euch?

Danke für eure Hilfe

Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

stoxx

Hi,

probiere doch mal Hochkomma statt Anführungszeichen innerhalb des GetFileFromURL-Befehls.
z.B.

fhem("define RooWach at +00:00:01 {GetFileFromURL('http://192.168.178.45/rwr.cgi?exec=h')}");

Grüße
stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

2P4u

Danke stoxx!

So klappts:
Roombaleeren:start {
     fhem("set wz_Roomba on");;
     fhem("define RooWach at +00:00:01 {GetFileFromURL('http://192.168.178.45/rwr.cgi?exec=h')}");;
     fhem("define RooBack at +00:00:03 {GetFileFromURL('http://192.168.178.45/rwr.cgi?exec=l')}");;
     fhem("define RooStop at +00:00:06 {GetFileFromURL('http://192.168.178.45/rwr.cgi?exec=l')}");;
}
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

2P4u

Hey Leute.
Ich hab ne Frage. Ich habe den Roomba mit meinem Google Kalender verknüpft. So kann ich die Termine des putzens super steuern.
Jetzt möchte ich, dass er nur dann losfährt wenn niemand zuhause ist.

Es soll so sein:
Kalender sagt Roomba start.
Es ist aber noch jemand anwesend, also wir der Startbefehl nochmal um 30 min verschoben.
Er soll den Startbefehl 5mal verschieben, wenn bis dahin niemand das haus verlassen hat, soll er den Startbefehl ignorieren.

Hat jemand von euch ne Idee wie ich das lösen könnte?
Mit dem verschieben komme ich nicht ganz klar.

Danke und lieben Gruss
Daniel
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

2P4u

Ich habe den Titel mal eben umbenannt. So kann man das Thema einfacher finden.
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

2P4u

Ich hab mal was gebastelt, aber wie verschiebe ich den Termin 5 mal?

define RoombaStartCal Notify RoombaCal:modeStarted.*googlecom.* {
  if (ReadingsVal("DaniHandy", "state", "undef") eq "absent") {
    fhem ("set roombabef start");
    fhem ("set WhatsApp send 491xxxxxxxxxx Roomba gestartet");
  }
  else {
    fhem ("define Roomba_spaeter at +00:30:00 set roombabef start");
fhem ("set WhatsApp send 491xxxxxxxxxx Roomba Start verschoben");
  }
}
1x Ubuntu Server
1x LaCrosse Gateway für PCA301 /1x HMLAN /1x HMLGW
2x HueBridge mit Devices/ 1x Logitech Harmony Ultimate

franky08

Hallo, ich hole den Thread mal aus der Versenkung  :)
Heute ist nun auch mein RooWifi Teil gekommen und funktioniert auch. Leider habe ich immer noch das Problem, dass der Roomba nach ca. 10min einschläft, habt ihr das irgendwie gelöst bekommen?

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

daduke

Hi Frank,

wie weiter oben erwähnt kann ich den Roomba über

http://<roowifi-ip>/rwr.cgi?exec=1

mittels DD-Pin aus dem Schlafen aufwecken.

Gruß,
-Christian
fhem auf pcengines apu, Philips Hue, MAX!, div. HomeMatic, Spark Core, panstamp, div. eigene Hardware

franky08

Ahh, danke, hatte ich sicher überlesen. Das werde ich heute mal testen.

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

Erby

Hallo zusammen,

ich habe seit gestern Abend das RooWifi Modul. Es wurde in Betrieb genommen und läuft soweit. Die dazugehörigen Apps sind aber wenig ausgereift finde ich.

Nach dem Durchlesen sämtlicher Foren bin ich immer nur auf einzelne Codeschnipsel, Anregungen und Ideen gestoßen.

Hat jemand eine kompletten Code für die wesentlichen Funktionen für mein Fhem den ich nutzen kann?

Vielen Dank !!

franky08

Da sitz ich auch gerade dran  ;)

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

Erby

Dann will ich nicht länger stören und freue mich auf das Ergebnis :-)

Krokofant

Würdest Du dafür vielleicht auch einen Wiki-Artikel schreiben?
Dabei helfe ich gern mit, habe aber (noch?) keinen Roomba und kann deswegen nur bei Wiki-Syntax etc. Hilfestellung geben.

LG, Markus

franky08

#58
Irgendwie fehlt in HTTPMOD das Reading 'State' im buffer?
ZitatHTTP/1.1 200 OK Connection: close Content-Type: text/xml Cache-Control: no-cache <response> <r0><name>'Bumps Wheeldrops'</name><value>0</value></r0> <r1><name>'Wall'</name><value>0</value></r1> <r2><name>'Cliff Left'</name><value>0</value></r2> <r3><name>'Cliff Front Left'</name><value>0</value></r3> <r4><name>'Cliff Front Right'</name><value>0</value></r4> <r5><name>'Cliff Right'</name><value>0</value></r5> <r6><name>'Virtual Wall'</name><value>0</value></r6> <r7><name>'Motor Overcurrents'</name><value>0</value></r7> <r8><name>'Dirt Detector - Left'</name><value>0</value></r8> <r9><name>'Dirt Detector - Right'</name><value>0</value></r9> <r10><name>'Remote Opcode'</name><value>0</value></r10> <r11><name>'Buttons'</name><value>0</value></r11> <r12><name>'Distance'</name><value>0</value></r12> <r13><name>'Angle'</name><value>0</value></r13> <r14><name>'Charging State'</name><value>0</value></r14> <r15><name>'Voltage'</name><value>16003</value></r15> <r16><name>'Current'</name><value>-227</value></r16> <r17><name>'Temperature'</name><value>31</value></r17> <r18><name>'Charge'</name><value>2594</value></r18> <r19><name>'Capacity'</name><value>2696</value></r19> </response>

Aus dem Grund komm ich jetzt irgendwie nicht weiter, da für die Auswertung ChState gebraucht wird. Habe mich größtenteils an das Coding von stoxx in Antwort #24 gehalten. kann mich jemand erhellen?

Hier noch ein list vom HTTMOD:
Internals:
   BUSY       0
   DEF        http://192.168.2.226/roomba.xml 180
   Interval   180
   LASTSEND   1458747634.89924
   MainURL    http://192.168.2.226/roomba.xml
   NAME       RoombaStat
   NR         1927
   STATE      ???
   TRIGGERTIME 1458747814.89752
   TRIGGERTIME_FMT 2016-03-23 16:43:34
   TYPE       HTTPMOD
   addr       http://192.168.2.226:80
   buf        HTTP/1.1 200 OK

Connection: close

Content-Type: text/xml

Cache-Control: no-cache



<response>

<r0><name>'Bumps Wheeldrops'</name><value>0</value></r0>

<r1><name>'Wall'</name><value>0</value></r1>

<r2><name>'Cliff Left'</name><value>1</value></r2>

<r3><name>'Cliff Front Left'</name><value>1</value></r3>

<r4><name>'Cliff Front Right'</name><value>1</value></r4>

<r5><name>'Cliff Right'</name><value>1</value></r5>

<r6><name>'Virtual Wall'</name><value>0</value></r6>

<r7><name>'Motor Overcurrents'</name><value>0</value></r7>

<r8><name>'Dirt Detector - Left'</name><value>0</value></r8>

<r9><name>'Dirt Detector - Right'</name><value>0</value></r9>

<r10><name>'Remote Opcode'</name><value>168</value></r10>

<r11><name>'Buttons'</name><value>0</value></r11>

<r12><name>'Distance'</name><value>0</value></r12>

<r13><name>'Angle'</name><value>1</value></r13>

<r14><name>'Charging State'</name><value>0</value></r14>

<r15><name>'Voltage'</name><value>15530</value></r15>

<r16><name>'Current'</name><value>-94</value></r16>

<r17><name>'Temperature'</name><value>41</value></r17>

<r18><name>'Charge'</name><value>2473</value></r18>

<r19><name>'Capacity'</name><value>2696</value></r19>

</response>
   code       200
   conn
   data
   displayurl http://192.168.2.226/roomba.xml
   header
   host       192.168.2.226
   httpheader HTTP/1.1 200 OK

Connection: close

Content-Type: text/xml

Cache-Control: no-cache
   httpversion 1.0
   hu_blocking 0
   hu_filecount 11
   ignoreredirects 0
   loglevel   4
   path       /roomba.xml
   protocol   http
   redirects  0
   timeout    2
   url        http://192.168.2.226/roomba.xml
   value      0
   Helper:
     Dblog:
       Current:
         Mydblog:
           TIME       1458747635.13073
           VALUE      -94
       Distance:
         Mydblog:
           TIME       1458747635.13073
           VALUE      0
   QUEUE:
   Readings:
     2016-03-23 16:05:29   ChState         0
     2016-03-23 16:40:35   Current         -94
     2016-03-23 16:40:35   Distance        0
   Request:
     data
     header
     ignoreredirects 0
     retryCount 0
     type       update
     url        http://192.168.2.226/roomba.xml
     value      0
   Defptr:
     Readingbase:
       ChState    reading
       Current    reading
       Distance   reading
     Readingnum:
       ChState    02
       Current    01
       Distance   03
     Readingoutdated:
     Readingsubnum:
       Current
       Distance
   Helper:
     Bm:
       Httpmod_attr:
         cnt        9
         dmx        0
         max        2
         tot        16
         mAr:
           set
           RoombaStat
           userattr
           reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex
       Httpmod_define:
         cnt        1
         dmx        0
         mAr
         max        0
         tot        0
       Httpmod_get:
         cnt        3
         dmx        0
         mAr
         max        0
         tot        0
       Httpmod_set:
         cnt        34
         dmx        0
         mAr
         max        0
         tot        0
   Sslargs:
Attributes:
   enableControlSet 1
   reading01Name Current
   reading01Regex 'Current'</name><value>([\D]?[\d]+)
   reading02Name ChState
   reading02Regex 'State'</name><value>([\d])
   reading03Name Distance
   reading03Regex 'Distance'</name><value>([\D]?[\d]+)
   room       Unsorted
   userattr   reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex


VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

stoxx

Hi franky08,

hast Du die Readings im HTTPMOD gesetzt? Da ist doch die definition von ChState:

attr RoombaStat readingsName3 ChState

Oder habe ich Dein Problem nicht richtig verstanden?

Grüße
stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

franky08

#60
Hab es gerade gesehen, in dem code den du vorne gepostet hast steht statt ChState nur State, hätte mir gleich auffallen können, da dort auch ein Hochkomma fehlt  ;)
Im regex
VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

stoxx

#61
Da fehlt nichts.. das ist ganz bewusst ohne beginnendem Hochkomma , sonst würde die Regex nicht matchen..
Aber  - klappt es jetzt bei Dir??
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

franky08

#62
Ja, ist alles OK, hab das in eine sub gepackt. Ich meine die Stelle hier:
attr RoombaStat readingsRegex3 State'</name><value>([\d])

ich habe State' in 'ChState' geändert, dann funktioniert es.

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

stoxx

So gehts auch, klar. Darfst halt nur nicht 'State' draus machen..  ;)
Die ganze Sache klappt bei mir jetzt fast schon anderthalb Jahre..
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

franky08

#64
Nur mal eine Frage am Rande  ;) Stammt das Roowifi.pm Modul auf github von dir? Da hab ich mir die Zähne dran ausgebissen, da immer eine fehlende Perl Datei bemängelt wird, obwohl sie installiert ist.

Die folgenden NEUEN Pakete werden installiert:
  libdata-yaml-perl
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 65 nicht aktualisiert.
Es müssen 20,8 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 78,8 kB Plattenplatz zusätzlich benutzt.
Holen: 1 http://ftp.de.debian.org/debian/ wheezy/main libdata-yaml-perl all 0.0.6-1 [20,8 kB]
Es wurden 20,8 kB in 0 s geholt (144 kB/s). 
Vormals nicht ausgewähltes Paket libdata-yaml-perl wird gewählt.
(Lese Datenbank ... 121244 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacken von libdata-yaml-perl (aus .../libdata-yaml-perl_0.0.6-1_all.deb) ...
Trigger für man-db werden verarbeitet ...
libdata-yaml-perl (0.0.6-1) wird eingerichtet ...
frank1@zotac:~$ sudo apt-get install libmath-complex-perl
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Die folgenden NEUEN Pakete werden installiert:
  libmath-complex-perl
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 65 nicht aktualisiert.
Es müssen 51,8 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 140 kB Plattenplatz zusätzlich benutzt.
Holen: 1 http://ftp.de.debian.org/debian/ wheezy/main libmath-complex-perl all 1.59-1 [51,8 kB]
Es wurden 51,8 kB in 0 s geholt (350 kB/s).     
Vormals nicht ausgewähltes Paket libmath-complex-perl wird gewählt.
(Lese Datenbank ... 121255 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacken von libmath-complex-perl (aus .../libmath-complex-perl_1.59-1_all.deb) ...
Trigger für man-db werden verarbeitet ...
libmath-complex-perl (1.59-1) wird eingerichtet ...
frank1@zotac:~$ sudo shutdown -r now


VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

stoxx

Nein, das Modul ist nicht von mir. Ich habe bisher nur die beschriebene HTTPMOD Version verwendet..
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

franky08

#66
Alles klar, hab es gerade im Thread nachgelesen. Irgendwie tut sich fhem mit der Auswertung des aktuellen Zustand´s schwer, anders gesagt es ist ein Glücksspiel das der aktuelle Zustand angezeigt wird. Kann z.Zt. aber auch nicht ausgiebig testen sonst sperrt meine Frau das Teil in den Schrank  ;)
habe diesen Code von dir:
define roostat_notify notify RoombaStat
{
if (ReadingsVal("RoombaStat", "ChState", 0) == 2) {fhem("set roostat 2");;}
if ((ReadingsVal("RoombaStat", "ChState", 0) == 3)||((ReadingsVal("RoombaStat", "ChState", 0) == 4)&&(ReadingsVal("RoombaStat", "Current", 0) >= -200))) {fhem("set roostat 0")};;
if ((ReadingsVal("RoombaStat", "ChState", 0) == 4)&&(ReadingsVal("RoombaStat", "Distance", 0) == 0)&&(ReadingsVal("RoombaStat", "Current", 0) < -200)&&(ReadingsVal("RoombaStat", "Current", 0) > -500)) {fhem("set roostat 3");;}
if ((ReadingsVal("RoombaStat", "ChState", 0) == 4)&&(ReadingsVal("RoombaStat", "Distance", 0) != 0)&&(Value("roostat") != 1)) {fhem("set roostat 1");;}
}


so geändert, dass es in eine sub passt:
sub:
sub RS()

{
my $Rst = ReadingsVal("RoombaStat","ChState",0);
my $Rcu = ReadingsVal("RoombaStat","Current",0);
my $Rdist = ReadingsVal("RoombaStat","Distance",0);

if( $Rst == 2 ) {
fhem "set roostat 2";
}
if( ($Rst == 3 || $Rst == 4) && $Rcu >= -200 ) {
fhem "set roostat 0";
}
if ( $Rst == 4 && $Rdist == 0 && $Rcu < -200 && $Rcu > -500 ) {
fhem "set roostat 3";
}
if ( $Rst == 4 && $Rdist != 0 && my $roomst != 1 ) {
fhem "set roostat 1";
}
}


Vlt. siehst du ja einen Fehler. Getriggert wird die sub im Prinzip über zwei notify.
einmal über
notify RoombaStat {RS} und beim betätigen von start über:
roombabef:start {fhem ("define rootmr at +00:00:10 {roomba_stat}; {RS}")}

{roomba_stat} wandelt nur die numerische Ausgabe in Klartext um, also in Dock, Läd,Saugt usw.

muss mir das morgen noch mal in Ruhe ansehen.

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

franky08

Mein Fehler, hatte eine Variable falsch belegt  :o
Jetzt funktioniert alles soweit.

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

Erby

Bist du schon so weit um den Code zu posten?

franky08

@Erby
Das wird dir aber nicht sehr weiterhelfen, da ich das hardcodiert habe. Im Prinzip basiert die Steuerung auf die Code Teile von stoxx.

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

franky08

#70
In fhem.cfg:
define roombabef dummy
attr roombabef DbLogExclude .*
attr roombabef alias Roomba Befehl
attr roombabef devStateIcon stop.*:Shutdown start.*:Restart dock.*:rc_templatebutton@yellow
attr roombabef room Roomba
attr roombabef setList state:start,stop,dock,spot
attr roombabef webCmd state
define roostat dummy
attr roostat DbLogExclude .*
attr roostat room Unsorted
define RoombaStat HTTPMOD http://192.168.2.226/roomba.xml 60
attr RoombaStat userattr reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading05Name reading05Regex reading06Name reading06Regex readingsName5 readingsName6
attr RoombaStat enableControlSet 1
attr RoombaStat reading01Name Current
attr RoombaStat reading01Regex 'Current'</name><value>([\D]?[\d]+)
attr RoombaStat reading02Name ChState
attr RoombaStat reading02Regex 'Charging State'</name><value>([\d])
attr RoombaStat reading03Name Distance
attr RoombaStat reading03Regex 'Distance'</name><value>([\D]?[\d]+)
attr RoombaStat reading05Name Charge
attr RoombaStat reading05Regex 'Charge'</name><value>([\D]?[\d]+)
attr RoombaStat reading06Name Capacity
attr RoombaStat reading06Regex 'Capacity'</name><value>([\D]?[\d]+)
attr RoombaStat room Roomba,Unsorted
attr RoombaStat stateFormat ChState
#
define roomba_notify notify roombabef { if (Value("roombabef") eq "start") {{GetFileFromURL("http://192.168.2.226:9001/roomba.cgi", 3)};;\
fhem("define roombago at +00:00:10 {GetFileFromURL('http://192.168.2.226/roomba.cgi?button=CLEAN', 3)};;");;};;\
if (Value("roombabef") eq "stop") {{GetFileFromURL("http://192.168.2.226/roomba.cgi?button=CLEAN", 3)}};;\
if (Value("roombabef") eq "dock") {{GetFileFromURL("http://192.168.2.226/roomba.cgi?button=DOCK", 3)}};;\
if (Value("roombabef") eq "spot") {{GetFileFromURL("http://192.168.2.226/roomba.cgi?button=SPOT", 3)}};;}\

attr roomba_notify DbLogExclude .*
attr roomba_notify room Roomba
#
define Status_roomba dummy
attr Status_roomba DbLogExclude .*
attr Status_roomba alias Status
attr Status_roomba devStateIcon Läd.*:message_socket@red Gedockt.*:rc_templatebutton@green Saugt.*:general_an@green Fehler.*:rc_HELP@red
attr Status_roomba room Roomba
attr Status_roomba stateFormat state
#
define Roomba_activity notify roostat.* {roomba_stat}
attr Roomba_activity DbLogExclude .*
attr Roomba_activity room Unsorted
#
define roostat_notify notify RoombaStat {RS}
attr roostat_notify DbLogExclude .*
attr roostat_notify disable 0
attr roostat_notify room Roomba,Unsorted
define Roomba_Capazit dummy
attr Roomba_Capazit DbLogExclude .*
attr Roomba_Capazit alias Akku Ladung/Rest bis 100%
attr Roomba_Capazit event-min-interval .*:300
attr Roomba_Capazit room Roomba
attr Roomba_Capazit stateFormat state mAh / rest mAh
define Log_Roomba_Capazit FileLog ./log/%Y-%m-Roomba_Capazit Roomba_Capazit
define SVG_Log_Roomba_Capazit_1 SVG Log_Roomba_Capazit:SVG_Log_Roomba_Capazit_1:CURRENT
attr SVG_Log_Roomba_Capazit_1 DbLogExclude .*
attr SVG_Log_Roomba_Capazit_1 group Strom
attr SVG_Log_Roomba_Capazit_1 label "min: $data{min1} mAh, max: $data{max1} mAh, last: $data{currval1} mAh "
attr SVG_Log_Roomba_Capazit_1 room Roomba
attr SVG_Log_Roomba_Capazit_1 title "Akuu Kapazität : "


und die zwei sub's:
sub roomba_stat()

{
my $roomst = ReadingsVal("roostat","state",0);

if( $roomst == 0 ) {
fhem "set Status_roomba Gedockt";
}
if( $roomst == 1 ) {
fhem "set Status_roomba Saugt";
}
if( $roomst == 2 ) {
fhem "set Status_roomba Läd";
}
if( $roomst == 3 ) {
fhem "set Status_roomba Fehler";
}
}

sub RS()

{
my $Rst = ReadingsVal("RoombaStat","ChState",0);
my $Rcu = ReadingsVal("RoombaStat","Current",0);
my $Rdist = ReadingsVal("RoombaStat","Distance",0);
my $Rcapa = ReadingsVal("RoombaStat","Capacity",0);
my $Rchar = ReadingsVal("RoombaStat","Charge",0);
my $roomst = ReadingsVal("roostat","state",0);

if( $Rst == 2 ) {
fhem "set roostat 2"; #Läd
{roomba_stat};
}
if( ($Rst == 3 || $Rst == 4) && $Rcu >= -200 ) {
fhem "set roostat 0"; #Gedockt
{roomba_stat};
}
if ( $Rst == 4 && $Rdist == 0 && $Rcu < -200 && $Rcu > -500 ) {
fhem "set roostat 3"; #Fehler
{roomba_stat};
}
if ( $Rcu != 0 && $Rdist != 0 && $roomst != 1 ) {
fhem "set roostat 1"; #Saugt
{roomba_stat};
}
if ( $Rcapa == $Rchar ) {
fhem "set roostat 0"; #Dock
{roomba_stat};
}
my $rest = $Rcapa - $Rchar;
fhem "set Roomba_Capazit $Rchar";
fhem "setreading Roomba_Capazit rest $rest";
{roomba_stat};
}


VG
Frank

P.S. an deine Ip und devices anpassen!!!
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

Erby

Vielen vielen Dank

Da ich kein Profi bin. Wohin muss ich den Code der subs rein kopieren? Und benötige ich die roowifi.pm welcher weiter vorne genannt wurde?

Grüße

franky08

roowifi.pm die brauchst du nicht!!
Aber wenn du schon nicht weißt wohin Subroutinen gehören dann nimm das mal lieber noch nicht in Angriff sondern beschäftige dich erst einmal mit den Grundlagen und vor allem auch mit Perl. Da wirst du nicht drumrum kommen wenn du weiter kommen willst!

sub's gehören in die 99_myUtils oder du legst eine neue Utils an

VG
Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

Erby

Bei steht immer "No Logdevice Log_Roomba_Capazit".

franky08

@Erby
dann hast du keins angelegt  ;)
define Log_Roomba_Capazit FileLog ./log/%Y-%m-Roomba_Capazit Roomba_Capazit
define SVG_Log_Roomba_Capazit_1 SVG Log_Roomba_Capazit:SVG_Log_Roomba_Capazit_1:CURREN
attr SVG_Log_Roomba_Capazit_1 label "min: $data{min1} mAh, max: $data{max1} mAh, last: $data{currval1} mAh "
attr SVG_Log_Roomba_Capazit_1 room Roomba
attr SVG_Log_Roomba_Capazit_1 title "Akuu Kapazität : "


Und die gplot dazu brauchst du aber auch
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

jmike


Atzebass

Hallo ,
Hat noch jemand einen Roowifi Adapter abzugeben?


Gesendet von iPhone mit Tapatalk

thgorjup

#77
Hallo, auch hier ist lange nichts passiert.
Ich habe nun ein roowifi v2 Modul und habe allerdings das Problem, dass ich keine Sensoren-Werte erhalte.
Kann mir da jemand helfen? Derzeit kann ich nur CLEAN-STOP-DOCK ausführen und den Roomba per Driver's-Remote verwenden.

Ich habe es mit einem 581 und 651 ausprobiert. Bei beiden keinerlei Werte der Sensoren.

roomba.xml

<response>
<r0>
<name>'Bumps Wheeldrops'</name>
<value>0</value>
</r0>
<r1>
<name>'Wall'</name>
<value>0</value>
</r1>
<r2>
<name>'Cliff Left'</name>
<value>0</value>
</r2>
<r3>
<name>'Cliff Front Left'</name>
<value>0</value>
</r3>
<r4>
<name>'Cliff Front Right'</name>
<value>0</value>
</r4>
<r5>
<name>'Cliff Right'</name>
<value>0</value>
</r5>
<r6>
<name>'Virtual Wall'</name>
<value>0</value>
</r6>
<r7>
<name>'Motor Overcurrents'</name>
<value>0</value>
</r7>
<r8>
<name>'Dirt Detector - Left'</name>
<value>0</value>
</r8>
<r9>
<name>'Dirt Detector - Right'</name>
<value>0</value>
</r9>
<r10>
<name>'Remote Opcode'</name>
<value>0</value>
</r10>
<r11>
<name>'Buttons'</name>
<value>0</value>
</r11>
<r12>
<name>'Distance'</name>
<value>0</value>
</r12>
<r13>
<name>'Angle'</name>
<value>0</value>
</r13>
<r14>
<name>'Charging State'</name>
<value>0</value>
</r14>
<r15>
<name>'Voltage'</name>
<value>0</value>
</r15>
<r16>
<name>'Current'</name>
<value>0</value>
</r16>
<r17>
<name>'Temperature'</name>
<value>0</value>
</r17>
<r18>
<name>'Charge'</name>
<value>0</value>
</r18>
<r19>
<name>'Capacity'</name>
<value>0</value>
</r19>
</response>


Gruß
Thomas

FHEM auf Ubuntu 18.04LTS, 2x nanoCUL, JeeLink, nanoPIR, MQTT, ESP-Easy, HUE.
Sensoren+Aktoren: HM, IT, Lacrosse, Multitrade-PIR, VU+, Somfy