Anbindung des Xiaomi Mi Robot Roborock S50 an Alexa

Benutzeravatar

Themenstarter
Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

So 1. Apr 2018, 17:09

Mr.Fisch hat geschrieben:
So 1. Apr 2018, 16:11
Hoffentlich kommt noch die Alexa-Anbindung.
Ob der Hersteller das anbietet bleibt abzuwarten. Du kannst aber auch jetzt schon den Sauger mit einer Hausautomationssoftware über Alexa benutzen. Die Kartendaten lassen sich nur extern nutzen wenn das Gerät gerootet ist. Ich selber nutze zur Steuerung über Alexa IP-Symcon und IPSymconRoborock.
1 x
Benutzeravatar

Mr.Fisch
Beiträge: 99
Registriert: So 30. Okt 2016, 11:53
Vorhandene Echos: 6
Vorhandene Echo Dots: 3

Mo 2. Apr 2018, 09:34

@Fonzo: Danke für den Tipp. Ein wenig Aufwand, aber eine top Anleitung dafür. Viele Funktionen stehen dann potentiell zur Nutzung mit Alexa zur Verfügung. Aber das, was ich mir eigentlich vorstelle geht damit leider noch nicht:

Ich stelle mir das so vor..... "Alexa, reinige die Küche" oder speziell für das Showprogramm meiner Gäste.... "Alexa, mach vor dem Kühlschrank sauber" (oder auch Alexa, starte Reinigungsvorgang vor dem Kühlschrank).

Mit der Xiaomi-App soll das ja bereits gehen. Bereich auf der Map markieren und Spotreinigung starten. Mit der IP-Symcon Lösung geht schon viel, aber wenn ich das richtig gelesen habe, kann ich den Saugroboter nirgends gezielt hin navigieren sondern nur allgemein starten.
0 x
Benutzeravatar

Themenstarter
Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Mo 2. Apr 2018, 10:26

Mr.Fisch hat geschrieben:
Mo 2. Apr 2018, 09:34
Ein wenig Aufwand, aber eine top Anleitung dafür.
Der Aufwand liegt vor allem am Token und das liegt wiederum daran das der Hersteller eben nicht will, das sich der Sauger einfach von extern zu bedienen ist. Aber mal sehen, eventuell gibt es da ja noch eine Möglichkeit das einfacher zu gestalten. Ein sehr interessantes Projekt ist hier Dustcloud, ist zwar eher für Technik Anhänger, aber es ermöglicht einem sehr viel über den Sauger zu lernen, wenn man sich die Zeit nimmt, da man dann Root Rechte auf dem Gerät besitzt.
Mr.Fisch hat geschrieben:
Mo 2. Apr 2018, 09:34
Ich stelle mir das so vor..... "Alexa, reinige die Küche" oder speziell für das Showprogramm meiner Gäste.... "Alexa, mach vor dem Kühlschrank sauber" (oder auch Alexa, starte Reinigungsvorgang vor dem Kühlschrank).

Mit der Xiaomi-App soll das ja bereits gehen. Bereich auf der Map markieren und Spotreinigung starten. Mit der IP-Symcon Lösung geht schon viel, aber wenn ich das richtig gelesen habe, kann ich den Saugroboter nirgends gezielt hin navigieren sondern nur allgemein starten.
Wenn mal Zeit ist, hatten wir überlegt das eventuell noch so zu erweitern, dass man eine abgefahrene Route abspeichern kann. Dann würde so was auch gehen, immer mit der Voraussetzung, das der Roboter dann auf dem selber Ausgangspunkt, sprich der Base steht, wenn man das startet. Das sinnvoll mit der Map machen zu können muss man schauen, weil wie gesagt die Kartendarstellung zwar geht, aber nur wenn das Gerät gerootet ist, das ist auch nichts fürs den normalen Anwender. Mal sehen ob man das generell noch vereinfachen kann, der wichtigste Ansatz wäre hier zunächst mal das mit dem Token zu vereinfachen. Du kannst den Roboter aber per Hand gezielt irgendwo hin navigieren wie mit einem Spielzeugauto mit Fernsteuerung. Ich schau mal was sinnvoll ist, das mit der Map wäre schön, aber nur wenn man da den Prozess noch vereinfacht werden kann und man das Gerät nicht komplett selbstständig rooten muss. Das Anfahren von Koordinaten ist grundsätzlich möglich, nur aus meiner Sicht eben auch nur sinnvoll wenn die Kartendaten vorliegen. Ansonsten wenn man die Koordinaten kennt, könnte man auch ein Spotcleaning über die Koordinaten anweisen und so dann z.B. Alexa, starte Reinigung vor dem Kühlschrank realisieren. Wenn ich die Zeit finde schaue ich mir das selber mal näher an.
Eine Spotcleaning ohne Karte zu initiieren, nur anhand der Koordinaten, geht zwar auch, ist aber wie Blindflug, ob Du dann genau da rauskommst wo Du willst weis ich nicht. Ich schaue mir das mal bei Gelegenheit näher an. Eventuell macht es Sinn eine Karte einer Komplettreinigung der Etage abzuspeichern, um dann die Koordinaten besser zuordnen zu können, ich sehe schon Du bringst einen auf neue Ideen ;) .
0 x
Benutzeravatar

Mr.Fisch
Beiträge: 99
Registriert: So 30. Okt 2016, 11:53
Vorhandene Echos: 6
Vorhandene Echo Dots: 3

Di 3. Apr 2018, 12:23

Ich bin echt gespannt was alles noch möglich ist. In dem u.a. Video zur ioBroker Integration wird am Anfang (~1:30) ein 3D Grundriss des Hauses über die Grundriss-Informationen des Saugroboters gelegt. Sehr cool! Ich kann es gar nicht erwarten wann das Teil endlich bei mir eintrifft.

https://youtu.be/kIOs3-eef10
0 x
Benutzeravatar

Themenstarter
Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Di 3. Apr 2018, 13:13

Mr.Fisch hat geschrieben:In dem u.a. Video zur ioBroker Integration wird am Anfang (~1:30) ein 3D Grundriss des Hauses über die Grundriss-Informationen des Saugroboters gelegt. Sehr cool!
Mir ist nur nicht klar ob diese Daten in Echtzeit als Layer gezeichnet werden oder ob da einfach eine Statische Grafik verwendet wurde. Kannst ja mal berichten wenn Du das rausgefunden hast. Da eine statische Grafik reinzulegen sehe ich jetzt den Mehrwert persönlich nicht, denn es zeigt Dir ja nicht die momentane Position des Saugers an. Aber wenn da irgendwo beschrieben wird wie man die Echtzeitdaten unterhalb des 3D Grafik zeichnet würde mich das selber interessieren wie das gelöst wurde.

Mr.Fisch hat geschrieben: ein 3D Grundriss des Hauses über die Grundriss-Informationen des Saugroboters gelegt.
Wenn ich das richtig sehe ist das einfach eine statische Grafik aus der App des Saugers, diese ändert sich also nie. Genau da ist man dann an dem Punkt wo jeder das unterschiedlich bewertet, der eine findet es cool Linien im festen Design zu haben, der andere zu überladen und zu bunt und der nächste nutzlos. Hier muss jeder den Weg finden was er selber für eine Visualisierung haben will.
0 x
Benutzeravatar

Themenstarter
Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Mi 11. Apr 2018, 13:35

Mr.Fisch hat geschrieben:
Mo 2. Apr 2018, 09:34
Ich stelle mir das so vor..... "Alexa, reinige die Küche" oder speziell für das Showprogramm meiner Gäste.... "Alexa, mach vor dem Kühlschrank sauber" (oder auch Alexa, starte Reinigungsvorgang vor dem Kühlschrank).
Ich habe das mal angeschaut, grundsätzlich geht das schon. Du kannst entweder den Sauger an eine feste Position fahren lassen und dann ein Spot Cleaning starten oder alternativ eine Zone reinigen. Das Problem ist hier, bei das der Sauger stetst am gleichen Ausgangspunkt stehen muss wenn der Befehl erfolgt und einem die Koordinaten bekannt sein müssen. Das ist ziemliches gefrickel diese Koordinaten sauber zu bestimmen und alles andere als benutzerfreundlich. Aber wenn man sich einmal die Mühe machen will die Koordinaten zu bestimmen, dann geht auch so was wie Alexa, reinige die Küche.
0 x
Benutzeravatar

theNick
Beiträge: 136
Registriert: So 29. Jan 2017, 18:11
Vorhandene Echo Dots: 2

Mi 11. Apr 2018, 14:01

Mr.Fisch hat geschrieben:
Mo 2. Apr 2018, 09:34
...Ich stelle mir das so vor..... "Alexa, reinige die Küche" oder speziell für das Showprogramm meiner Gäste.... "Alexa, mach vor dem Kühlschrank sauber" (oder auch Alexa, starte Reinigungsvorgang vor dem Kühlschrank).

Mit der Xiaomi-App soll das ja bereits gehen. Bereich auf der Map markieren und Spotreinigung starten. Mit der IP-Symcon Lösung geht schon viel, aber wenn ich das richtig gelesen habe, kann ich den Saugroboter nirgends gezielt hin navigieren sondern nur allgemein starten.
Hi Mr. Fisch,

ich habe das gerade per ioBroker eingerichtet. "Alexa, sauge Küchenzeile" oder "sauge Eingangsbereich" usw. Ist, wie Fonzo schon schrieb, etwas fummelig, die Koordinaten in der Wohnung zu bestimmen! Aber es funktioniert und ist eine geniale Sache, finde ich :relaxed:

http://www.roboter-forum.com/showthread ... xa-steuern

Beste Grüße

Nick
Fonzo hat geschrieben:
Mi 11. Apr 2018, 13:35

...Das Problem ist hier, bei das der Sauger stetst am gleichen Ausgangspunkt stehen muss wenn der Befehl erfolgt und einem die Koordinaten bekannt sein müssen. Das ist ziemliches gefrickel diese Koordinaten sauber zu bestimmen und alles andere als benutzerfreundlich. Aber wenn man sich einmal die Mühe machen will die Koordinaten zu bestimmen, dann geht auch so was wie Alexa, reinige die Küche.
HI Fonzo,

das verstehe ich nicht. Wenn Du den Sauger zu einem Koordinatenpunkt schickst, dann müsste es dem Robi doch egal sein, wo er in der Wohnung steht. Hauptsache Du hast ihn nicht zum Punkt A hingetragen. Wenn er von der Station zu Punkt A gefahren ist, dann kannst Du ihn doch von da aus zu Punkt B schicken...

Beste Grüße

Nick
0 x
TV: Samsung Plasma PS506970YS / Receiver: Onkyo TX-NR646 / HTPC: MediaPortal, IR605A/Q, IMON / Fire TV Stick / Raspberry PI 2 / Raspberry PI 3 / Harmony 650 / Harmony Elite/Hub / Hue Bridge + 4 Lampen / Echo Dot 2x
Benutzeravatar

Themenstarter
Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Mi 11. Apr 2018, 15:46

theNick hat geschrieben:
Mi 11. Apr 2018, 14:06
das verstehe ich nicht. Wenn Du den Sauger zu einem Koordinatenpunkt schickst, dann müsste es dem Robi doch egal sein, wo er in der Wohnung steht. Hauptsache Du hast ihn nicht zum Punkt A hingetragen. Wenn er von der Station zu Punkt A gefahren ist, dann kannst Du ihn doch von da aus zu Punkt B schicken...
Das weis ich nicht weil ich das so im Detail noch nicht benutzt habe. Wie hast Du das denn gelöst? Ich gehe ja davon aus das der Sauger einen festen Bezugspunkt braucht auf den sich die Koordinaten beziehen. Wenn Du den Sauger hochhebst und wo anderes hinsetzt geht das dann dennoch mit Koordinaten zu arbeiten? Daher ging ich davon aus die Ladestation als Bezugspunkt dient. Hast Du selber bisher eine einfache Möglichkeit gefunden die Koordinaten zu bestimmen oder wie bist Du dazu vorgegangen? Gibt es eventuell sogar einen versteckten Befehl mit dem man sich einfach die aktuellen Koordinaten auslesen kann? Das wäre ja dann sicher das einfachste, dann müsste man den Sauger nur an die Position fahren und dann die Koordinaten des Standorts auslesen. Ich würde das ja vielleicht einfach in die Kartendaten integrieren, mich schreckt aber halt nach wie vor ab, das der Sauger dafür gerootet sein muss um die Karte auszulesen.
0 x
Benutzeravatar

theNick
Beiträge: 136
Registriert: So 29. Jan 2017, 18:11
Vorhandene Echo Dots: 2

Mi 11. Apr 2018, 16:28

Moin Fonzo,

ja, der Sauger hat einen festen Bezugspunkt. Von Werk aus hat die Station den Koordinatenpunkt x=25500 y=25500.

Ich habe mir einen Screenshot einer kompletten Reinigung/Map ausgedruckt und ein Koordinatenkreuz gezeichnet.
Anschließend den Robi um den Wert x=1000 per Befehl "app_goto_target; [24500,25500]" einen Schritt von der Station in den Raum geschickt.
So taste ich mich bis zur gegenüberliegenden Wand vor. Ist diese erreicht, auf der Karte den Koordinatenpunkt vermerken. Dann noch einen 1000er Schritt nach rechts (app_goto_target; [22500,24500]) usw.

Wenn Du also die untere linke Ecke und die obere rechte Ecke Deines Raumes ermittelt hast, dann kannst Du den Robi per Befehl:

app_zoned_clean;[[23800,22350,25700,23600,1]] (Beispiel meines Badezimmers)
(die ",1" am Ende steht für die gewünschte Anzahl der Reinigungen der Zone! (1x - 3x))

den Raum reinigen lassen. Auch mehrere Zonen hintereinander sind möglich (und nicht, wie durch die App, auf 5 Zonen begrenzt)!
Das wäre dann mit dem Befehl app_zoned_clean;[[23800,22350,25700,23600,1],[23800,22350,25700,23600,1]] zu machen!

Wichtig zu beachten: Eine Zone, die gereinigt werden soll, muss mit den Koordinaten- Punkten "Raumecke unten links und Raumecke oben rechts" angegeben werden!


Beste Grüße

Nick


P.s. nein, wenn ich den Robi zu einem Punkt trage, dann hat er den Punkt zur Station verloren. Schicke ich ihn aber von der Station zu Punkt X, dann findet er anschließend noch die Zone Y...
P.p.s Ich glaube nicht, dass es bisher möglich ist, einer ausgelesenen Karte die Koordinaten zu entnehmen! Dann hätte der User "Flole" es bestimmt schon im Roboter- Forum gepostet! Der ist da echt am Ball! Bevor Xiaomi die Zonenfunktion für den Xiaomi Version 1 freigeschaltet hatte, war Flole damit beschäftigt, diese für die V1 Nutzer verfügbar zu machen! Der ist da offensichtlich echt ein Crack!

Ergänzung:

realisiert mit ioBroker auf einem Rapi Pi. Dort über den Szenen- Adapter...
0 x
TV: Samsung Plasma PS506970YS / Receiver: Onkyo TX-NR646 / HTPC: MediaPortal, IR605A/Q, IMON / Fire TV Stick / Raspberry PI 2 / Raspberry PI 3 / Harmony 650 / Harmony Elite/Hub / Hue Bridge + 4 Lampen / Echo Dot 2x
Benutzeravatar

Themenstarter
Fonzo
Beiträge: 1690
Registriert: Fr 24. Feb 2017, 00:06

Mi 11. Apr 2018, 17:55

theNick hat geschrieben:
Mi 11. Apr 2018, 16:31
ja, der Sauger hat einen festen Bezugspunkt. Von Werk aus hat die Station den Koordinatenpunkt x=25500 y=25500.
Danke für die Info, ist für mich zwar nicht logisch warum das genau 25500 ist aber ich werde es mir merken.
theNick hat geschrieben:
Mi 11. Apr 2018, 16:31
Ich habe mir einen Screenshot einer kompletten Reinigung/Map ausgedruckt und ein Koordinatenkreuz gezeichnet.
Ja so wäre auch meine Idee, ich würde nur versuchen die Daten bei einer Reinigung des vollen Raums aufzuzeichnen und dann die maximal Koordinaten anzugreifen. Dann sollte man ja zumindest für den Raum ein Bezugsraster haben, das erspart einem dann das Gebastel an einer ausgedruckten Karte. Ich möchte es am Schluss halt möglichst einfach haben.
theNick hat geschrieben:
Mi 11. Apr 2018, 16:31
Auch mehrere Zonen hintereinander sind möglich (und nicht, wie durch die App, auf 5 Zonen begrenzt)!
Das wäre dann mit dem Befehl app_zoned_clean;[[23800,22350,25700,23600,1],[23800,22350,25700,23600,1]] zu machen!
Danke für die Info, nutzt Du das denn real? Meist kann man dann doch auch gleich den ganzen Raum reinigen lassen, oder fährst Du nacheinander im Alltag Zonen an die Du häufiger reinigst?
theNick hat geschrieben:
Mi 11. Apr 2018, 16:31
Ich glaube nicht, dass es bisher möglich ist, einer ausgelesenen Karte die Koordinaten zu entnehmen!
Doch das geht die Kartendaten werden ja auch in IP-Symcon genutzt,
siehe
IPSymconRoborock
damit hast Du theoretisch auch die Positionsdaten bzw. weist wo der Sauger sich befindet, die Karte wird ja während des Saugvorgangs erstellt. Das Problem ist das das Gerät dafür gerootet werden muss und das ist sicher nicht jedermanns Sache. Es wäre halt schön irgendwie an die Positionsdaten zu kommen ohne das Gerät rooten zu müssen.
0 x
Antworten

Zurück zu „Sonstige Komponenten und Steuerungsmöglichkeiten“

  • Information