NEWS
[Frage] Xiaomi Vacuum cleaner
-
Hi,
bis zu welcher FW des V1 kann ich denn "gefahrlos" Updaten ohne mir die IOBroker Anbindung bzw. Token zu verlieren?
aktuell bietet die Mi App ja 3.3.9_003194 an.
lg
-
So, hier die Infos zur Steuerung (vielen Dank für die Hilfe aus dem Forum dazu),
zuerst ist es wichtig die Koordinaten herauszufinden, dazu einfach einen Screenshot der Karte erstellen und ich hab mir den im Word in den Hintergrund gelegt. Die Ladestation war 25500,25500. Nach rechts und oben wird hochgezählt, nach links/unten wird runter gezählt.
Das einfach austesten, am Besten dabei die App anlassen, dort wird der Punkt eingezeichnet. Dann ein Raster drüber legen, 1000er Schritte sind ganz gut.
Ich reinige nur noch über die Zonen Funktion, weil der Robi manchmal bei der kompletten Reinigung die Karte um 90Grad dreht, dann hauen die Koordinaten aber nicht mehr hin…
<u>Bevor die Kommandos gesendet werden können, muss in der Adapter-Instanz der Haken bei "Sende eigene Befehle" gesetzt sein</u>
Punkt anfahren geht dann über:
app_goto_target; [27500,31000]
ZoneClean über:
app_zoned_clean;[[26117,26005,27767,27205,1]]
(unten links, oben rechts, Anzahl).
Alles wird im State "mihome-vacuum.0.control.X_send_command" gesetzt.
Seit der Adapter Version 1.1.0 gibt es auch die State "GoTo" und "ZoneClean":
GoTo funktioniert über
27500,31000
ZoneClean funktioniert bei mir nicht! Habe es versucht mit
[[26117,26005,27767,27205,1]] [26117,26005,27767,27205,1] 26117,26005,27767,27205,1
Er fährt nur 10cm aus der Basis und meldet Reinigung beendet. Vielleicht hat jemand einen Tipp, über o.g. X_send_command funzt es aber.
Ich steuere momentan mit diesem JS, dass ist aber in 10min zusammengeschrieben und wird noch schick gemacht. Dort sind die Zonen hinterlegt und diese kann ich dann im VIS aktivieren/ deaktivieren.:
! ````
var CCUUrlaub = "hm-rega.0.2638"/Urlaub/,
CCUGaeste = "hm-rega.0.3469"/Gaeste/,
CCUAnwesen = "hm-rega.0.7028"/Anwesenheit/,
CCUVerlass = "hm-rega.0.13102"/Verlassen/,
CCULeaving = "hm-rpc.0.LEQ1332345.1.PRESS_LONG" /Flur Taster Leaving.PRESS_LONG/,
CCUTuer = "hm-rpc.0.LEQ1468275.1.STATE"/Wohnzimmer Kontakt Tuer.STATE/,
CCUKinderD = "hm-rega.0.25633"/Kinderdienst/,
Feiertag = "feiertage.0.heute.boolean"/Feiertag heute?/,
IDRobo = "mihome-vacuum.0.control.X_send_command"/send command/,
IDFan = "mihome-vacuum.0.control.fan_power"/Suction power/,
Zone1 = "[24500,21600,29000,26000,1]", // Wohnzimmer incl. Teppich bis Terrasse
Zone2 = "[25200,26000,29000,29000,1]", // Wohnzimmer Teppichkante bis Tür
Zone3 = "[25200,26000,27000,29000,1]",// Wohnzimmer nur Laufbereich bis Teppichkante
Zone4 = "[26800,28800,28300,32700,1]", // Küche komplett
Zone4a = "[27100,28800,28300,32700,1]", // Küche Laufbereich
Zone5 = "[25200,28500,26600,33000,1]", // Flur komplett
Zone6 = "[25200,28500,26300,30000,1]", // Flur nur bis Treppe
Zone = "",
Loging = true,
Urlaub, Gaeste, Anwesen, Verlass, Kinder, Tuer = false;! /*app_zoned_clean;[[26117,26005,27767,27205,1]] unten links, oben rechts, Anzahl /
! function RZone(){
Zone = "";
if (getState("javascript.0.Roborock.Zone1").val) Zone = Zone1;
if (getState("javascript.0.Roborock.Zone2").val && Zone !=="") Zone = Zone + "," + Zone2;
if (getState("javascript.0.Roborock.Zone2").val && Zone ==="") Zone = Zone2;
if (getState("javascript.0.Roborock.Zone3").val && Zone !=="") Zone = Zone + "," + Zone3;
if (getState("javascript.0.Roborock.Zone3").val && Zone ==="") Zone = Zone3;
if (getState("javascript.0.Roborock.Zone4").val && Zone !=="") Zone = Zone + "," + Zone4;
if (getState("javascript.0.Roborock.Zone4").val && Zone ==="") Zone = Zone4;
if (getState("javascript.0.Roborock.Zone5").val && Zone !=="") Zone = Zone + "," + Zone5;
if (getState("javascript.0.Roborock.Zone5").val && Zone ==="") Zone = Zone2;
Zone= "app_zoned_clean;[" + Zone + "]";
}
!
! / aktuelle Randbedingungen abfragen /
function VarStatus(){
Urlaub = getState(CCUUrlaub).val;
Gaeste = getState(CCUGaeste).val;
Anwesen = getState(CCUAnwesen).val;
Verlass = getState(CCUVerlass).val;
KinderD = getState(CCUKinderD).val;
Tuer = getState(CCUTuer).val;
Feier = getState(Feiertag).val;
}
! / Mo und Mi wenn nicht Urlaub /
schedule("00 11 * * 1,3", function () {
VarStatus();
if (!Urlaub)
RZone();
setState(IDFan, 77);
setState(IDRobo, Zone);
});
! / früh den Laufbereich /
schedule("00 6 * * 1-5", function () {
VarStatus();
if (!Urlaub && !Feier && !Tuer && !Gaeste)
Zone = "app_zoned_clean;[" + Zone4a + "," + Zone3 + "," + Zone6 + "]";
setState(IDFan, 38);
setState(IDRobo, Zone);
});
! / Freitag wenn nicht Urlaub */
schedule("00 14 * * 5", function () {
VarStatus();
if (!Urlaub)
RZone();
setState(IDFan, 77);
setState(IDRobo, Zone);
});
! /*Samstag Staubbehälter leer machen */
schedule("0 11 * * 6", function () {
! VarStatus();if (!Urlaub && !Gaeste && Anwesen && !Verlass) setState(IDRobo, "app_goto_target; [27500,31000]");
! });
! /* Reinigung zum Urlaubsende /
on({id: "ical.0.events.Urlaub_Abwesend"/Urlaub_Abwesend/, val: false}, function() {
RZone();
setState(IDFan, 77);
setState(IDRobo, Zone);
});
! / Reinigung der gewählten Zonen /
on({id: "javascript.0.Roborock.ZoneR"/ZonenReinigung/, val: true}, function() {
RZone();
setState(IDFan, 77);
setState(IDRobo, Zone);
});
! / Reinigung aller Zonen */
on({id: "javascript.0.Roborock.Clean"/CleanAll/, val: true}, function() {
Zone = "app_zoned_clean;[" + Zone1 + "," + Zone2 + "," + Zone4 + "," + Zone6 + "]";
setState(IDFan, 77);
setState(IDRobo, Zone);
});
! createState('Roborock.Zone1', false,{type: "boolean",name:"Zone 1", role: "Wz incl Teppich bis Terrasse"});
createState('Roborock.Zone2', false,{type: "boolean",name:"Zone 2", role: "Wz ab Teppich bis Tür"});
createState('Roborock.Zone3', false,{type: "boolean",name:"Zone 3", role: "Wz Laufbereich"});
createState('Roborock.Zone4', false,{type: "boolean",name:"Zone 4", role: "Küche komplett"});
createState('Roborock.Zone5', false,{type: "boolean",name:"Zone 5", role: "Flur komplett"});
createState('Roborock.Zone6', false,{type: "boolean",name:"Zone 6", role: "Flur vor der Treppe"});
createState('Roborock.ZoneR', false,{type: "boolean",name:"ZonenReinigung", role: "button"});
createState('Roborock.Clean', false,{type: "boolean",name:"CleanAll", role: "button"});
! ````Grüße
Brati
-
Sehr coooool! Muß ich mir mal in Ruhe anschauen und zurechtschnippseln, da ich leider kein js kann. Auf jeden Fall ein dickes Danke.
Grüße Andreas
-
Sehr coooool! Muß ich mir mal in Ruhe anschauen und zurechtschnippseln, da ich leider kein js kann. Auf jeden Fall ein dickes Danke.
Grüße Andreas `
Schau dir das Script mal an, es ist sehr rudimentär und kann partiell gut kopiert werden. In der weiteren Folge, kürze ich die Schedule raus und lagere sie in States oder Arrays aus, so dass immer nur der nächste gesetzt wird. Aber dafür war jetzt keine Zeit…
Die Zone Variablen definieren einfach die Koordinaten. Die Randbedingungen sind eh abhängig von allen weiteren Programmen und Vorlieben.
Grüße Brati
Von unterwegs gesendet.
-
Das mit der Zonenreinigung funktioniert aber nur mit einer fixen Karte oder?! Wechseln zwischen EG und dann im Obergeschoss geht nicht?!
-
Richtig. Das würde dann nur bei der 2. Reinigung im gleichen Bereich funktionieren.
Eine Idee. Die Koordinaten liegen ja relativ zur Basis, wenn er also IMMER die Karte gleich aufbaut, könnte es vielleicht auch beim ersten Mal funktionieren, wenn er immer am gleichen Punkt startet. Bei mir dreht er aber die Karte sporadisch um 90 Grad und dann liegen die Zonen hinter einer Wand. Müsste mal jemand testen…
Wenn der V1 auch diese Funktion bekommt, überlege ich ja fast den fürs OG noch zu kaufen. Das war nämlich der Grund den V2 zu kaufen...
Grüße Brati
Von unterwegs gesendet...
-
Hi,
bis zu welcher FW des V1 kann ich denn "gefahrlos" Updaten ohne mir die IOBroker Anbindung bzw. Token zu verlieren?
aktuell bietet die Mi App ja 3.3.9_003194 an.
lg `
aktuelle Version läuft, musste nur Token neu auslesen und eintragen.
-
Da hier Momentan gefühlt 20 Möglichkeiten gibt den Token auszulesen aber irgendwie nichts funktioniert muss ich nochmal fragen wie es Aktuell geht.
Ich habe ein Wlan Passwort geändert dadurch hat er anscheinend seinen Token verloren.
Ich nutze das Mitoolkit aber der Token wird mir da nicht mehr angezeigt.
Ich nutze Android 7.1.1, Mihome App 5.1.22 und der Sauger iGen. 3.3.9
Gruß Christian
-
Da ich letzte Woche zwei Roboter für Bekannte eingerichtet habe, kann ich dir vielleicht helfen.
Erst habe ich die aktuelle Mihome app installiert. Roboter eingerichtet. Der Schritt kann bei dir entfallen, da der Roboter schon mit deinem Mihome Account verknüpft war.
Dann hab ich die Mihome Version 5.0.6 installiert und über diese mit dem toolkit den Token ausgelesen.
Mein Problem war anfangs, daß ich mit der alten Mihome Version den Roboter nicht einrichten konnte. Deshalb der Umweg über die neue Version und dann zur alten zurück
Hoffe, ich konnte helfen.
Grüße Andreas
-
Es gibt noch eine manipulierte Mi Home App die den Token unter Netzwerkinfo anzeigt.
-
Danke euch für die schnelle Hilfe,
habe es so gemacht wie von lelixxx beschrieben, dauerte keine 5 Minuten.
Gruß Christian
-
Moin!
Muß auch mal meinen Senf dazugeben:
Genau wie Brati habe ich jetzt auch mal alle (relevanten) Räume als Objekte angelegt und mir in vis ne schöne Bedienoberfläche gebaut.
Jetzt macht der Sauger erst richtig sinn da man ihn dediziert in die Küche …etc schicken kann.
Habe gestern mal ausführlich mit Karten-Neu-Erstellung getestet:
-
die Karte muß nicht vollständig vorliegen, er fährt auch Zonen an die noch nihct erkundet sind
-
das verdrehen der Karte (bei mir meist 45°) findet nicht statt wenn er saubere Kanten beim Start hat. Es ist also wichtig wo die Dockingstation steht. Wer also das Problem der verdrehten Karte hat sollte mal mit einer Dockingststation-Pos testen die sehr viel gerade Wände um sich hat.
Gerade in Kombination mit Google Home macht der Suager jetzt doppelt soviel Spaß!
bis denne
Mr.Lee
-
-
beim neuesten Update (3.3.9_003194) des V1 Cleaners sind nun versteckt die Funktionen des v2 hinzugekommen (Zonenreinigung und goto). Das wird künftig nochmal interessant fürn ioBroker `
Hat die neuen Funktionen im V1 schon jemand genutzt? Das wäre genial, wenn ich meinem Sauger sagen könnte, er soll nur die Küche saugen. -
Ich will mal die Funktion endlich haben für meine V1.
aktuelles IOs, Mi Home APP, sowie Firmware.
Gibts da ne Trick oder verteilt XIAOMI das?
Gruß
-
@Flole - Roboter-Forum.
> Soetwas nennt man "staged rollout", zu Deutsch gestaffelte Einführung. Es gibt einen genauen Plan welches Gerät wann das Update erhält, das kann man im Prinzip nicht beeinflussen. So sollen große Probleme erkannt werden, bevor sie die breite Masse erreichen. Es werden immer zufällig Geräte rausgesucht, die das Update zuerst erhalten. Xiaomi hat ja auch genug Daten gesammelt um zu schauen wer ein potentiell toleranter User ist, eventuell spielt das da auch mit rein. Oder aber das man wenn man viele Geräte hat bevorzugt behandelt wird oder oder oder. Da gibt's tausende Möglichkeiten.
-
beim neuesten Update (3.3.9_003194) des V1 Cleaners sind nun versteckt die Funktionen des v2 hinzugekommen (Zonenreinigung und goto). Das wird künftig nochmal interessant fürn ioBroker
Hat die neuen Funktionen im V1 schon jemand genutzt? Das wäre genial, wenn ich meinem Sauger sagen könnte, er soll nur die Küche saugen.
Jo… Läuft siehe Posts von Brati genauso beim v1...Gesendet von meinem SM-G930F mit Tapatalk
-
Kann mir bitte nochmals jemand erklären wie ich meine Karte rastern muss für die Koordinaten um dann verschiedene Bereiche der Zonenreinigung anzulegen ?! (den Beitrag von Brati hab ich gesehen checks aber trotzdem nicht) thx
3845_img_3951.png -
Das musst du per probieren mit der Goto Funktion testen. Deine Ladestation sollte 25500,25500 sein, also fährst du erstmal 25000,24500 an. Das sollte den Robi nach unten etwas links von der Station führen. Wenn du danach 25000,23500 ansteuerst, hast du ein 1000er Raster in Y Richtung.
Ich habe den Screenshot zugeschnitten und bei Word in den Hintergrund gelegt, das 1000er Raster habe ich dann mit einem Rechteck eingezeichnet, dass danach nur noch kopiert wird.
Das Gleiche dann in X Richtung (auf Höhe des Flur) und fertig bist du.
Grüße Brati
Von unterwegs gesendet…
-
Jo… Läuft siehe Posts von Brati genauso beim v1... `
Gerade mal ausprobiert, mein Sauger reagiert weder auf app_zoned_clean noch app_goto. Vermutlich hab ich das Update noch nicht bekommen
-
Das musst du per probieren mit der Goto Funktion testen. Deine Ladestation sollte 25500,25500 sein, also fährst du erstmal 25000,24500 an. Das sollte den Robi nach unten etwas links von der Station führen. Wenn du danach 25000,23500 ansteuerst, hast du ein 1000er Raster in Y Richtung.
Ich habe den Screenshot zugeschnitten und bei Word in den Hintergrund gelegt, das 1000er Raster habe ich dann mit einem Rechteck eingezeichnet, dass danach nur noch kopiert wird.
Das Gleiche dann in X Richtung (auf Höhe des Flur) und fertig bist du.
Grüße Brati
Von unterwegs gesendet… `
Was mir so noch nicht ganz klar ist: Bei dem Befehl: app_zoned_clean;[[26117,26005,27767,27205,1]] - hier gebe ich ja nur eine Y und eine X Richtung an.
Was macht er aber denn dann genau? ich brauche doch für eine Zonenreinigung 4 Koordinaten/Punkte oder?