Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)

Begonnen von Markus M., 11 Juni 2017, 12:48:58

Vorheriges Thema - Nächstes Thema

pumabaer

Zitat von: Skusi am 12 April 2018, 12:51:49
23500,25500 ist ca 1m weiter rechts.
21500,25500 ist ca 1m weiter links.
22500,26500 ist ca 1m höher.
23509,24500 ist ca 1m tiefer.

Also ist jeder 1000er schritt ca einen Meter, na damit kann echt arbeiten
Wenn ich auf FHEM eine Zone schicke, sieht man die dann in der App?
Also wenn man in der App eine Zone auswählt wird die ja so leicht weiß markiert

Nicht das man immer testen muss, und bemerkt das er sonst wo hin fährt :D
FHEM auf IntlNUC, 2xCUL868, MAX! Heizkörperthermostate/Wandthermostate, Homematic, LD382A (LED Contoller WIFI), Echo Dot, Homebridge/Homekit, Denon AVR-X1300W, Xiaomi Mi Robot Vacuum, Xiaomi Flower Sensor, Xiaomi2MQTT, Xiaomi Melder usw

BooStar

Hi...
ja.. das mit der Zonenreinigung würde mich auch interessieren, vor allem, wie man die in FHEM eingibt...

RappaSan


BooStar


Markus M.

Zitat von: BooStar am 12 April 2018, 15:58:18und wie erwartet FHEM das Format für die Zone?

So wie in der commandref (zumindest schon teilweise) beschrieben ;)

Entweder direkt über die Werte:
set vacuum goto 22000,23750
set vacuum zone 16200,27250,31650,27650,1 23700,23050,25200,24200,2


Oder du legst dir über die passenden Attribute erst ein Alias an:
Code (attr) Auswählen
attr vacuum point_names dock:[25600,25200] entrance:[22000,23750]
attr vacuum zone_names home:[16200,27250,31650,27650,1],[23700,23050,25200,24200,2] livingroom:[16200,26250,23000,30150,1]

Und verwendest dann statt den Punkten das:
Code (alias) Auswählen
set vacuum goto entrance
set vacuum zone home


Fühlt sich jemand dazu berufen, das ins Wiki einzutragen? :)
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0

Otto123

Hi,

kann es sein, das die Ladestation am Punkt 25500,25500 ist?

Ist zumindest bei mir scheinbar so  :-[

Weiterhin ist bei  mir (Version 1):
- meine Ladestation steht links an der Wand, wenn er einfach gerade heraus fährt, fährt er nach rechts in der Karte
- die Koordinaten dann scheinbar x,y
- also x+1000 geht nach rechts, y+1000 geht oben

Ich kann noch nicht genau sagen, wie er oben und unten einrichtet. Im normal Zustand ist bei mir unten etwa Norden, wenn ich ihn in einen benachbarten Raum stelle und starte, ist Norden oben.

Ich würde das ja machen mit dem Wiki, aber dazu ist es mir noch zu unklar  :-[

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Shojo

FHEM auf: Shuttle PC (x64) (Docker)
Bridge: SignalESP 433mHz, ConBee (deCONZ in Docker)
Rest: ESP8266, SONOFF, Sonos, Echo Dot, Xiaomi Vacuum (root), ESP RGBWW Wifi Led Controller, Node-RED, LEDMatrix, Pixel It

Skusi

Oh, sorry sorry sorry !!!

Zitatkann es sein, das die Ladestation am Punkt 25500,25500 ist?

Otto123 hat natürlich recht. Da ist mir beim schreiben auf dem Handy heute Mittag wohl ein Fehler unterlaufen.

Also hier nochal berichtigt:

25500,25500 ist die Koordinate der Ladestation.
26500,25500 ist ca 1m weiter rechts.
24500,25500 ist ca 1m weiter links.
22500,26500 ist ca 1m höher.
23509,24500 ist ca 1m tiefer.

Ich habe den Sauger einfach mal mit set goto 22000,25000 auf eine Freie Fläche geschickt, dann einen Screenshot der Karte gemacht.
Dann hab ich beide Werte um 1000 geändert, und per set goto 23000,24000 auf eine 2. Position gefahren. Wieder einen Screenshot gemacht, und beide Bilder in Gimp geladen und per Ebene halbtransparent übereinander gelegt.
Dann hab ich per Auswahlwerkzeug eine Rechteck von Pos 1 zu Pos 2 aufgezogen und mir die x/y Größe notiert.
In einer 3. Ebene hab ich dann ein Raster mit diesen Maßen gerendert und per Offset auf die Positionen verschoben.

Ergebnis ist der dritte Dateianhang, mit dem ich nun meine Eckpunkte (unten links - oben rechts) auszählen - rechnen kann.

Mein erster Test war überraschend genau.
set zone 25400,17800,27800,20300,1
x/y unten links - x/y oben rechts - einmal saugen

In der App kann man nach abschicken des Kommandos sofort sehen wo die Zone gelandet ist. Der Saugen saugt auch sofort los. Ich habe dann immer sofort per App abgebrochen und die Werte in 100ter Schritten noch feingetuned.

Am Ende hab ich dann per Attribut
zone_names Täglich:[25400,17800,27800,20300,1],[28000,17500,31500,19400,1],[23300,14400,26700,17600,1]
definiert, und noch schnell einen Button ins FTUI geschraubt. So kann ich nun auf Button am Wandtableau eine 3 Zonen Schnellreinigung der wichtigsten Bereiche für zwischendurch anschieben.

Funktioniert einwandfrei.

An dieser Stelle großen respektvollen dank an Markus M. für das Modul.

Einfach Geil das man wieder per Fhem Dinge realisieren kann, die die App (noch) nicht hergibt.



RPI3B, SIGNALduino, NanoCul868 (a-culfw), JeeLink Clone (LaCrosse), Firmata  für FB Heizung,Wasser+Gas+Klingel+Lux, Somfy Rolladen, Pollin Steckd.,TX29DTH,ESPEasy an S0 Stromz., MAX Fensterkontakte, IButton, SonOff Tasmota, ESP LED Controler

Shojo

Zitat von: Skusi am 12 April 2018, 19:53:51
Also hier nochal berichtigt:

25500,25500 ist die Koordinate der Ladestation.
26500,25500 ist ca 1m weiter rechts.
24500,25500 ist ca 1m weiter links.
22500,26500 ist ca 1m höher.
23509,24500 ist ca 1m tiefer.

Ja das kann ich so bestätigen.
Wie es scheint werden die XY  Koordinaten immer in der "Blickrichtung" von der vom Sauer an der Station berechnet. 
Nein anscheinen doch nur die X Koordinaten  immer in der "Blickrichtung" von der vom Sauer an der Station berechnet.
Nein auch das war falsch.... alles aus Sicht der Karte .... (Der Robi wollte mich grade echt Veräppeln ;) )
FHEM auf: Shuttle PC (x64) (Docker)
Bridge: SignalESP 433mHz, ConBee (deCONZ in Docker)
Rest: ESP8266, SONOFF, Sonos, Echo Dot, Xiaomi Vacuum (root), ESP RGBWW Wifi Led Controller, Node-RED, LEDMatrix, Pixel It

Otto123

Moin,

ich habe mal gerade noch etwas experimentiert.
Die Koordinaten sind immer aus Blickrichtung der Karte. Wir er die genau festmacht, konnte ich noch nicht ermitteln.
Der Ursprung (25500,25500) wird beim start festgelegt, egal ob per set <> start oder durch drücken auf den Startknopf. Er hat primär nix mit Ladestation zu tun.
Man kann ihn per Hand wegschaffen und an anderer Stelle mit cleanup starten, dann pause machen und mit Hilfe von App und Karte kurz vor die Ladestation fahren (ca. 0,5 meter davor), dann set charge sagen und er findet die Ladestation. Wenn man dann goto 25500, 25500 macht geht er an den alten Startpunkt zurück. Scheinbar nach etwas Zeit in der Ladestation? bzw. erst wenn man ihn aus der Ladestation mit cleanup startet, setzt er den Ursprung neu.

Mann kann ihn unbekannte Punkte anfahren lassen, wenn er auf dem Weg dahin keine geschlossenen Wände auf seiner alten Karte hat. War in der alten Karte die Tür zu war, versucht er völlig unsinnige Umwege.

Er ermittelt eine neue Karte wenn er mit dem Cleanup anfängt, man kann die Verwendung der alten Karte also verhindern:
wenn man kurz mit cleanup startet und dann pause macht um dann letzlich eine Zielkoordinate anzugeben.
Das ist wichtig, wenn er als Letztes per Hand an einer ganzen anderen Stelle des Hauses war.

Die Längen Einheit der Koordinaten ist nicht exakt millimeter sondern etwas kürzer. So in etwa Faktor 0,91 was irgendwie stark nach yard als Basis "riecht". Aber wird denn im yard "Land" dann wirklich in tausendstel geteilt? Erscheint mir wieder nicht logisch.  ::)

Wenn ich ihn beim Start um 180 grad drehe und an die Wand stelle, ist dann immer noch die neue Karte in der alten Lage, ob er dafür Karte -1 zum "einnorden" zu Rate zieht? Da muss ich weiter testen.

Ansonsten lässt sich  mit den Zielkoordinaten viel besser als mit den move Befehlen arbeiten!   :D

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Shojo

Ich hatte mal Probiert was er macht wenn man ihn in einen geschlossenen Raum Clean startet und einmal die Karte aufbauen lässt, 
dann die Tür öffnet und ihn dann auf einen nicht bekannten Teil der Karte schickt.

Ich war dann doch recht überrascht wie schnell er erkannt hat das die Tür nun offen ist,
und sich dann den weg zum Ziel erarbeitet hat.

Die neuen Daten die er bei den Lauf gesammelt hat wurden auch Live immer wieder in der Routenberechnung einbezogen!

Macht schon Spaß mit dem kleinen zu spielen ;)
FHEM auf: Shuttle PC (x64) (Docker)
Bridge: SignalESP 433mHz, ConBee (deCONZ in Docker)
Rest: ESP8266, SONOFF, Sonos, Echo Dot, Xiaomi Vacuum (root), ESP RGBWW Wifi Led Controller, Node-RED, LEDMatrix, Pixel It

Otto123

Zitat von: Shojo am 13 April 2018, 13:41:43
Ich war dann doch recht überrascht wie schnell er erkannt hat das die Tür nun offen ist,
und sich dann den weg zum Ziel erarbeitet hat.

Die neuen Daten die er bei den Lauf gesammelt hat wurden auch Live immer wieder in der Routenberechnung einbezogen!
Ja das stimmt! Aber wenn der Startraum zu kompliziert und die Karte ziemlich komplett ist, dann versucht er zwei oder drei Routen durch vermeintlich "offene" Stellen und wenn die nicht gehen, dann gibt er auf. Während wenn die Karte eher unvollständig ist, dann sucht er nach dem nächsten "Loch".

Sieht man in den angehängten Bildern, der Raum links unten (hinter der Ladestation). Wenn am Vortag die Tür zu war, kann man ihn nicht dahin schicken.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

fred_feuerstein

Also ich finde es genial, dass xiaomi die zone und goto Funktion auch für den alten Sauger per Update bereitgestellt hat.

Und noch besser, dass Markus gleich nachgelegt hat mit dem Modul.
Gerade mal alles aktualisiert und einmal komplett das Erdgeschoss saugen lassen, um die komplette Karte zu bekommen.

Dann mich mit goto mal herangetastet. Muss sagen, dass man mit etwas räumlichen Denken da recht gut zum Ziel kommt.
Also mal eine Zone Esstisch angelegt und gespeichert, ausserdem noch 2 point names. Werde sicherlich noch weitere Zonen und Points anlegen. Da fällt endlich dieses nervige und anfällige Programmieren von points über die move Funktion weg :)

Bin begeistert. Das ist ein wirklicher Mehrwert an Funktionen.

Danke an Markus und alle anderen fleißigen Helfer.
Gruß, Fred

FHEM auf Raspberry PI 3B+ im 7Zoll TouchDisplay Gehäuse, OS: Bullseye, mit Z-Wave RaZberry-Modul, 868CUL (WMBUS), LaCrosseCUL (Temp) und knapp 300 Devices aller Art

scooty

Hallo,

danke auch nochmal für das tolle Modul.

Lässt sich der ggf. der Xiaomi MI IH 3L Smart Electric Rice Cooker auch noch mit aufnehmen?

Definieren kann man ihn schon (ohne Token auslesen zu müssen), hier das list:
nternals:
   CFGFN     
   DEF        192.168.0.177
   FD         329
   NAME       KUOG_MIIRC01
   NR         67630
   STATE      connected
   TYPE       XiaomiDevice
   mac        28:6C:07:A9:49:A4
   model      chunmi.cooker.normal2
   token      xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
   wifi_firmware 1.4.030e0bd0
   READINGS:
     2018-04-15 14:11:08   device_firmware 1.2.8
     2018-04-15 14:11:08   device_uptime   0.35
     2018-04-15 14:11:07   error           none
     2018-04-15 14:09:17   state           connected
     2018-04-15 14:09:54   wifi_auth_fail_count 0
     2018-04-15 14:09:54   wifi_conn_fail_count 0
     2018-04-15 14:09:54   wifi_conn_success_count 1
     2018-04-15 14:09:54   wifi_dhcp_fail_count 0
     2018-04-15 14:11:08   wifi_rssi       -55
     2018-04-15 14:09:54   wifi_state      online
   helper:
     ConnectionState connected
     crypt      AES
     delay      0
     dev        032d
     id         c82e
     ip         192.168.0.177
     last_read  1523794267
     packetid   13
     port       54321
     sequence   1523793022
     token      xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
     packet:
       14         wifi_stats
       35         get_status
Attributes:
   stateFormat state
   subType    VacuumCleaner


Falls eine Einbindung in das Modul möglich wäre: was kann ich machen um benötigte Infos zu liefern?

Viele Grüße,
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

Markus M.

Zitat von: scooty am 15 April 2018, 14:18:47
Falls eine Einbindung in das Modul möglich wäre: was kann ich machen um benötigte Infos zu liefern?

1. Probier das Modul im Anhang und setz den subType auf 'RiceCooker'
2. Erzähl mir was damit passiert, was noch fehlt
3. Sieh nach was du mit der App sonst noch alles machen kannst
...
4. Erklär mir wie man die Anschaffung eines WLAN Reiskochers am besten rechtfertigt
;)

edit: Datei nochmal runterladen
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0