FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: curt am 30 Dezember 2020, 19:43:53

Titel: [72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 30 Dezember 2020, 19:43:53
[EDIT von neubert]
Hier geht es um den Saug-Wisch-Roboter viomi.vacuum.v8 (Xiaomi Mi Robot Vacuum Mop Pro) in Zusammenhang mit dem FHEM-Modul 72_XiaomiDevice. Dieser Thread wurde der Übersichtlichkeit halber aus dem Hauptthread Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support) https://forum.fhem.de/index.php/topic,73052.0.html (https://forum.fhem.de/index.php/topic,73052.0.html) abgetrennt
[/EDIT]


@MadMax @scooty
Zitat von: MadMax am 06 Dezember 2020, 21:17:02
Wird dieses Gerät unterstützt?
In Fhem wird mir als model viomi.vacuum.v8 angezeigt mit Firmware 3.5.3_0017.
Status ist auch connected aber ich kann den saugroboter nicht steuern.

Bei mir: Gleicher Saugroboter, gleiches Problem.
Ich habe ein Token und kann den Sauger in dieses pythonbinding-Dings einbinden und rudimentär steuern. Schöner wäre natürlich dieses Modul hier:

Hat sich da etwas getan?
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 02 Januar 2021, 16:25:07
Hallo,

hier ein Log für den viomi.vacuum.v8.
Ich werde mal schauen ob ich damit was anfangen kann, sieht zumindest mal ähnlich aus wie das was im Fhem Log bei verbose 5 steht.

192.168.xxx.xxx
viomi.vacuum.v8
-------------------------------------------------------------

2021-01-02 16:16:32 -> {"params":[{"did":"375083838","siid":2,"piid":1}],"datasource":3} /miotspec/prop/get
2021-01-02 16:16:32 <- {"code":0,"message":"","result":[{"did":"375083838","siid":2,"piid":1,"value":6,"code":0,"updateTime":1609599329}]}
2021-01-02 16:16:34 -> {"params":[{"did":"375083838","siid":2,"piid":1}],"datasource":3} /miotspec/prop/get
2021-01-02 16:16:34 <- {"code":0,"message":"","result":[{"did":"375083838","siid":2,"piid":1,"value":6,"code":0,"updateTime":1609599329}]}
2021-01-02 16:16:40 -> {"id":9188,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:16:40 <- {"code":0,"id":9188,"otlocalts":1609600600056375,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:16:43 -> {"id":9189,"method":"set_mode_withroom","params":[0,1,0]}
2021-01-02 16:16:43 <- {"code":0,"id":9189,"otlocalts":1609600603108126,"result":["ok"]}
2021-01-02 16:16:44 -> {"id":9190,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:16:44 <- {"code":0,"id":9190,"otlocalts":1609600603509953,"result":["3.5.3_0017",3,0,2110,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:16:47 -> {"id":9191,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:16:47 <- {"code":0,"id":9191,"otlocalts":1609600606613238,"result":["3.5.3_0017",3,0,2110,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:16:50 -> {"id":9192,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:16:50 <- {"code":0,"id":9192,"otlocalts":1609600610081507,"result":["3.5.3_0017",3,0,2110,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:16:53 -> {"id":9193,"method":"set_mode_withroom","params":[0,2,0]}
2021-01-02 16:16:53 <- {"code":0,"id":9193,"otlocalts":1609600612842651,"result":["ok"]}
2021-01-02 16:16:53 -> {"id":9194,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:16:53 <- {"code":0,"id":9194,"otlocalts":1609600613250370,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:16:57 -> {"id":9195,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:16:57 <- {"code":0,"id":9195,"otlocalts":1609600616441775,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:16:58 -> {"id":9197,"method":"get_curpos","params":[]}
2021-01-02 16:16:58 <- {"code":0,"id":9197,"otlocalts":1609600617579253,"result":[]}
2021-01-02 16:16:58 -> {"id":9196,"method":"set_charge","params":[1]}
2021-01-02 16:16:58 <- {"code":0,"id":9196,"otlocalts":1609600617870499,"result":["ok"]}
2021-01-02 16:17:00 -> {"id":9199,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:17:00 <- {"code":0,"id":9199,"otlocalts":1609600619519579,"result":["3.5.3_0017",4,0,2104,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:17:03 -> {"id":9200,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:17:03 <- {"code":0,"id":9200,"otlocalts":1609600622680036,"result":["3.5.3_0017",4,0,2104,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:17:05 -> {"id":9198,"method":"get_curpos","params":[]}
2021-01-02 16:17:05 <- {"code":-9999,"error":{"code":-9999,"message":"user ack timeout"},"id":9198,"message":"user ack timeout","otlocalts":1609600624859831}
2021-01-02 16:17:06 -> {"id":9201,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:17:06 <- {"code":0,"id":9201,"otlocalts":1609600625770557,"result":["3.5.3_0017",4,0,2104,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:17:07 -> {"id":9202,"method":"get_curpos","params":[]}
2021-01-02 16:17:07 <- {"code":0,"id":9202,"otlocalts":1609600626510992,"result":[0,0,0,0]}
2021-01-02 16:17:08 -> {"id":9203,"method":"get_curpos","params":[]}
2021-01-02 16:17:08 <- {"code":0,"id":9203,"otlocalts":1609600628316845,"result":[0,0,0,0]}
2021-01-02 16:17:09 -> {"id":9204,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:17:09 <- {"code":0,"id":9204,"otlocalts":1609600628922150,"result":["3.5.3_0017",4,0,2104,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:17:10 -> {"id":9205,"method":"get_curpos","params":[]}
2021-01-02 16:17:10 <- {"code":0,"id":9205,"otlocalts":1609600629926939,"result":[]}
2021-01-02 16:17:12 -> {"id":9206,"method":"get_curpos","params":[]}
2021-01-02 16:17:12 <- {"code":0,"id":9206,"otlocalts":1609600631742987,"result":[0.019904,-0.011092,-2.429029,0]}
2021-01-02 16:17:36 -> {"id":9207,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:17:36 <- {"code":0,"id":9207,"otlocalts":1609600656054036,"result":["3.5.3_0017",4,0,2104,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:17:36 -> {"id":9208,"method":"get_curpos","params":[]}
2021-01-02 16:17:36 <- {"code":0,"id":9208,"otlocalts":1609600656167449,"result":[0.104074,0.094919,1.596425,0,0.103333,0.095262,2.129036,0,0.106722,0.090181,2.682770,0,0.111415,0.089855,-3.053954,0,0.116689,0.084183,-2.478489,0]}
2021-01-02 16:19:24 -> {"params":[{"did":"375083838","siid":2,"piid":1}],"datasource":3} /miotspec/prop/get
2021-01-02 16:19:24 <- {"code":0,"message":"","result":[{"did":"375083838","siid":2,"piid":1,"value":6,"code":0,"updateTime":1609600658}]}
2021-01-02 16:19:26 -> {"id":9677,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:26 <- {"code":0,"id":9677,"otlocalts":1609600765639138,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:19:29 -> {"id":9678,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:29 <- {"code":0,"id":9678,"otlocalts":1609600769223776,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:19:33 -> {"id":9679,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:33 <- {"code":0,"id":9679,"otlocalts":1609600772386121,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:19:33 -> {"id":9680,"method":"set_suction","params":[0]}
2021-01-02 16:19:33 <- {"code":0,"id":9680,"otlocalts":1609600772867003,"result":["ok"]}
2021-01-02 16:19:36 -> {"id":9681,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:36 <- {"code":0,"id":9681,"otlocalts":1609600775678155,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,0,12,1,1,0,0,-3600]}
2021-01-02 16:19:36 -> {"id":9682,"method":"set_suction","params":[1]}
2021-01-02 16:19:36 <- {"code":0,"id":9682,"otlocalts":1609600775778842,"result":["ok"]}
2021-01-02 16:19:38 -> {"id":9683,"method":"set_suction","params":[2]}
2021-01-02 16:19:38 <- {"code":0,"id":9683,"otlocalts":1609600777739362,"result":["ok"]}
2021-01-02 16:19:39 -> {"id":9684,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:39 <- {"code":0,"id":9684,"otlocalts":1609600778779385,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,2,12,1,1,0,0,-3600]}
2021-01-02 16:19:40 -> {"id":9685,"method":"set_suction","params":[3]}
2021-01-02 16:19:40 <- {"code":0,"id":9685,"otlocalts":1609600780140441,"result":["ok"]}
2021-01-02 16:19:42 -> {"id":9686,"method":"set_mop","params":[1]}
2021-01-02 16:19:42 <- {"code":0,"id":9686,"otlocalts":1609600781547831,"result":["ok"]}
2021-01-02 16:19:42 -> {"id":9687,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:42 <- {"code":0,"id":9687,"otlocalts":1609600781858422,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,1,0,-3600]}
2021-01-02 16:19:45 -> {"id":9688,"method":"set_suction","params":[11]}
2021-01-02 16:19:45 <- {"code":0,"id":9688,"otlocalts":1609600784328781,"result":["ok"]}
2021-01-02 16:19:45 -> {"id":9689,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:45 <- {"code":0,"id":9689,"otlocalts":1609600784957259,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,11,1,1,1,0,-3600]}
2021-01-02 16:19:46 -> {"id":9690,"method":"set_suction","params":[12]}
2021-01-02 16:19:46 <- {"code":0,"id":9690,"otlocalts":1609600786045226,"result":["ok"]}
2021-01-02 16:19:48 -> {"id":9691,"method":"set_suction","params":[13]}
2021-01-02 16:19:48 <- {"code":0,"id":9691,"otlocalts":1609600787354643,"result":["ok"]}
2021-01-02 16:19:48 -> {"id":9692,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:48 <- {"code":0,"id":9692,"otlocalts":1609600788064708,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,13,1,1,1,0,-3600]}
2021-01-02 16:19:49 -> {"id":9693,"method":"set_suction","params":[12]}
2021-01-02 16:19:49 <- {"code":0,"id":9693,"otlocalts":1609600788821513,"result":["ok"]}
2021-01-02 16:19:51 -> {"id":9694,"method":"set_mop","params":[2]}
2021-01-02 16:19:51 <- {"code":0,"id":9694,"otlocalts":1609600790473727,"result":["ok"]}
2021-01-02 16:19:51 -> {"id":9695,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:51 <- {"code":0,"id":9695,"otlocalts":1609600791227611,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,2,0,-3600]}
2021-01-02 16:19:54 -> {"id":9696,"method":"set_mop","params":[0]}
2021-01-02 16:19:54 <- {"code":0,"id":9696,"otlocalts":1609600793429688,"result":["ok"]}
2021-01-02 16:19:55 -> {"id":9697,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:55 <- {"code":0,"id":9697,"otlocalts":1609600794420127,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:19:58 -> {"id":9698,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:19:58 <- {"code":0,"id":9698,"otlocalts":1609600797572862,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:01 -> {"id":9699,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:01 <- {"code":0,"id":9699,"otlocalts":1609600800763521,"result":["3.5.3_0017",5,0,2105,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:03 -> {"id":9700,"method":"set_mode_withroom","params":[0,1,1,16]}
2021-01-02 16:20:03 <- {"code":0,"id":9700,"otlocalts":1609600803232212,"result":["ok"]}
2021-01-02 16:20:04 -> {"id":9701,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:04 <- {"code":0,"id":9701,"otlocalts":1609600803926185,"result":["3.5.3_0017",3,0,2110,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:05 -> {"id":9702,"method":"get_curpos","params":[]}
2021-01-02 16:20:05 <- {"code":0,"id":9702,"otlocalts":1609600804744143,"result":[]}
2021-01-02 16:20:07 -> {"id":9703,"method":"get_curpos","params":[]}
2021-01-02 16:20:07 <- {"code":0,"id":9703,"otlocalts":1609600806478551,"result":[]}
2021-01-02 16:20:07 -> {"id":9704,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:07 <- {"code":0,"id":9704,"otlocalts":1609600807001257,"result":["3.5.3_0017",3,0,2110,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:08 -> {"id":9705,"method":"get_curpos","params":[]}
2021-01-02 16:20:08 <- {"code":0,"id":9705,"otlocalts":1609600808286754,"result":[]}
2021-01-02 16:20:10 -> {"id":9706,"method":"get_curpos","params":[]}
2021-01-02 16:20:10 <- {"code":0,"id":9706,"otlocalts":1609600810086578,"result":[]}
2021-01-02 16:20:10 -> {"id":9707,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:10 <- {"code":0,"id":9707,"otlocalts":1609600810097563,"result":["3.5.3_0017",3,0,2110,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:12 -> {"id":9708,"method":"get_curpos","params":[]}
2021-01-02 16:20:12 <- {"code":0,"id":9708,"otlocalts":1609600811887161,"result":[]}
2021-01-02 16:20:13 -> {"id":9709,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:13 <- {"code":0,"id":9709,"otlocalts":1609600813241997,"result":["3.5.3_0017",3,0,2110,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:14 -> {"id":9710,"method":"get_curpos","params":[]}
2021-01-02 16:20:14 <- {"code":0,"id":9710,"otlocalts":1609600813684434,"result":[]}
2021-01-02 16:20:15 -> {"id":9711,"method":"get_curpos","params":[]}
2021-01-02 16:20:15 <- {"code":0,"id":9711,"otlocalts":1609600815291309,"result":[]}
2021-01-02 16:20:16 -> {"id":9712,"method":"set_mode_withroom","params":[0,2,1,16]}
2021-01-02 16:20:16 <- {"code":0,"id":9712,"otlocalts":1609600815575778,"result":["ok"]}
2021-01-02 16:20:17 -> {"id":9713,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:17 <- {"code":0,"id":9713,"otlocalts":1609600816963862,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:20 -> {"id":9714,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:20 <- {"code":0,"id":9714,"otlocalts":1609600820104634,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:23 -> {"id":9716,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:23 <- {"code":0,"id":9716,"otlocalts":1609600823230330,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:25 -> {"id":9715,"method":"set_uploadmap","params":[1]}
2021-01-02 16:20:25 <- {"code":0,"id":9715,"otlocalts":1609600824896420,"result":["ok"]}
2021-01-02 16:20:27 -> {"id":9717,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:27 <- {"code":0,"id":9717,"otlocalts":1609600826345692,"result":["3.5.3_0017",1,3,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:28 -> {"id":9718,"method":"set_zone","params":[1,"1_0_-2.1429_-1.4123_-2.1429_-3.4123_-0.1429_-3.4123_-0.1429_-1.4123"]}
2021-01-02 16:20:28 <- {"code":0,"id":9718,"otlocalts":1609600828029762,"result":["ok"]}
2021-01-02 16:20:29 -> {"id":9719,"method":"set_mode","params":[3,1]}
2021-01-02 16:20:29 <- {"code":0,"id":9719,"otlocalts":1609600828534690,"result":["ok"]}
2021-01-02 16:20:30 -> {"id":9720,"method":"get_curpos","params":[]}
2021-01-02 16:20:30 <- {"code":0,"id":9720,"otlocalts":1609600829418455,"result":[]}
2021-01-02 16:20:30 -> {"id":9721,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:30 <- {"code":0,"id":9721,"otlocalts":1609600829439267,"result":["3.5.3_0017",3,3,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:31 -> {"id":9722,"method":"get_curpos","params":[]}
2021-01-02 16:20:31 <- {"code":0,"id":9722,"otlocalts":1609600831129053,"result":[]}
2021-01-02 16:20:33 -> {"id":9723,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:33 <- {"code":0,"id":9723,"otlocalts":1609600832523834,"result":["3.5.3_0017",3,3,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:33 -> {"id":9724,"method":"get_curpos","params":[]}
2021-01-02 16:20:33 <- {"code":0,"id":9724,"otlocalts":1609600832732548,"result":[]}
2021-01-02 16:20:35 -> {"id":9725,"method":"get_curpos","params":[]}
2021-01-02 16:20:35 <- {"code":0,"id":9725,"otlocalts":1609600834538869,"result":[]}
2021-01-02 16:20:36 -> {"id":9726,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:36 <- {"code":0,"id":9726,"otlocalts":1609600835666566,"result":["3.5.3_0017",3,3,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:37 -> {"id":9727,"method":"get_curpos","params":[]}
2021-01-02 16:20:37 <- {"code":0,"id":9727,"otlocalts":1609600836336350,"result":[]}
2021-01-02 16:20:39 -> {"id":9728,"method":"get_curpos","params":[]}
2021-01-02 16:20:39 <- {"code":0,"id":9728,"otlocalts":1609600838532521,"result":[]}
2021-01-02 16:20:39 -> {"id":9729,"method":"set_mode_withroom","params":[0,2,1,16]}
2021-01-02 16:20:39 <- {"code":0,"id":9729,"otlocalts":1609600838543088,"result":["ok"]}
2021-01-02 16:20:39 -> {"id":9730,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:39 <- {"code":0,"id":9730,"otlocalts":1609600838839678,"result":["3.5.3_0017",3,3,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:41 -> {"id":9732,"method":"get_curpos","params":[]}
2021-01-02 16:20:41 <- {"code":0,"id":9732,"otlocalts":1609600840352678,"result":[]}
2021-01-02 16:20:41 -> {"id":9731,"method":"set_mode_withroom","params":[0,1,1,16]}
2021-01-02 16:20:41 <- {"code":0,"id":9731,"otlocalts":1609600840471103,"result":["ok"]}
2021-01-02 16:20:42 -> {"id":9734,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:42 <- {"code":0,"id":9734,"otlocalts":1609600842067672,"result":["3.5.3_0017",3,0,2110,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:45 -> {"id":9735,"method":"set_mode_withroom","params":[0,2,1,16]}
2021-01-02 16:20:45 <- {"code":0,"id":9735,"otlocalts":1609600844658277,"result":["ok"]}
2021-01-02 16:20:45 -> {"id":9736,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:45 <- {"code":0,"id":9736,"otlocalts":1609600845192629,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:48 -> {"id":9733,"method":"get_curpos","params":[]}
2021-01-02 16:20:48 <- {"code":-3,"error":{"code":-3,"message":"timeout"},"id":9733,"message":"timeout","otlocalts":1609600847728583}
2021-01-02 16:20:49 -> {"id":9737,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:49 <- {"code":0,"id":9737,"otlocalts":1609600848367519,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:49 -> {"id":9739,"method":"get_prop","params":["repeat_state","remember_map","v_state","mop_route"]}
2021-01-02 16:20:49 <- {"code":0,"id":9739,"otlocalts":1609600848807760,"result":[0,1,7]}
2021-01-02 16:20:49 -> {"id":9738,"method":"get_ordertime","params":[]}
2021-01-02 16:20:49 <- {"code":0,"id":9738,"otlocalts":1609600848880994,"result":[]}
2021-01-02 16:20:49 -> {"id":9740,"method":"get_notdisturb","params":[]}
2021-01-02 16:20:49 <- {"code":0,"id":9740,"otlocalts":1609600848885146,"result":[1,23,0,9,0]}
2021-01-02 16:20:52 -> {"id":9741,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:52 <- {"code":0,"id":9741,"otlocalts":1609600851844385,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:55 -> {"id":9743,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:55 <- {"code":0,"id":9743,"otlocalts":1609600854908865,"result":["3.5.3_0017",2,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:56 -> {"id":9742,"method":"set_mode","params":[0]}
2021-01-02 16:20:56 <- {"code":0,"id":9742,"otlocalts":1609600855510081,"result":["ok"]}
2021-01-02 16:20:58 -> {"id":9744,"method":"set_direction","params":[10]}
2021-01-02 16:20:58 <- {"code":0,"message":"ok","result":["ok"],"id":9744}
2021-01-02 16:20:58 -> {"id":9745,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:20:58 <- {"code":0,"id":9745,"otlocalts":1609600858004941,"result":["3.5.3_0017",3,5,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:20:58 -> {"id":9746,"method":"set_direction","params":[1]}
2021-01-02 16:20:58 <- {"code":0,"message":"ok","result":["ok"],"id":9746}
2021-01-02 16:20:59 -> {"id":9747,"method":"set_direction","params":[1]}
2021-01-02 16:20:59 <- {"code":0,"message":"ok","result":["ok"],"id":9747}
2021-01-02 16:20:59 -> {"id":9748,"method":"set_direction","params":[5]}
2021-01-02 16:20:59 <- {"code":0,"message":"ok","result":["ok"],"id":9748}
2021-01-02 16:21:01 -> {"id":9749,"method":"set_direction","params":[4]}
2021-01-02 16:21:01 <- {"code":0,"message":"ok","result":["ok"],"id":9749}
2021-01-02 16:21:01 -> {"id":9750,"method":"set_direction","params":[5]}
2021-01-02 16:21:01 <- {"code":0,"message":"ok","result":["ok"],"id":9750}
2021-01-02 16:21:01 -> {"id":9751,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:21:01 <- {"code":0,"id":9751,"otlocalts":1609600861078868,"result":["3.5.3_0017",3,5,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:21:03 -> {"id":9752,"method":"set_direction","params":[3]}
2021-01-02 16:21:03 <- {"code":0,"message":"ok","result":["ok"],"id":9752}
2021-01-02 16:21:04 -> {"id":9753,"method":"set_direction","params":[3]}
2021-01-02 16:21:04 <- {"code":0,"message":"ok","result":["ok"],"id":9753}
2021-01-02 16:21:04 -> {"id":9754,"method":"set_direction","params":[5]}
2021-01-02 16:21:04 <- {"code":0,"message":"ok","result":["ok"],"id":9754}
2021-01-02 16:21:04 -> {"id":9755,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:21:04 <- {"code":0,"id":9755,"otlocalts":1609600864164240,"result":["3.5.3_0017",3,5,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:21:06 -> {"id":9756,"method":"set_direction","params":[2]}
2021-01-02 16:21:06 <- {"code":0,"message":"ok","result":["ok"],"id":9756}
2021-01-02 16:21:06 -> {"id":9757,"method":"set_direction","params":[5]}
2021-01-02 16:21:06 <- {"code":0,"message":"ok","result":["ok"],"id":9757}
2021-01-02 16:21:07 -> {"id":9758,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:21:07 <- {"code":0,"id":9758,"otlocalts":1609600867307306,"result":["3.5.3_0017",3,5,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:21:08 -> {"id":9759,"method":"set_direction","params":[10]}
2021-01-02 16:21:08 <- {"code":0,"message":"ok","result":["ok"],"id":9759}
2021-01-02 16:21:10 -> {"id":9760,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone"]}
2021-01-02 16:21:10 <- {"code":0,"id":9760,"otlocalts":1609600869458601,"result":["3.5.3_0017",1,0,0,100,1,0,0,0,3,12,1,1,0,0,-3600]}
2021-01-02 16:21:10 -> {"id":9761,"method":"get_curpos","params":[]}
2021-01-02 16:21:10 <- {"code":0,"id":9761,"otlocalts":1609600869650824,"result":[]}
2021-01-02 16:21:11 -> {"id":9762,"method":"set_charge","params":[1]}
2021-01-02 16:21:11 <- {"code":0,"id":9762,"otlocalts":1609600870656211,"result":["ok"]}
2021-01-02 16:21:12 -> {"id":9763,"method":"get_curpos","params":[]}
2021-01-02 16:21:12 <- {"code":0,"id":9763,"otlocalts":1609600871521129,"result":[]}
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: scooty am 02 Januar 2021, 17:55:11
Hallo MadMax, hallo curt,

vielleicht helfen auch folgende Infos weiter:
{
"type": "urn:miot-spec-v2:device:vacuum:0000A006:viomi-v8:1",
"description": "Robot Cleaner",
"services": [
{
"iid": 1,
"type": "urn:miot-spec-v2:service:device-information:00007801:viomi-v8:1",
"description": "Device Information",
"properties": [
{
"iid": 1,
"type": "urn:miot-spec-v2:property:manufacturer:00000001:viomi-v8:1",
"description": "Device Manufacturer",
"format": "string",
"access": [
"read"
]
},
{
"iid": 2,
"type": "urn:miot-spec-v2:property:model:00000002:viomi-v8:1",
"description": "Device Model",
"format": "string",
"access": [
"read"
]
},
{
"iid": 3,
"type": "urn:miot-spec-v2:property:serial-number:00000003:viomi-v8:1",
"description": "Device Serial Number",
"format": "string",
"access": [
"read"
]
},
{
"iid": 4,
"type": "urn:miot-spec-v2:property:firmware-revision:00000005:viomi-v8:1",
"description": "Current Firmware Version",
"format": "string",
"access": [
"read"
]
}
]
},
{
"iid": 2,
"type": "urn:miot-spec-v2:service:vacuum:00007810:viomi-v8:1",
"description": "Robot Cleaner",
"properties": [
{
"iid": 1,
"type": "urn:miot-spec-v2:property:status:00000007:viomi-v8:1",
"description": "Status",
"format": "uint8",
"access": [
"read",
"notify"
],
"value-list": [
{
"value": 1,
"description": "Idle"
},
{
"value": 2,
"description": "Sleep"
},
{
"value": 3,
"description": "Paused"
},
{
"value": 4,
"description": "Sweeping"
},
{
"value": 5,
"description": "Go Charging"
},
{
"value": 6,
"description": "Charging"
},
{
"value": 7,
"description": "Mopping"
},
{
"value": 8,
"description": "Sweeping and Mopping"
}
]
},
{
"iid": 2,
"type": "urn:miot-spec-v2:property:mode:00000008:viomi-v8:1",
"description": "Mode",
"format": "uint8",
"access": [
"read",
"write",
"notify"
],
"value-list": [
{
"value": 0,
"description": "Silent"
},
{
"value": 1,
"description": "Basic"
},
{
"value": 2,
"description": "Medium"
},
{
"value": 3,
"description": "Strong"
}
]
}
],
"actions": [
{
"iid": 1,
"type": "urn:miot-spec-v2:action:start-sweep:00002804:viomi-v8:1",
"description": "Start Sweep",
"in": [],
"out": []
},
{
"iid": 2,
"type": "urn:miot-spec-v2:action:stop-sweeping:00002805:viomi-v8:1",
"description": "Stop Sweeping",
"in": [],
"out": []
},
{
"iid": 3,
"type": "urn:miot-spec-v2:action:start-sweep-mop:00002835:viomi-v8:1",
"description": "Start Sweep Mop",
"in": [],
"out": []
},
{
"iid": 4,
"type": "urn:miot-spec-v2:action:start-mop:00002834:viomi-v8:1",
"description": "Start Mop",
"in": [],
"out": []
},
{
"iid": 5,
"type": "urn:miot-spec-v2:action:pause-sweeping:00002805:viomi-v8:1",
"description": "Pause Sweeping",
"in": [],
"out": []
}
]
},
{
"iid": 3,
"type": "urn:miot-spec-v2:service:battery:00007805:viomi-v8:1",
"description": "Battery",
"properties": [
{
"iid": 1,
"type": "urn:miot-spec-v2:property:battery-level:00000014:viomi-v8:1",
"description": "Battery Level",
"format": "uint8",
"access": [
"read",
"notify"
],
"unit": "percentage",
"value-range": [
0,
100,
1
]
}
],
"actions": [
{
"iid": 1,
"type": "urn:miot-spec-v2:action:start-charge:00002802:viomi-v8:1",
"description": "Start Charge",
"in": [],
"out": []
}
]
}
]
}


Generiert werden die Daten, in dem man sich zuerst auf dieser Webseite

http://miot-spec.org/miot-spec-v2/instances?status=all

sein Modell (in eurem Fall: "model":"viomi.vacuum.v8") heraussucht.

Dann mit den zugehörigen "type"-Infos, die in dem Text kurz nach der "model"-Info stehen, (in eurem Fall: "type":"urn:miot-spec-v2:device:vacuum:0000A006:viomi-v8:1") einen Link zusammenbasteln:

https://miot-spec.org/miot-spec-v2/instance?type=urn:miot-spec-v2:device:vacuum:0000A006:viomi-v8:1 (https://miot-spec.org/miot-spec-v2/instance?type=urn:miot-spec-v2:device:vacuum:0000A006:viomi-v8:1)

und diesen im Browser aufruft.
Dann noch die Ausgabe zur besseren Lesbarkeit schön JSON-formatieren.

Diese Infos haben zumindest mir immer gut geholfen, vorschlagen zu können, das Modul mit weiteren Geräten zu erweitern.

Ist natürlich alles nicht auf meinem Mist gewachsen, die Grundlagen und weitere Details gibt es ab hier:
https://github.com/rytilahti/python-miio/issues/543#issuecomment-544643792

Viele Grüße,
Andreas

PS:
Um eine Aktion wie "Start Sweep" auszuführen gab/gibt es die verschiedensten Angaben im Netz, bei dem letzten von mir vorgeschlagenen Gerät (PetDrinkingFountain, mmgg.pet_waterer.s1) funktioniert folgender Code-Block für actions in der "sub XiaomiDevice_Set":
elsif ($cmd eq 'reset_filter_days')
  {
my $packetid = $hash->{helper}{packetid};
    $hash->{helper}{packetid} = $packetid+1;
    $hash->{helper}{packet}{$packetid} = 'reset_filter_days';
   
if (defined($attr{$name}) && defined($attr{$name}{subType}) && $attr{$name}{subType} eq "PetDrinkingFountain")
    {
      XiaomiDevice_WriteJSON($hash, '{"id":'.$packetid.',"method":"action","params":{"did":"reset_filter_days","siid":3,"aiid":1,"in":[]}}');
      return undef;
    }
  }
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 02 Januar 2021, 18:09:26
Hallo,

@scooty, danke das schaue ich mir mal an.

ich habe ein paar Befehle eingebunden.

-start
-stop
-pause
-resume
-locate
-charge
-cleaning_mode
-vacuum_mode
-mop_mode

Rückmeldungen vom Roboter habe ich noch keine ausgewertet.

Bin also voll dabei :)
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 02 Januar 2021, 18:56:31
Zitat von: MadMax am 02 Januar 2021, 18:09:26
ich habe ein paar Befehle eingebunden.
-start
-vacuum_mode

Mein Mover steht aus irgendwelchen Gründen oft auf "disconnected". Falls er aber erreichbar ist: start und vacuum_mode funktionieren schon mal.


2021-01-02_18:43:30 Putzi_2 start
2021-01-02_18:43:30 Putzi_2 error: none
2021-01-02_18:43:35 Putzi_2 error: none
2021-01-02_18:43:59 Putzi_2 vacuum_mode turbo
2021-01-02_18:43:59 Putzi_2 error: none
2021-01-02_18:44:46 Putzi_2 disconnected
2021-01-02_18:47:50 Putzi_2 connected
2021-01-02_18:47:50 Putzi_2 error: none
2021-01-02_18:47:50 Putzi_2 device_uptime: 142.74
2021-01-02_18:47:50 Putzi_2 device_firmware: 3.5.3_0017
2021-01-02_18:47:50 Putzi_2 error: none
2021-01-02_18:47:50 Putzi_2 wifi_state: online
2021-01-02_18:47:50 Putzi_2 wifi_auth_fail_count: 0
2021-01-02_18:47:50 Putzi_2 wifi_dhcp_fail_count: 0
2021-01-02_18:47:50 Putzi_2 wifi_conn_fail_count: 0
2021-01-02_18:47:50 Putzi_2 wifi_conn_success_count: 1
2021-01-02_18:47:56 Putzi_2 error: none

Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: mthome am 03 Januar 2021, 12:02:16
Zitat von: MadMax am 02 Januar 2021, 18:09:26
ich habe ein paar Befehle eingebunden.

-start
-stop
-pause
-resume
-locate
-charge
-cleaning_mode
-vacuum_mode
-mop_mode

Hallo @MadMax,

vielen Dank für Deine Mühe!

Ich bin jetzt nicht der große Programmierer, hatte aber im Code noch den "clean_room" Befehl gefunden. Ich bin nicht sicher, ob Du den dazu verwenden wolltest um gezielt einen Raum zu saugen. Habe den Code einfach mal für meine Anforderung korrigiert. Damit saugt der Robby dann auch einen gezielten Raum:

in Zeile 960 habe ich folgende Änderung vorgenommen:
XiaomiDevice_WriteJSON($hash, '{"id":'.$packetid.',"method":"set_mode_withroom","params":[0,2,1,'.$arg[0].']}' );

ersetzt mit

XiaomiDevice_WriteJSON($hash, '{"id":'.$packetid.',"method":"set_mode_withroom","params":[0,1,1,'.$arg[0].']}' );


Die RaumIDs sind dann entsprechend 10,11,12 etc

Vielleicht hilft es ja jemanden anders auch noch weiter. Endlich kann ich jetzt meinen Mop Pro auch per Sprachbefehl einzelne Räume reinigen lassen   ;D (zusammen mit dem echodevice Modul). Viielen Dank nochmals!

Viele Grüße,
Michael
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Markus M. am 03 Januar 2021, 14:41:59
Ich sehe gerade ich hab viel zu tun ;)
Komme leider aktuell nicht dazu, wird aber demnächst zusammengefasst und ins Update gepackt.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 03 Januar 2021, 18:27:14
So,

es sind jetzt einige Befehle und Readings intrigiert.

Ich hab für die Raumauswahl erst mal die zonen-Auswahl "missbraucht"...

Hier als Beispiel:

attr roboter zone_names Wohnzimmer:[16] Flur:[13] Garderobe:[11] Toilette:[12] Kueche:[10] Treppe:[15] Kinder:[14]


Bei mir sind die Nummer quasi die Räume von links nach rechts auf der Karte.

@curt das hatte ich am Anfang auch mal... keine Ahnung warum, denke wenn zu viele unbekannte befehle kommen.

@mthome ich hab das jetzt ein wenig anders umgesetzt mit den Räumen, ist aber nur provisorisch.

@Markus M. ich denke meine Softwaretechnische Umsetzung ist nicht perfekt aber es geht...

Bitte mal testen, danke.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 03 Januar 2021, 20:46:49
Die heutige Version ist eingespielt, Readings (beim turbo-Saugen) unten.

Mir fiel folgendes auf:
Wenn ich "suction_grade = turbo" setze, findet sich das nicht in den Readings wieder. Erst wenn ich "start" setze, folgt dann ""suction_grade turbo" - muss das so?

Bedeutung der Befehle:
Die sind mit teilweise unklar. Wenn das in Richtung Stabilität neigt, wäre eine Liste der Befehle mit Bedeutung wünschenswert.

Alles rund um map(s):
Der Teil ist mir völlig unklar. Was geht da im Moment? Was geht im Modul bei anderen Robotern? Bekomme ich die Karte irgendwie in FHEM?

Dazu muss ich meinen Stand erklären:
Den Roboter kaufte ich vor vier Wochen, weil er wohl in FHEM integrierbar sei. Ich machte in einer Etage alle Türen auf und lies ihn loslegen. In dieser unsäglichen Xiaomi-App ist eine Karte dieser Etage mit allen Räumen. Irgendwie benannt oder editiert habe ich da nichts. Im Grunde will ich weg von der App; ich mag nicht, dass in China der Aufmarschplan für Deutschland gebaut wird.


batteryPercent 100
box_type dust
device_firmware 3.5.3_0017
device_uptime 168.10
err_state 2110
error none
has_map 1
has_newmap 0
is_mop 0
mode none
mop_type none
remember_map 1
repeat_state 0
run_state aktiv
s_area 0
s_time 0
state connected
suction_grade turbo
sw_info 3.5.3_0017
timezone -3600
volume 100
water_grade low
wifi_auth_fail_count 0
wifi_conn_fail_count 0
wifi_conn_success_count 1
wifi_dhcp_fail_count 0
wifi_state online

Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 03 Januar 2021, 22:12:42
Hallo Kurt,

Das mit suction_grade turbo ist ein aktualisierungsproblem, ich muss das noch für alle Parameter einfügen das die Daten vom Roboter geholt werden und nicht nur alle 60s.

Mit der Karte wäre auch mein Ziel, aber ich hab noch nix gefunden wo Positionen oder irgendwelche msps geladen werden. Wie das bei anderen Robotern ist muss ich mal schauen.
War erstmal dran den zum laufen zu bekommen.

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 03 Januar 2021, 22:24:49
Zitat von: MadMax am 03 Januar 2021, 22:12:42
War erstmal dran den zum laufen zu bekommen.

Ja, natürlich.
Ich hoffe, meine Beiträge werden nicht als Gemaule missverstanden: Ich versuche mit meinen beschränkten Mitteln meinen kleinen Teil beizutragen.

Zitat von: MadMax am 03 Januar 2021, 18:27:14
Bitte mal testen, danke.

Saugen+Wischen läuft möglicherweise nicht korrekt:
Eigentlich wäre die korrekte Einstellung ja "cleaning-mode = vacuum_mop", die kann ich zwar einstellen. Aber "mop_type -> mop". Ok, muss vielleicht so sein. Jedenfalls habe ich den Eindruck, dass er nur saugt, nicht wischt. Erst wenn ich mit der App das nochmal durchsage, geht es. Also das müsste jemand anders nochmal testen.

Home:
Vielleicht habe ich etwas übersehen: Irgendwie braucht es ja auch so etwas wie "Home" oder "ab zum Laden" - das finde ich nicht.

(Map: Da brauchen wir sicher jemanden, der einen anderen Roboter hat und uns mal zeigen kann, da dort mit diesem Modul und map eigentlich geht. Vielleicht @Markus M. ?)

Um es nochmal klarzustellen: Ich maule nicht rum. Ich bin im Gegenteil sehr dankbar und versuche, meinen kleinen Teil beizutragen.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 04 Januar 2021, 08:44:36
Hallo Curt,

Hab das nicht als gemaule gesehen.
Bin ja froh das ich nicht alles selbst durchtesten muss.

Wegen dem Wischen, ich habe nur getestet ob der Modus umgechschaltet wird, nicht ob es klappt.

Zum Home oder Laden geht mit charge.

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 04 Januar 2021, 08:55:48
Zitat von: MadMax am 04 Januar 2021, 08:44:36
Wegen dem Wischen, ich habe nur getestet ob der Modus umgechschaltet wird, nicht ob es klappt.

Ich werde das am Abend nochmals ohne Handy-App, aber mit dann schon feuchtem Tuch testen.

Zitat von: MadMax am 04 Januar 2021, 08:44:36
Zum Home oder Laden geht mit charge.

<seufzt>
Okok, egal. Dann nehme ich lieber die noch fehlende Map.  ;)
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 04 Januar 2021, 08:59:33
@Markus M.
Es gibt noch eine weitere Möglichkeit an das Token zu kommen - ist das bekannt?
Der @dominik hat die in https://forum.fhem.de/index.php/topic,115427.0.html - die Abfrage des Token läuft ausschließlich über FHEM (und die App).
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: mthome am 04 Januar 2021, 16:55:40
@MadMax,

ich habe das clean_room (ohne zone_names) probiert. Funktioniert gut :-). Sehr clever umgesetzt, damit kann ich ja - wenn die Zonennamen nicht definiert sind, einfach meine Nummern weiter verwenden  :)
Sind jetzt auch gleich noch paar mehr Readings dazugekommen :D
Vielen Dank!

mthome
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 04 Januar 2021, 18:54:14
Hallo,

so nochmal ein update.

@curt, das umschalten funktioniert jetzt.

zusätzlich habe ich die Fehlercodes und den Status mit intrigiert.
Konnte hier einiges finden :)
https://github.com/Hypfer/Valetudo/blob/master/lib/robots/viomi/ViomiValetudoRobot.js (https://github.com/Hypfer/Valetudo/blob/master/lib/robots/viomi/ViomiValetudoRobot.js)

Mir ist aufgefallen das es drei verschiedene Behälter geben muss. Staub, Wasser und ein Kombibehälter (welcher zum Saugen, Saugen und Wischen jedoch nicht nur zum Wischen funktioniert).


Auf git hab ich auch etwas mit Map gesehen, mal schauen ob man damit was anfangen kann.

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 04 Januar 2021, 20:47:14
so :)

neues Atribut eingebaut.
room_names Wohnzimmer:16 Flur:13 ....
diesmal ohne eckige klammern, mehrfachauswahl bei clean_rooms ist jetzt möglich oder einfach die Raumnummern mit Komma getrennt eingeben.

Danke fürs testen :)

Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 05 Januar 2021, 04:13:26
Ich beziehe mich auf die 20:47:14 veröffentlichte Version.

Zitat von: MadMax am 04 Januar 2021, 18:54:14
@curt, das umschalten funktioniert jetzt.

Da bin ich mir nicht sicher. Möglicherweise funktioniert das immer noch nicht sauber. Vermutlich hat das mit Folgendem zu tun:

Zitat von: MadMax am 04 Januar 2021, 18:54:14
Mir ist aufgefallen das es drei verschiedene Behälter geben muss. Staub, Wasser und ein Kombibehälter (welcher zum Saugen, Saugen und Wischen jedoch nicht nur zum Wischen funktioniert).

Es gibt theoretisch drei verschiedene Behälter, praktisch aber nur zwei. Es gibt (und die beide waren in meiner Lieferung dabei) den reinen Saugbehälter sowie den Kombibehälter (saugen und wischen). Den dritten Behälter (nur wischen) gibt es vermutlich gar nicht. In einem Yt-Video [¹] testet jemand den gleichen Roboter, allerdings Grauimport aus China, chinesische App. Der geht auch davon aus, dass es den reinen Wischbehälter nicht gibt, dass der lediglich in der Software existiert.
Ich habe bei den üblichen Verdächtigen (auch Ali-Dingens) gesucht: Es gibt keinen reinen Wischbehälter.

Es bleiben also zwei Behälter:
* Saugen
* Kombi: saugen und wischen

Die Behälter werden beim Wechsel vom Roboter erkannt und die freundliche Damenstimme erzählt mir das auch. Das bedeutet praktisch, dass das das Modul (Readings) auch weis. Diese Wasserfunktion water_grade ist offensichtlich nicht der Füllstand, sondern sagt, wie viel Wasser auf den Mob gelangen soll - also wie feucht gewischt werden soll.

Und das scheint -rein subjektiv- bei der Modulerweiterung nicht so richtig zu funktionieren: Wenn ich allein via Modul das Wischen vorgebe, wischt er scheinbar trocken. Wenn ich das Ganze via App mache, funktioniert es.

Ich will jetzt nicht ausschließen, dass der Mop erst nass werden muss und das also eine falsche subjektive Beobachtung von mir ist. Aber ich habe den Eindruck, dass da etwas noch nicht stimmt.

Zitat von: MadMax am 04 Januar 2021, 18:54:14
Auf git hab ich auch etwas mit Map gesehen, mal schauen ob man damit was anfangen kann.

Ich hatte ja die Hoffnung, dass der Oberhirte dieses Threads uns mal zeigt, wie das bei anderen Robots real aussieht. Notfalls müssen wir den kompletten Thread druchlesen und jemanden auf Verdacht ansprechen: Wir müssen ja erstmal verstehen, was normalerweise so geht.

Zitat von: MadMax am 04 Januar 2021, 20:47:14
neues Atribut eingebaut.
room_names Wohnzimmer:16 Flur:13 ....

Hilf mal bitte einem alten Mann aufs Pferd - erkläre bitte (gern am Beispiel) wie das gemeint ist.

Situation bei mir:
Ich habe so wenig wie irgend möglich mit dieser App gemacht, die soll eigentlich weg. In einer Etage machte ich alle Türen auf, nun hat die App eine Karte, da steht dann Raum1 Raum2 Raum3 usw dort, wo er meint, dass das ein Raum sein könnte. Ich selbst habe in der App KEINE Räume festgelegt.

Ja, es wäre schön, wenn ich sagen könnte "mach nur Schlafzimmer".

BTW denke ich, dass wir gelegentlich (vielleicht noch nicht jetzt) alle SET-Optionen durchgehen sollten - also was die so bewirken. Bzw. bewirken sollen. Man kann das ja nicht wirklich alles testweise durchgehen.

[¹] Ich denke, dass es dieses Video war: https://www.youtube.com/watch?v=So400tTeFdo
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 05 Januar 2021, 09:54:44
Hallo Curt,

Jeder Raum hat eine Nummer, diese kannst du in dem Attribut hinterlegen.
Also bei mir sind die Räume von links nach rechts auf der Map in der App nummeriert.
Beginnend mit 10.
Geh in fhem auf clen_room bei denem Roboter und gib dort einfach mal 10 ein und schau in welchen Raum er fährt.

Dann weißt du Raum 10 ist Schlafzimmer Und gibst im Attribur Room_mames Schlafzimmer:10 ein, das machst du immer weiter bis du alle Räume angefangen bist.

Gruß
Max

Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 05 Januar 2021, 17:41:51
Hallo,

so weitere funktionen und readings hinzugefügt.
Bitte mal durchtesten :)

@curt, also ich konnte den roboter über fhem zum wischen und saugen überreden, versuch es bitte nochmal und poste dein ergebnis.
Im Anhang ist noch ein Bild auf dem zu sehen ist wie meine readings aussehen, bitte die einstellungen so übernehmen.

Danke

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 05 Januar 2021, 17:42:17
Hallo Max

Echt klasse das Du unseren Sauger Typ hier in das Modul schon mal mit integriert hast. Ich lese schon die ganze Zeit mit und habe Deine Version schon im Test.
Das was Du alles mit eingebunden hast funktioniert bei mir bis jetzt ohne Probleme.
Was mir aufgefallen ist, das der sogenannte mop mode über Fhem nicht einstellbar ist.
Ich meine den spezialmodus in dem der Sauger beim vacuum_mop Einstellung eine Wischbewegung macht.
Das sieht dann so aus das der Sauger immer ein kleines Stück zurückfährt um dan wieder ein kleines Stück nach vorne fährt mit einer kleinen drehbewegung nach links und rechts.
Wenn Du das über die App Wischen und Saugen einstellst macht der Sauger das auch.
Über Fhem ist dann nach einem get data das Reading mode auf 1 gesetzt. Scheint wohl der sogenante mop mode zu sein.
Wenn Du über Fhem vacuum_mop einstellst und dann den Sauger über set start einschaltest wird das Reading mode auf none gesetzt.
Jetzt macht der Sauger diese Wischbewegung nicht mehr. Vieleicht bekommst Du das ja auch noch mit eingebunden.

Vielen dank schon mal für Deine Zeit das alles hier umzusetzten.

Hab gerade noch gesehen das sich auch ein paar Perl Warnungen im log nach eine shutdown restart eingeschlichen haben.
2021.01.05 20:45:42 1: PERL WARNING: Use of uninitialized value $d in hash element at fhem.pl line 4516.
2021.01.05 20:45:42 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/72_XiaomiDevice.pm line 666.
2021.01.05 20:45:42 1: PERL WARNING: Use of uninitialized value in string ne at ./FHEM/72_XiaomiDevice.pm line 668.
2021.01.05 20:45:42 1: PERL WARNING: Use of uninitialized value in string ne at ./FHEM/72_XiaomiDevice.pm line 670.
2021.01.05 20:45:42 1: PERL WARNING: Use of uninitialized value in string ne at ./FHEM/72_XiaomiDevice.pm line 671.
2021.01.05 20:45:42 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/72_XiaomiDevice.pm line 675.


Gruß

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 05 Januar 2021, 20:56:26
Hallo Stelaku,

danke fürs testen und Feedback.
Freu mich das alles soweit klapt.

@curt & Stelaku, ich konnte jetzt nachvollziehen was ihr meint, ich hatte meinen Roboter bisher nur einmal wischen lassen...
Ihr könnt jetzt mit set mopmove on/off, den movmove aktivieren und deaktivieren
Die tut die App automatisch beim wischen, lustig ist, dies geht auch bei saugen, ob es sinnvoll ist weiß ich nicht :)
Wenn mopmove an ist und man will einzelne räume saugen dann stellt der Roboter automatisch auf vacuum_mop um und meckert das kein mop installiert ist.

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 05 Januar 2021, 22:52:20
Hallo curt,

Hier ein Wassertank.

https://www.ebay.de/itm/550ML-Schwarz-Wassertank-fuer-Xiaomi-STYJ02YM-Robotic-Vacuum-Reinigung-Zubehoer-/133448694312?_trksid=p2349624.m46890.l49292 (https://www.ebay.de/itm/550ML-Schwarz-Wassertank-fuer-Xiaomi-STYJ02YM-Robotic-Vacuum-Reinigung-Zubehoer-/133448694312?_trksid=p2349624.m46890.l49292)

Auf meinem Roboter steht zwar STYTJ02YM aber der sieht passend aus.

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 05 Januar 2021, 23:26:33
Zitat von: MadMax am 05 Januar 2021, 09:54:44
Geh in fhem auf clen_room bei denem Roboter und gib dort einfach mal 10 ein und schau in welchen Raum er fährt.

Ok, verstanden. Danke.

Zitat von: MadMax am 05 Januar 2021, 17:41:51
Bitte mal durchtesten :)

Ich muss im Moment die Testfrequenz verringern: Die Gattin hat mir angedroht, dass ich in den Gartenschuppen ausquartiert werde ...

Zitat von: MadMax am 05 Januar 2021, 22:52:20
Hier ein Wassertank.

Ich habe spaßeshalber diesen hier bestellt, der kommt aber erst 28.01. - 23.02.: https://www.ebay.de/itm/193790139787
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 06 Januar 2021, 09:22:11
Dann berichtete bitte wenn der Wassertank da ist ob es klappt, von den Bildern her sieht der passend aus.

Meine Frau hat Mitleid mit dem Roboter weil ich den irre mache.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 06 Januar 2021, 09:41:32
Hallo Max

Die perl Meldungen sind jetzt nach der letzten Version nicht mehr da. Super.
Wenn Martha wieder geladen ist werde ich die neuen Funktionen mal ausprobieren.
Den Wassertank habe ich mir dann auch mal gleich bestellt. Der ist interessant, weil ja der Kombibehälter doch nur einen kleinen Wassertank hat.
Mal sehen welcher schneller da ist curt seiner oder meiner.

edit:
Hab jetzt Martha wieder geladen und lasse Sie mal wieder ein wenig das Haus putzen.
Der Mop mode funktioniert einwandfrei.
Einzelne Räume saugen klappt auch ohne Probleme. Das Auswahlfenster wenn die Räume im attr. room_names angelegt sind ist prima.
Wie ich gesehen habe hast Die remotcontrol Funktion wieder mit on_off belegt.
Funktioniert besser als mit start stop.
Jetzt gerade teste ich die Option secondary_cleaning die aber auch ohne Probleme funktioniert.

Einfach nur klasse

Vielen dank.

Gruß

Stephan


Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 07 Januar 2021, 05:03:43
Zitat von: MadMax am 06 Januar 2021, 09:22:11
Meine Frau hat Mitleid mit dem Roboter weil ich den irre mache.

Ach, so ganz heimlich guckt die Gattin ja bewundernd, sie kann es nur nicht so zeigen.  :D

Zitat von: MadMax am 05 Januar 2021, 20:56:26
Ihr könnt jetzt mit set mopmove on/off, den movmove aktivieren und deaktivieren

Heißa - jetzt rubbelt er aber schön.
(Einzelne Räume ansteuern habe ich noch nicht getestet.)

Im Moment denke ich, dass wir irgendwie eine Liste der Optionen brauchen - also welche Option macht ganz konkret was? Und eventuell brauchen wir auch "best practices"-Beispiele. Stefan lässt zum Beispiel seine Martha Fahrstuhl fahren, so richtig mit automatischem Einsteigen unso. Und mir ist völlig unklar, wie er Räume in zwei Etagen hinbekommen hat ...

Da das immer zu kurz kommt:
@MadMax
Zwar erzähle ich immer, was noch nicht geht oder noch besser wäre ... ich möchte Dir sehr herzlich und ganz ausdrücklich danken!
Ich habe hier nichts zu sagen. Aber wenn ich das dürfte, würde ich Dich mit meinem Goldenen Sonnenorden auf Pappe "Freundlicher Helfer" auszeichnen - danke!
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 08 Januar 2021, 02:15:40
Zitat von: MadMax am 05 Januar 2021, 09:54:44
Geh in fhem auf clen_room bei denem Roboter und gib dort einfach mal 10 ein und schau in welchen Raum er fährt.

Das funktioniert sehr schön.

Mir fielen in der Zwischenzeit folgende Dinge auf:
Ich vermute, dass "edge_clean" diese kleine Eckbürste an/ausschalten soll. Leider funktioniert das nicht. Aber es wird noch besser: Wenn ich das während des Betriebs schalte, hält der Mover einfach an. Das soll doch nicht so, oder?

Zu maps:
Ich habe angefangen, mich durch 157 Seiten Thread zu quälen, ich bin ganz stolz schon auf Seite 12. In Antwort #124 am: 28 Juni 2017, 14:47:13 schreibt @Markus M. , dass die maps verschlüsselt in der Cloud liegen würden. Das kann ich mir nicht so ganz vorstellen - woher weiß er denn, in welchen Raum er soll?

Du selbst hast übrigens vor 2,5 Jahren zu sehr ähnlichem Thema geschrieben, hier in Antwort #7 am: 03 April 2018, 14:19:35 https://forum.fhem.de/index.php/topic,86535.msg789937/topicseen.html#msg789937 .

Hilft das vielleicht irgendwie?
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 08 Januar 2021, 06:40:59
Hallo Curt
ZitatIch vermute, dass "edge_clean" diese kleine Eckbürste an/ausschalten soll. Leider funktioniert das nicht. Aber es wird noch besser: Wenn ich das während des Betriebs schalte, hält der Mover einfach an. Das soll doch nicht so, oder?
edge_clean sollte eigentlich das reinigen der Ränder aktiviert. Der Sauger fährt dann alle Räume an den Rändern ab.
Das funktioniert aber noch nicht alleine mit diesem Modul.
Wenn Du den Sauger im normalen Betrieb umstellst auf edge_clean scheint er erstmal auf pause zu gehen. Wenn Du jetzt auf der Handy app auf start klickst kommt die Ansage Reinigung der Ränder beginnt.
Diese Einstellung kann man in der app über die drei Punke oben rechts bei der Kartenansicht aufrufen. Nennt sich Entlang der Kanten saugen.
Und in der App ist es auch so das die aktuelle Reinigung abgebrochen wird wenn man im laufenen Betrieb auf die Kanten Reinigung umstellt. Nur das in der App nochmal darauf hingewiesen wird das die aktuelle Reinigung unterbrochen wird. 

Ich benutze diese Funktion sehr gerne um die Karte zu erstellen. Der Sauger fährt dann alle Räume an den Rändern ab und erstellt so nach einer kompletten Runde eine Karte das Hauses.
Geht sehr viel schneller als wenn ich den Sauger kpl. alles Saugen lasse um eine Karte zu erstellen.

ZitatIch habe angefangen, mich durch 157 Seiten Thread zu quälen

Das habe ich schon hinter mir. War sehr interresant so bin ich auf fempy gekommen.

ZitatDu selbst hast übrigens vor 2,5 Jahren zu sehr ähnlichem Thema geschrieben

Das ist nicht MadMax gewesen das war Joachim alias MadMax-FHEM hab die beiden auch schon verwechselt :)

Gruß

Stephan

Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 08 Januar 2021, 12:40:18
Guten Tag  :)

@curt, gerne doch habe ja auch einen eigenen Nutzen davon.

Die Vermutung das die Map in der Cloud liegt denke ich stimmt... Wenn ich dem Roboter sage das er die map hochladen soll sagt er nur "ok" wo die hin geht... in eine Wolke?

So weiter...

edge_clean sollte eigentlich das reinigen der Ränder aktiviert. Der Sauger fährt dann alle Räume an den Rändern ab.
Das stimmt, sollte jetzt auch in der Version funktionieren, war das gleiche Thema wie mit dem mopmove.

Ich bekomme jetzt Positionen vom Roboter in pox_x, pos_y, pos_angle (noch nicht ganz klar wie skaliert) und pos_? (ist mal 0 und mal 1).

Clean_point und clean_zone funktionieren jetzt, entweder einen Pukt X,Y angeben oder eine Zone X1,Y1,X2,Y2 angeben, hier wird dann ein Rechteck zwischen den Punkten gebildet und gereinigt.
(bei diesen beiden Funktionen führt der Roboter die Arbeit aus ist aber im status "pause" und liefert auch keine Positionen zurück, konnte den Fehler noch nicht finden, er wechselt kurz zu spot oder zone clenaing aber dann gleich wieder zu pause.)

attr:
point_names Test:[-1.0,-1.0] Test2:[-2.0,-2.0]
zone_names Test:[-2.0,-3.0,-2.1,-3.1] Esstisch:[-1.0,-3.0,-5.0,-5.0]
intervalDataCleaning 10 (in s, ich würde den Wert nicht zu hoch setzen, weil der Roboter bei get_curpos alle positionen seit der letzten Abfrage sendet, könnten zu viele sein die das Modul dann nicht verarbeiten kann, angezeigt wird immer die letzte)

Mit den Daten von x und y könnte man über das logProxy_xy2Plot eventuell eine Art Karte plotten indem man den Roboter wie Stephan sagte einmal die Kanten abfahren lässt.
https://wiki.fhem.de/wiki/LogProxy#Daten_aus_x.2Cy-Koordinatenpaaren_plotten (https://wiki.fhem.de/wiki/LogProxy#Daten_aus_x.2Cy-Koordinatenpaaren_plotten)

Gruß
Max

ps: MadMax-FHEM bin nicht ich  ;)
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 08 Januar 2021, 13:27:40
Hallo Max

Das ist ja echt klasse. Ich hatte mich noch nicht getraut zu fragen aber Du hast es jetzt ja schon so gut wie umgesetzt. Durch die x y Positionsdaten kann der Sauger das Reinigen an dieser Stelle schon durchführen. Jetz wäre statt des Reinigen an dieser Position ein einfaches goto x y cool.
Zur Zeit lasse ich Martha mit der remotecontrol Funktion über ca. 30 einzelne steuerbefehle zum Mülleimer fahren. Was jetzt durch die x y Koordinaten mit einem Befehl erledigt wäre.

Viele Grüße

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Esjay am 08 Januar 2021, 14:16:48
Servus zusammen..Habe ich hier eigentlich irgendetwas verpasst, oder hat der Entwickler gewechselt?

Grüße
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 08 Januar 2021, 14:19:27
Siehe
Antwort #2272 am: 03 Januar 2021, 14:41:59

Die Frage von Esjay hat sich durch Verschiebung des Teilthreads in diesen neuen Thread erledigt.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 09 Januar 2021, 15:41:04
Hallo :)

so neue Funktionen eingebaut :)

set
  set_walls set wall or area (VacuumCleaner: viomi.vacuum.Vx)
  set wall (name:2:[x1;y1;x2;y2] [...] for one or more valid wall)
  set no-go-area (name:3:[x1;y1;x2;y2] [...] for one or more  valid no-go-area)
  combination of are an wall posible

delete_walls remove all walls and areas(VacuumCleaner: viomi.vacuum.Vx)

attribute
   no_go_areas, no_mop_areas, no_vacuum_areas, no_mop_walls, no_vacuum_walls, walls (VacuumCleaner: viomi.vacuum.Vx)
   wall (name:<b>2</b>:[x1,y1,x2,y2] [...] for one or more valid wall)
   area (name:<b>3</b>:[x1,y1,x2,y2] [...] for one or more  valid no-go-area)

in Planung ist das je nach dem was der Roboter machen soll die entsprechenden no-go-areas und walls gesetzt werden.

Manuell lassen sich die schon setzen.


@Flo, mach mal das was im Post 3 steht, wenn ich Zeit habe kann ich mir das mal ansehen.

Zeit wird aber langsam knapp, ab Montag läuft es wieder anders.

Hat mal jemand was mit dem x,y Plot versucht?

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Niko1987 am 09 Januar 2021, 18:51:40
Hallo Max,

Danke für die Rückmeldung. Da muss ich mir zuerst einen Android besorgen :)

Hilft das vielleicht weiter?
https://github.com/marcelrv/XiaomiRobotVacuumProtocol (https://github.com/marcelrv/XiaomiRobotVacuumProtocol)

Gruß
Flo
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 10 Januar 2021, 09:20:21
Zitat von: MadMax am 09 Januar 2021, 15:41:04
so neue Funktionen eingebaut :)
set
  set_walls set wall or area (VacuumCleaner: viomi.vacuum.Vx)
  set wall (name:2:[x1;y1;x2;y2] [...] for one or more valid wall)
  set no-go-area (name:3:[x1;y1;x2;y2] [...] for one or more  valid no-go-area)
  combination of are an wall posible

Cheffe?
Der Markwort vom Focus sagte damals in der Werbung: "Und immer an die Leser denken!"

Ich will nicht rumnölen, nimm es mir bitte nicht übel:
Was ist da eigentlich die Einheit? Zentimeter, Meter? Für viel wichtiger erachte ich aber etwas anderes, da würde ich Dich wirklich drum bitten:
Best Practices - wir brauchen Beispiele. Bitte einfach mal ein konkretes Beispiel. Bitte!

Zudem würde ich ganz allgemein gern sämtliche SET (und ggf. GET)-Befehle durchgehen wollen: Ich bin blond und habe nicht alles verstanden. Übrigens auch nicht jedes Reading.

Ich verspreche im Gegenzug, dass ich mich um den zuständigen Wiki-Artikel kümmere.

Zitat von: MadMax am 09 Januar 2021, 15:41:04
Hat mal jemand was mit dem x,y Plot versucht?

Jetzt wirst Du witzig:
Dafür müsste man ja erstmal x und y haben. Ich hatte nach Deinem entsprechenden Posting sehr genau darauf geachtet - da ist nirgendwo x/y. Erst wenn ich die live sehe, kann ich darüber nachdenken, was man mit denen veranstalten könnte. Und das auch versuchen.

Die Map, dazu nochmal:
Du hattest Dich sinngemäß in die Richtung geäußert, dass das irgendwie mit einem Befehl in die Cloud geladen werde. Ok, mag ja sein. Im Moment gehe ich aber davon aus, dass der Robot eine interne Karte pflegt. Denn sonst ist "fahre in Raum 12" nicht machbar.
Warum ich so hartnäckig an diesem Punkt bin: Ich habe zwei Etagen. Und es scheint so, dass der Robot intern zwei Karten führt. Das halte ich für einen spannenden Punkt.

Frage daher:
Kannst Du (ggf. mit Auslösen dieses "hochladen in die Cloud" mir sagen, welche URL/Domain diese Cloud eigentlich ist?

Bitte nicht aufregen: Ich gehöre zum Team der Guten. Wir wollen da noch einen Schritt weiter.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 10 Januar 2021, 09:27:10
@MadMax
Noch eine Frage.

Du hast ja in den Eingeweiden des bisherigen Moduls rumgewühlt: Gibt es da Readings für Wartungsintervalle? Also Readings für "Absturzsensor reinigen", diese Richtung?

Ich meine, etwas in diese Richtung gelesen zu haben - kann das aber verwechseln.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 10 Januar 2021, 09:38:06
Zitat von: Niko1987 am 09 Januar 2021, 12:16:46
weiß jemand von euch ob der dreame.vacuum.mc1808 bzw. der Xiaomi Mi Robot 1C in Zukunft mit eingebunden wird?

Hallo Flo,
ich habe den *.v8 - und wenn Du die Seiten ab Dezember liest, siehst Du eigentlich, wie es entstand: Zuerst fand ich @Stelaku mit gleichem Robot. Er hat mir gezeigt, wie man vermittels des hier beschriebenen [¹] anderen Moduls und einiger Handstände zuerst die ID herausfindet und sodann zumindest meinen Robot zum Starten überredet.

Dann habe ich in diesem Thread fröhlich rumgequengelt und verlor schon die Hoffnung.

Dann meldete sich @MadMax (dem ich irrsinnig dankbar bin), er hat nicht nur den gleichen Robot, sondern wagte sich auch an das Modul. Was soll ich sagen - binnen weniger Tage haben wir eine Modulerweiterung, die den *.v8 mitnimmt. Da sind wir aktuell noch dran, Du siehst es ja.

Also - immer höflich quengeln  ;)

[¹] https://forum.fhem.de/index.php/topic,115427.30.html
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 10 Januar 2021, 10:16:47
Hallo curt

ZitatJetzt wirst Du witzig:
Dafür müsste man ja erstmal x und y haben. Ich hatte nach Deinem entsprechenden Posting sehr genau darauf geachtet - da ist nirgendwo x/y. Erst wenn ich die live sehe, kann ich darüber nachdenken, was man mit denen veranstalten könnte. Und das auch versuchen.

Die werden schon geliefert.
Du musst nur das attr. intervallDataCleaning auf einen Wert setzten erstmal nicht höher als 10. die Zahl steht für sekunden.
Wenn der Sauger dann auf cleaning steht werden die readings angezeigt.

Zitat von: MadMax am 08 Januar 2021, 12:40:18intervalDataCleaning 10 (in s, ich würde den Wert nicht zu hoch setzen, weil der Roboter bei get_curpos alle positionen seit der letzten Abfrage sendet, könnten zu viele sein die das Modul dann nicht verarbeiten kann, angezeigt wird immer die letzte)

Ich versuche gerade das plotten zu verstehen. bin aber noch in den Anfängen.
Hab jetzt eine log Datei mit den x y werten und versuche diese mal in ein plot für die Karte umzusetzten.

Viele grüsse

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 10 Januar 2021, 16:03:48
Hallo,

die Werte sind alle in Meter mit bis zu 4 Nachkommastellen also 10.0234 und auch negativ! -2.2345 (nur beispiele) bitte kein Komma verwenden! nur einen Punkt!
Beispiele:
attr <name> no_mop_areas Teppich_Flur:3:[0.1234,-1.1567,2.1345,-3.1890] (den Teppich will ich ja nicht wischen)
die 3 steht für ein Rechteck, eine 2 wäre ein Wand (gerade Linie zwischen den beiden Punkten).
Liste mir doch bitte mal die unklaren dinge auf, einige attribute, readings und set habe ich ja schon in der Modul Hilfe beschrieben, es ist manchmal nicht einfach Funktion zu erklären, kenne das auch vom Handbücher schreiben, das liegt mir auch nicht so sehr. Ich denke zusammen bekommen wir eine gute Dokumentation hin.

das gleich kannst du generell mit den no-go-areas und den no-vacuum-areas machen.
Hier möchte ich später automatisch vor dem Start die entsprechenden Areas setzen.

Zur Map, der Roboter selbst kennt nur eine Map, gehe ich von aus. Auf der Clud liegt auch nur eine, wenn du den in die 2. Etage setzt, zumindest ist es so bei mir, legt er eine neue map an und fragt danach ob ich die andere ersetzen möchte.
Ob ich dem Roboter sagen kann wohin er die Map laden soll weiß ich nicht, habe noch nix dazu im Netz gefunden.
Umgekehrt müsste man die Map ja wieder zurückschreiben, hier weiß ich nicht ob dies geht.
Wenn man danach such den Roboter ohne cloud zu betreiben muss man diesen rooten.
Bin auf ,,FloleVac" gestoßen, der code liegt bei Git aber leider meldet mir die App das mein Roboter nicht unterstützt wird. Eventuell ändert sich das mal dann könnte ich mir da was abschauen.


@flo, die befehle sind doch gleich wie bei den roborocks, das müsste doch gehen

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 10 Januar 2021, 17:22:30
Hallo,

so ich habe mal die erste "map" in fhem erstellt.

Hier die Anleitung:

1. neues Modul laden.

2. Logfile anlegen:

defmod <logName> FileLog ./log/<logfileName>.log <nameRoboter>:(pos_x_y).*


3.
Interval verkürzen für eine besser aufgelöste Karte

attr <nameRoboter> intervalDataCleaning 1


4.

set <nameRoboter> edge_clean on


5.
Roboter starten, entweder mit set start oder einzelne Räume.

6.
logproxi anlegen

define lp logProxy


7.

defmod <plotName> SVG lp:<logName>:CURRENT
attr <plotName> plotsize 800,700

setstate <plotName> initialized


8.
im Menü auf "Edit files" und eure Plotdatei suchen.
(<plotName>.gplot)


set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title ''
set ytics
set y2tics
set grid
set ylabel ""
set y2label ""
set xrange [-10:10]
set yrange [-10:10]

#lp Func:logProxy_xyFile2Plot("/opt/fhem/log/<logfileName>.log ",4,"pos_x_y:")
#lp Func:logProxy_xy2Plot([[9,9],[-9,9],[-9,-9],[9,-9],[9,9]])
#lp Func:logProxy_xy2Plot(ReadingsVal("<roboterName>","pos_x_y",0))

plot "<IN>" using 1:2 axes x1y2 title 'Map' ls l2 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Rahmen' ls l1fill lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Aktuell' ls l5fill_stripe lw 1 with lines


Wenn ich nix vergessen habe sollte ihr sowas wie im Anhang erhalten :)

Ich hoffe das ist soweit verständlich.
Aktuelle Position wir noch nicht angezeigt, da bastele ich noch.

Gruß
Max


Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 10 Januar 2021, 18:15:15
Hallo Max

Ich glaube die neue Version fehlt uns noch zum ausprobieren.
In der letzten Version gibt es noch kein zusammgefasstest reading (pos_x_y).
Oder übersehe ich da was ?

Gruß

Stephan

Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Niko1987 am 10 Januar 2021, 18:17:54
Ich quengel doch nicht ;) Bin unglaublich froh das hier so viel in so kurzer Zeit geschafft wurde. 

Zitat von: MadMax am 10 Januar 2021, 16:03:48



@flo, die befehle sind doch gleich wie bei den roborocks, das müsste doch gehen



Hallo Max,

Ich kann mich kurz verbinden, bekomme auch einige Redings:

READINGS
device_firmware
3.5.8_1059
2021-01-10 18:15:28
device_uptime
72.13
2021-01-10 18:15:28
error
none
2021-01-10 18:15:28
state
connected
2021-01-10 18:15:28
wifi_auth_fail_count
0
2021-01-10 18:15:28
wifi_conn_fail_count
0
2021-01-10 18:15:28
wifi_conn_success_count
1
2021-01-10 18:15:28
wifi_dhcp_fail_count
0
2021-01-10 18:15:28
wifi_rssi
-44
2021-01-10 18:15:28
wifi_state
online
2021-01-10 18:15:28


Nach wenigen Sekunden ist der Sauger jedoch disconected.
2021.01.10 18:09:09 5: Staubsauger Send SUCCESS
2021.01.10 18:09:09 5: Staubsauger > 213100600000000013d828235ffb34b609e491390f8b6e504eb87519b832a811fca66fd4819e5cb8f6ba9a8a29aa60fe5e2e2ae983067775f853120614805680cbd1e8be818c01b6077b5571ffa5f9fc6227af13322a3e1d5c72f0516d60ab62
2021.01.10 18:09:51 3: Staubsauger: connection timeout
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 10 Januar 2021, 18:47:13
Ist beim letzten Post auch mit angehängt.

@flo, merkwürdig eventuell weiß Markus Rat? Weiß gerade nicht ob es für timeout ein Attribut gibt.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 10 Januar 2021, 22:38:16
Hallo Max

Das hab ich total übersehen. Die neue Version hat sich über der Karte versteckt.

Ich hab jetzt auch eine kleine Karte mit hilfe Deiner Anleitung hinbekommen. Über zwei Punkte bin ich gestolpert.

Nachdem man Punkt 7. abgearbeitet hat muss man noch auf Write .gplotfile klicken. Ist warscheinlich allen klar ich habs dann auch nach einiger Zeit kappiert.

Dann endlich die gplot Datei gefunden und den Code aus 8 hineinkopiert und angepasst. Leider wurde dann nur der Rahmen angezeigt.
Ich hab dann nach etlichen Versuchen, und ich glaube auch nur aus Verzweiflung, mal das Leerzeichen hinter .log gelöscht und siehe da ich hatte eine Karte  ;D.

#lp Func:logProxy_xyFile2Plot("/opt/fhem/log/<logfileName>.log ",4,"pos_x_y:")
#lp Func:logProxy_xyFile2Plot("/opt/fhem/log/<logfileName>.log",4,"pos_x_y:")


Mit der aktuellen Position habe ich hier was gefunden. Ich glaube so müsste das gehen. Bissher habe ich leider noch nichts mit Erfolg reproduzieren können.

Zitat von: justme1968 am 22 September 2015, 10:06:42

Vielen dank für Deine Arbeit und Anleitung

Gruß

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: RappaSan am 11 Januar 2021, 09:44:37
Prima, daß hier so emsig an Erweiterungen gearbeitet wird. Daumen Hoch.
Für welche Saugermodelle gelten denn diese Erweiterungen?
Mein "SauBär" ist noch eine Version 1, da scheint das Ganze nicht zu greifen, oder?
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax-FHEM am 11 Januar 2021, 10:03:55
Das mit der Karte finde ich ja "lässig" ;)

Hier hat pah auch mal was bzgl. "eigenen Karten" in fhem gebaut (für Roomba per mqtt): https://forum.fhem.de/index.php/topic,114166.msg1086453.html#msg1086453

Vielleicht ist das auch eine Möglichkeit die es lohnt mal bzgl. Karten anzusehen...

Gruß, Joachim
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 11 Januar 2021, 22:57:05
Hallo zusammen

Sauger auf der Karte in Echtzeit anzeigen habe ich jetzt hinbekommen. Zwar bestimmt total umständlich aber es funktioniert.
Als erstes habe ich mir eine Datei ins log Verzeichnis geschrieben.

sudo touch /opt/fhem/log/position.log && sudo chown fhem:dialout /opt/fhem/log/position.log


Jetzt ein userReading im Sauger Device angelegt in dem ich mir die pos_x_y in die datei position.log immer wieder auf die erste Stelle schreibe.

position {
my $p = ReadingsVal($name,"pos_x_y","0");
qx`echo position $p > /opt/fhem/log/position.log`;$p
},


Dann noch in der SVG Datei


set xrange [-11:10]
set yrange [-11:10]

#lp Func:logProxy_xyFile2Plot("/opt/fhem/log/position.log",2,"position")
#lp Func:logProxy_xyFile2Plot("/opt/fhem/log/Karte.log",4,"pos_x_y:")
#lp Func:logProxy_xy2Plot([[10,9],[-10,9],[-10,-9],[8,-9],[8,9]])

plot "<IN>" using 1:2 axes x1y2 title 'Martha' ls l0fill lw 2 with points,\
     "<IN>" using 1:2 axes x1y2 title 'Map' ls l2 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Rahmen' ls l1fill lw 1 with lines



Jetzt ist die Position beim Saugen von Martha zu erkennen. Natürlich nicht so schon wie auf der App.
Die Web Seite muss ja immer wieder mit F5 aktualisiert werden damit die neue Position angezeigt wird,
aber es ist ein Anfang.

Zitat von: RappaSan am 11 Januar 2021, 09:44:37
Prima, daß hier so emsig an Erweiterungen gearbeitet wird. Daumen Hoch.
Für welche Saugermodelle gelten denn diese Erweiterungen?
Mein "SauBär" ist noch eine Version 1, da scheint das Ganze nicht zu greifen, oder?
Die derzeitigen Änderungen im Modul beziehen sich auf den viomi.vacuum.v8 oder auch Xiaomi Mi Robot Vacuum Mop Pro Saugroboter mit der firmware 3.5.3_0017.

Viele Grüsse

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 12 Januar 2021, 01:13:21
@RappaSan
Zitat von: RappaSan am 11 Januar 2021, 09:44:37
Für welche Saugermodelle gelten denn diese Erweiterungen?

Damit das nicht untergeht, klaue ich mal die Antwort:
"Die derzeitigen Änderungen im Modul beziehen sich auf den viomi.vacuum.v8 oder auch Xiaomi Mi Robot Vacuum Mop Pro Saugroboter mit der firmware 3.5.3_0017."

Das heißt aber nicht zwingend, dass manche Änderungen (Karte!) nicht auch mit anderen Modellen geht: Die Xiamo-Modelle sind alle relativ ähnlich gestrickt.

Mein Status:
* Karte habe ich noch nicht hinbekommen, da klemmt noch was. Ich hatte allerdings auch nur wenig Zeit.

* Mir sind noch immer nicht alle SET, alle Attribute, alle Readings klar. Das schiebe ich noch nach hinten, da muss ich auch fragen. - Im Kern muss das alles mal (ggf. von mir) aufbereitet werden: Ein neuer Nutzer liest doch nicht so einen riesigen Faden ...
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 12 Januar 2021, 19:58:38
Hallo,

Ich kann leider erst am Wochenende wieder mit mischen, bin beruflichen zu sehr eingespannt aber es freut mich das es vorran geht.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Kiter1988 am 14 Januar 2021, 16:47:27
Hallo,

evtl kann mir jemand helfen.
Ich habe einen Xiaomi Vacuum der ersten Generation.
Diesen wollte ich nun mit Fhem verbinden, ich hatte damals bereits den Token herausgesucht.

Er war auch schonmal in Fhem eingebunden, hatte ihn aber wegen vieler Fehlermeldungen gelöscht, nun wollte ich ihn wieder mit Fhem betreiben.

Leider connected der Sauger nicht mit Fhem.
Er ist nicht gerootet.

Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 14 Januar 2021, 16:58:13
Hallo Kiter1988

da ist der token bestimmt nicht mehr aktuell. Der ändert sich jedesmal wenn man die Wlan Verbindung am Sauger zurücksetzt.

Gruß

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Kiter1988 am 14 Januar 2021, 17:21:16
Danke dir, dann werde ich mal neu auslesen.

Zitat von: Stelaku am 14 Januar 2021, 16:58:13
Hallo Kiter1988

da ist der token bestimmt nicht mehr aktuell. Der ändert sich jedesmal wenn man die Wlan Verbindung am Sauger zurücksetzt.

Gruß

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: TWART016 am 15 Januar 2021, 00:21:44
Ich habe bin_full als event noch nie bekommen. Muss ich da noch was aktivieren?
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: RappaSan am 15 Januar 2021, 09:31:31
bin_full hab ich auch noch nie gesehen, ebenso x_y koordinaten.
Ich schätze, daß es an den verschiedenen Saugermodellen liegt.
Da kann man mittlerweile schnell den Überblick verlieren.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: mthome am 16 Januar 2021, 12:16:55
Hallo zusammen,

soweit läuft bei mir Alles super.

Nur im Logfile bekomme ich immer die Meldung "Staubsauger: type clean_room not implemented" wenn ich Ihn mit "set clean_room xx" saugen lasse. Ist das bei Euch auch so? Erscheint mir iwie komisch, da er ja ordentlich in den Raum fährt und saugt  :-\.

Danke,
Michael
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 16 Januar 2021, 12:35:55
Hallo Michael

Ich habe es gerade auch getestet. Habe die selbe Meldung im log wenn ich einen Raum gezielt reinigen will.
mit und ohne gesetzten attr. room_names.
Bei clean_point ist es genauso

Gruß

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: mthome am 16 Januar 2021, 17:18:19
OK danke. Hatte schon Befürchtung da ist was bei mir :-).
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 17 Januar 2021, 16:40:34
Zitat von: mthome am 16 Januar 2021, 12:16:55
Hallo zusammen,

soweit läuft bei mir Alles super.

Nur im Logfile bekomme ich immer die Meldung "Staubsauger: type clean_room not implemented" wenn ich Ihn mit "set clean_room xx" saugen lasse. Ist das bei Euch auch so? Erscheint mir iwie komisch, da er ja ordentlich in den Raum fährt und saugt  :-\.

Danke,
Michael

Welcher Roboter?
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 17 Januar 2021, 17:04:12
Hallo Max

Michale hat wie wir den selben Saugroboter. Wenn ich das richtig mitbekommen habe
viomi.vacuum.v8  Xiaomi Vacuum mop pro
im log steht bei mir wenn ich einen Raum gezielt reinigen will ( set Martha_1 clean_room 12 )
2021.01.16 13:16:53 3: Martha_1: type clean_point not implemented
$VAR1 = {
          'id' => 149,
          'result' => [
                        'ok'
                      ]
        };

2021.01.16 13:20:24 3: Martha_1: type clean_point not implemented
$VAR1 = {
          'id' => 161,
          'result' => [
                        'ok'
                      ]
        };

Die Reinigung wird auch ohne probleme durchgeführt.
Das selbe kann ich auch bei clean_point nachstellen.

Gruß

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: be-ro am 17 Januar 2021, 17:29:00
Sagt mal, kann man dem Robbi über dieses Modul auch die Anzahl an Wiederholungen vorgeben? In meiner Mii App kann ich z.B. einen bestimmten Raum 2 oder 3 Mal hintereinander reinigen lassen. So etwas wie ,,sauge die Küche 2-mal". Wäre cool wenn das auch über FHEM ginge.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 17 Januar 2021, 17:44:32
Das geht schon.

über set secondary_cleaning on/off.
dann wird der jeweilige nächste set Befehl von der app zweimal durchgeführt.
Sprich set Sauger clean_room xy  dann wird der Raum zweimal gesaugt.

Funktioniert bei meinen Xiaomi vacuum mop pro prima.

Gruß

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: mthome am 17 Januar 2021, 17:56:10
Zitat von: MadMax am 17 Januar 2021, 16:40:34
Welcher Roboter?
Ach ja sorry der Mop Pro also Model viomi.vacuum.v8
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: TWART016 am 18 Januar 2021, 03:04:42
Zitat von: RappaSan am 15 Januar 2021, 09:31:31
bin_full hab ich auch noch nie gesehen, ebenso x_y koordinaten.
Ich schätze, daß es an den verschiedenen Saugermodellen liegt.
Da kann man mittlerweile schnell den Überblick verlieren.
Ich habe einen S50.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 19 Januar 2021, 04:30:56
Zitat von: MadMax am 10 Januar 2021, 17:22:30
so ich habe mal die erste "map" in fhem erstellt.

Freunde des frisch gesaugten Teppichs, @MadMax @Stelaku
ich habe erhebliche Probleme, ich bin nicht mehr auf eurem Stand.
Mein größtes Problem: Ich bekomme normalerweise keine Koordinaten! Entweder habt ihr mir ein Detail nicht erzählt oder ich habe etwas übersehen.

Bei mir ist nachvollziehbares Verhalten: Ich starte ganz normal mit "start", Putzi wuselt los, es kommt (wenn überhaupt) exakt eine Koordinate, dann nichts mehr. Wenn ich dann im laufenden Betrieb von quit->balanced schalte, passiert immer noch nichts. Wenn ich aber zurückschalte (balaced->quite) purzeln die Koordinaten in die Readings, dass es eine wahre Freude ist. - Was mache ich denn da falsch?

Zitat von: MadMax am 10 Januar 2021, 17:22:30
4.

set <nameRoboter> edge_clean on

Wieso muss ich das vor "start" einschalten? Ist das etwa schon mein Problem? Ich verstand, dass der da nur einmal außen rumfährt und gut - falsch verstanden? Das kann ich jedenfalls nicht machen, im Schlafzimmer ist flauschiger Teppichboden, da sieht man an den Kanten sofort die Fahrspur ... Gattin hat mir schon wieder Übernachtung im Schuppen angedroht.

Zitat von: MadMax am 10 Januar 2021, 17:22:30
6.
logproxi anlegen

Ich hab schon einen; vielleicht ist das ein Problem für mein nächstes Problem. Aber man darf nur einen Log-Proxy haben, ich kann da auch nicht zaubern.

Zitat von: MadMax am 10 Januar 2021, 17:22:30
7.

defmod <plotName> SVG lp:<logName>:CURRENT


Alles gemacht, selbst das Leereichen entfernt: Ich bekomme ums Verrecken keine Grafik - auch wenn Koordinaten purzeln. Hat jemand eine Idee für Debugging?

Zitat von: Stelaku am 11 Januar 2021, 22:57:05
Jetzt ein userReading im Sauger Device angelegt in dem ich mir die pos_x_y in die datei position.log immer wieder auf die erste Stelle schreibe.

Der Teil läuft sauber. Auch in der Datei kommt das sauber an. - Den nächsten Schritt tat ich noch nicht, der Krempel da oben läuft ja noch nicht sauber.
Stelaku: Ich habe eine Idee, wie man das visualisieren könnte: Als ein Frontend nutze ich FTUI. Und da "kenne" ich hier im Forum jemanden, der sich mit solchen Visualisierungen perfekt auskennt, den würde ich dann fragen.

Jetzt klemmt es aber leider noch bei mir: Bitte helft mir!

BTW: Wie schaltet ihr den Robot von Hand? Dummy und irgendwie set-Befehle? Hat jemand bitte ein Beispiel?

BTW2: Wir verwirren offensichtlich Nutzer anderer Robots, sollten wir vielleicht in einen Thread 'viomi.vacuum.v8' umziehen? Wir müssten halt einem Moderator finden, der die bisherigen Beiträge mitnimmt.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 19 Januar 2021, 19:04:47
Hallo curt

Zitat
Mein größtes Problem: Ich bekomme normalerweise keine Koordinaten! Entweder habt ihr mir ein Detail nicht erzählt oder ich habe etwas übersehen.

Da ist wirklich noch eine Kleinigkeit die da fehlt um die Positionsdaten zu bekommen. Ich habe bemerkt das die daten erst dann im eingestellten attr intervalDataCleaning Takt reinkommen
wenn man zuvor ein paarmal auf get data gecklickt hat. Meistens läuft das dann nach dem zweiten get data von alleine weiter.

Zitat
Wieso muss ich das vor "start" einschalten? Ist das etwa schon mein Problem? Ich verstand, dass der da nur einmal außen rumfährt und gut - falsch verstanden? Das kann ich jedenfalls nicht machen, im Schlafzimmer ist flauschiger Teppichboden, da sieht man an den Kanten sofort die Fahrspur ... Gattin hat mir schon wieder Übernachtung im Schuppen angedroht.

edge_clean muss nur vor Start eingeschaltet sein wenn Du auch nur die Kanten abfahren lassen willst. Im Normalbetrieb ( set start ) fährt der Sauger aber auch als erstes die Kanten ab. Die Spuren im
Teppich werden sich leider nicht verhindern lassen. Also Schuppen schön einrichten, ich komm auf´n ein Bier vorbei  ;D.

Wegen des Plots.

Versuch mal folgendes ist zwar das selbe, der Weg ist meiner Meinung nach einfacher.

Als erstes gehst Du in Dein log Device wo die x y Koordinaten im log geschrieben werden.
Dort gibt es ein Icon mit  Create SVG plot . Wenn Du da draufklickst wird das plot Device
erzeugt.
Damit ist dieser Schritt auch schon fast erledigt.
Zitat
defmod <plotName> SVG lp:<logName>:CURRENT
Jetzt noch das attr. Plotsize  auf 800,700 manuell stellen und der leere Kasten ist fertig.
In der SVG Device Übersicht hast Du unten den Kasten Internals.
Dort klickst Du neben GPLOTFILE auf das SVG .log file.
In der sich jetzt geöffneten Übersicht kommt dann dieses hinein


set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title ''
set ytics
set y2tics
set grid
set ylabel ""
set y2label ""
set xrange [-10:10]
set yrange [-10:10]

#lp Func:logProxy_xyFile2Plot("/opt/fhem/log/position.log",2,"position")
#lp Func:logProxy_xyFile2Plot("/opt/fhem/log/Karte.log",4,"pos_x_y:")
#lp Func:logProxy_xy2Plot([[10,9],[-10,9],[-10,-9],[8,-9],[8,9]])

plot "<IN>" using 1:2 axes x1y2 title 'Martha' ls l0fill lw 2 with points,\
     "<IN>" using 1:2 axes x1y2 title 'Map' ls l2 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Rahmen' ls l1fill lw 1 with lines


Jetzt musst Du die logfileNamem auf Deine logfile Namen anpassen und
das mit Deinem schon existierenden logProxy sollte eigentlich kein Problem sein.
lp steht ja nur für den Namen des logProxy.
Also den Device Namen Deines logProxy statt #lp eintragen.


Zitat
Stelaku: Ich habe eine Idee, wie man das visualisieren könnte: Als ein Frontend nutze ich FTUI. Und da "kenne" ich hier im Forum jemanden, der sich mit solchen Visualisierungen perfekt auskennt, den würde ich dann fragen.

Ich muss gestehen ich habe mich noch überhaupt nicht mit diesem Thema fronted FTUI beschäftigt. Sieht aber spannend aus werd ich mal ausprobieren.

Zitat
BTW: Wie schaltet ihr den Robot von Hand? Dummy und irgendwie set-Befehle? Hat jemand bitte ein Beispiel?
Ich mache das nur noch über ein DOIF mit tages Timern. Gerne hier ein Beispiel aus der raw Kopiert.

defmod Start_Reinigung DOIF ([[$SELF:StartMo]|1] and [$SELF:Sauger_LeistungMo] ne "aus")\
\
(set Martha_1 suction_grade [$SELF:Sauger_LeistungMo])\
(IF ([$SELF:Sauger_LeistungMo] eq "turbo") (set Martha_fahrt_zum_Fahrstuhl on1 on))\
(IF ([$SELF:Sauger_LeistungMo] eq "turbo") (set Martha_1 start, set Flur_Steckdose_Fahrstuhl cmd_1))\
(IF ([$SELF:Sauger_LeistungMo] ne "turbo") (set Martha_1 start))\
\
DOELSEIF\
\
([[$SELF:StartDi]|2] and [$SELF:Sauger_LeistungDi] ne "aus")\
\
(set Martha_1 suction_grade [$SELF:Sauger_LeistungDi])\
(IF ([$SELF:Sauger_LeistungDi] eq "turbo") (set Martha_fahrt_zum_Fahrstuhl on1 on))\
(IF ([$SELF:Sauger_LeistungDi] eq "turbo") (set Martha_1 start, set Flur_Steckdose_Fahrstuhl cmd_1))\
(IF ([$SELF:Sauger_LeistungDi] ne "turbo") (set Martha_1 start))\
\
DOELSEIF\
\
([[$SELF:StartMi]|3] and [$SELF:Sauger_LeistungMi] ne "aus")\
\
(set Martha_1 suction_grade [$SELF:Sauger_LeistungMi])\
(IF ([$SELF:Sauger_LeistungMi] eq "turbo") (set Martha_fahrt_zum_Fahrstuhl on1 on))\
(IF ([$SELF:Sauger_LeistungMi] eq "turbo") (set Martha_1 start, set Flur_Steckdose_Fahrstuhl cmd_1))\
(IF ([$SELF:Sauger_LeistungMi] ne "turbo") (set Martha_1 start))\
\
DOELSEIF\
\
([[$SELF:StartDo]|4] and [$SELF:Sauger_LeistungDo] ne "aus")\
\
(set Martha_1 suction_grade [$SELF:Sauger_LeistungDo])\
(IF ([$SELF:Sauger_LeistungDo] eq "turbo") (set Martha_fahrt_zum_Fahrstuhl on1 on))\
(IF ([$SELF:Sauger_LeistungDo] eq "turbo") (set Martha_1 start, set Flur_Steckdose_Fahrstuhl cmd_1))\
(IF ([$SELF:Sauger_LeistungDo] ne "turbo") (set Martha_1 start))\
\
DOELSEIF\
\
([[$SELF:StartFr]|5] and [$SELF:Sauger_LeistungFr] ne "aus")\
\
(set Martha_1 suction_grade [$SELF:Sauger_LeistungFr])\
(IF ([$SELF:Sauger_LeistungFr] eq "turbo") (set Martha_fahrt_zum_Fahrstuhl on1 on))\
(IF ([$SELF:Sauger_LeistungFr] eq "turbo") (set Martha_1 start, set Flur_Steckdose_Fahrstuhl cmd_1))\
(IF ([$SELF:Sauger_LeistungFr] ne "turbo") (set Martha_1 start))\
\
DOELSEIF\
\
([[$SELF:StartSa]|6] and [$SELF:Sauger_LeistungSa] ne "aus")\
\
(set Martha_1 suction_grade [$SELF:Sauger_LeistungSa])\
(IF ([$SELF:Sauger_LeistungSa] eq "turbo") (set Martha_fahrt_zum_Fahrstuhl on1 on))\
(IF ([$SELF:Sauger_LeistungSa] eq "turbo") (set Martha_1 start, set Flur_Steckdose_Fahrstuhl cmd_1))\
(IF ([$SELF:Sauger_LeistungSa] ne "turbo") (set Martha_1 start))\
\
DOELSEIF\
\
([[$SELF:StartSo]|0] and [$SELF:Sauger_LeistungSo] ne "aus")\
\
(set Martha_1 set_fan_speed [$SELF:Sauger_LeistungSo])\
(IF ([$SELF:Sauger_LeistungSo] eq "turbo") (set Martha_fahrt_zum_Fahrstuhl on1 on))\
(IF ([$SELF:Sauger_LeistungSo] eq "Turbo") (set Martha_1 start, set Flur_Steckdose_Fahrstuhl cmd_1))\
(IF ([$SELF:Sauger_LeistungSo] ne "Turbo") (set Martha_1 start))\
\
\
\

attr Start_Reinigung do always
attr Start_Reinigung group Martha
attr Start_Reinigung readingList Sauger_LeistungMo Sauger_LeistungDi Sauger_LeistungMi Sauger_LeistungDo Sauger_LeistungFr Sauger_LeistungSa Sauger_LeistungSo\
StartMo StartDi StartMi StartDo StartFr StartSa StartSo
attr Start_Reinigung room Flur
attr Start_Reinigung setList Sauger_LeistungMo:quiet,balanced,middle,turbo,aus\
Sauger_LeistungDi:quiet,balanced,middle,turbo,aus\
Sauger_LeistungMi:quiet,balanced,middle,turbo,aus\
Sauger_LeistungDo:quiet,balanced,middle,turbo,aus\
Sauger_LeistungFr:quiet,balanced,middle,turbo,aus\
Sauger_LeistungSa:quiet,balanced,middle,turbo,aus\
Sauger_LeistungSo:quiet,balanced,middle,turbo,aus\
StartMo:time\
StartDi:time\
StartMi:time\
StartDo:time\
StartFr:time\
StartSa:time\
StartSo:time\

attr Start_Reinigung sortby 04
attr Start_Reinigung wait 0,5,[Martha_fahrt_zum_Fahrstuhl:wait_all]:\
0,5,[Martha_fahrt_zum_Fahrstuhl:wait_all]:\
0,5,[Martha_fahrt_zum_Fahrstuhl:wait_all]:\
0,5,[Martha_fahrt_zum_Fahrstuhl:wait_all]:\
0,5,[Martha_fahrt_zum_Fahrstuhl:wait_all]:\
0,5,[Martha_fahrt_zum_Fahrstuhl:wait_all]:\
0,5,[Martha_fahrt_zum_Fahrstuhl:wait_all]:\
:\
0,7200
attr Start_Reinigung webCmd &nbsp:Montag:Dienstag:Mittwoch:Donnerstag:Freitag:Samstag:Sonntag:StartMo:StartDi:StartMi:StartDo:StartFr:StartSa:StartSo:Sauger_LeistungMo:Sauger_LeistungDi:Sauger_LeistungMi:Sauger_LeistungDo:Sauger_LeistungFr:Sauger_LeistungSa:Sauger_LeistungSo:&nbsp
attr Start_Reinigung webCmdLabel &nbsp\
:&nbsp:&nbsp:&nbsp:&nbsp:&nbsp:&nbsp:&nbsp\
:Start:&nbsp:&nbsp:&nbsp:&nbsp:&nbsp:&nbsp\
:Leistung:&nbsp:&nbsp:&nbsp:&nbsp:&nbsp:&nbsp\
:&nbsp
attr Start_Reinigung widgetOverride setList:textField-long\
webCmd:textField-long\
readingList:textField-long\
wait:textField-long\
\
\


setstate Start_Reinigung cmd_2
setstate Start_Reinigung 2021-01-19 09:48:05 Sauger_LeistungDi turbo
setstate Start_Reinigung 2021-01-04 19:41:12 Sauger_LeistungDo balanced
setstate Start_Reinigung 2021-01-04 19:41:14 Sauger_LeistungFr turbo
setstate Start_Reinigung 2021-01-04 19:41:09 Sauger_LeistungMi turbo
setstate Start_Reinigung 2021-01-04 19:41:04 Sauger_LeistungMo turbo
setstate Start_Reinigung 2021-01-04 19:41:20 Sauger_LeistungSa balanced
setstate Start_Reinigung 2021-01-04 06:29:25 Sauger_LeistungSo aus
setstate Start_Reinigung 2021-01-19 10:01:15 StartDi 10:05
setstate Start_Reinigung 2021-01-02 08:20:47 StartDo 08:00
setstate Start_Reinigung 2021-01-02 08:20:41 StartFr 08:00
setstate Start_Reinigung 2021-01-13 06:48:59 StartMi 06:49
setstate Start_Reinigung 2021-01-06 12:47:41 StartMo 08:00
setstate Start_Reinigung 2020-12-26 09:02:00 StartSa 09:03
setstate Start_Reinigung 2021-01-03 20:40:28 StartSo 20:41
setstate Start_Reinigung 2021-01-19 10:05:50 cmd 2.4
setstate Start_Reinigung 2021-01-19 10:05:50 cmd_event timer_2
setstate Start_Reinigung 2021-01-19 10:05:50 cmd_nr 2
setstate Start_Reinigung 2021-01-19 10:05:50 cmd_seqnr 4
setstate Start_Reinigung 2021-01-19 09:48:05 e_Start_Reinigung_Sauger_LeistungDi turbo
setstate Start_Reinigung 2021-01-04 19:41:59 mode enabled
setstate Start_Reinigung 2021-01-19 10:05:50 state cmd_2
setstate Start_Reinigung 2021-01-19 08:00:00 timer_01_c01 20.01.2021 08:00:00|1
setstate Start_Reinigung 2021-01-19 10:05:00 timer_02_c02 20.01.2021 10:05:00|2
setstate Start_Reinigung 2021-01-19 06:49:00 timer_03_c03 20.01.2021 06:49:00|3
setstate Start_Reinigung 2021-01-19 08:00:00 timer_04_c04 20.01.2021 08:00:00|4
setstate Start_Reinigung 2021-01-19 08:00:00 timer_05_c05 20.01.2021 08:00:00|5
setstate Start_Reinigung 2021-01-19 09:03:00 timer_06_c06 20.01.2021 09:03:00|6
setstate Start_Reinigung 2021-01-18 20:41:00 timer_07_c07 19.01.2021 20:41:00
setstate Start_Reinigung 2021-01-19 10:05:50 wait_timer no timer


Viele Grüsse

Stephan


Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 19 Januar 2021, 20:46:50
Ich Komme auch gerade nicht ganz hinterher.

Die XY Koordinaten kommen nur wer geputzt wird, dies weiß Fhem aber erst nachdem diese info vom Roboter kam.
Wenn dann das Attribut intervalData zu groß ist kann da halt schon einiges an Zeit ins Land gehen, darum steht ihr das dann nachdem ihr get Data macht oder einen Parameter ändert weil dann neue Daten kommen.

Werde das mal am WE anschauen.

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: RappaSan am 20 Januar 2021, 09:28:39
Ich finde die Beiträge hier mittlerweile auch schwierig einzuordnen.
Könnte man nicht dazu übergehen und zwischendurch erwähnen, auf welche verschiedenen Robotermodelle sich die Erkenntnisse anwenden lassen?
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 21 Januar 2021, 06:00:16
Zitat von: Stelaku am 19 Januar 2021, 19:04:47
Also den Device Namen Deines logProxy statt #lp eintragen.

Hah - das war es, das hatte ich sowas von übersehen. Läuft. Herzlichen Dank!
Ansich möchte ich das nun live auf einer FTUI-Kachel sehen - und das kriegen wir auch noch hin.

Zitat von: Stelaku am 19 Januar 2021, 19:04:47
Ich muss gestehen ich habe mich noch überhaupt nicht mit diesem Thema fronted FTUI beschäftigt. Sieht aber spannend aus werd ich mal ausprobieren.

Langsam, langsam!
Aus dem Augenwinkel sah ich, dass der Entwickler da eine Beta am Start hat, wenn ich recht erinnere, schrieb er, dass er die jetzige Version nicht weiterentwickelt. Du müsstest Dir also überlegen, ob Du nicht gleich mit der BETA beginnst (für die es wohl noch keine Doku gibt).
Tatsächlich halte ich FTUI für eine geniale Oberfäche: Mal abgesehen, dass sie gefällig daherkommt, gehen so einige Dinge, die mit der Standardoberfläche nicht möglich sind. (Screenshot Homepage)

Zitat von: MadMax am 19 Januar 2021, 20:46:50
Ich Komme auch gerade nicht ganz hinterher.

Macht nichts, wir lassen niemanden zurück.  ;)

Zitat von: MadMax am 19 Januar 2021, 20:46:50
Die XY Koordinaten kommen nur wer geputzt wird, dies weiß Fhem aber erst nachdem diese info vom Roboter kam.
Wenn dann das Attribut intervalData zu groß ist kann da halt schon einiges an Zeit ins Land gehen, darum steht ihr das dann nachdem ihr get Data macht oder einen Parameter ändert weil dann neue Daten kommen.

Diese Aussage ist falsch. Richtig ist:
1) intervalData=1
2) Es kommen definitiv keine Koordinaten, auch nach 30 Minuten nicht.
3) Es stimmt, auch mehrfaches "get data" initiiert die Übermittlung der Koordinaten.
4) Es scheint klar, dass noch Datenüberragung(en?) erforderlich sind, bis Koordinaten kommen.
5) Nicht getestet: Nach 30sec EINMALIG "get data" senden.

@MadMax
Nochmals gefragt: Wäre es aus Deiner Sicht ok, wenn ich einen Moderator bitte, den kompletten Teilstrang (viomi.vacuum.v8) in einen neuen Thread auszulagern?
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 22 Januar 2021, 17:46:57
Wassertrank, dieser hier:
Zitat von: curt am 05 Januar 2021, 23:26:33
Ich habe spaßeshalber diesen hier bestellt, der kommt aber erst 28.01. - 23.02.: https://www.ebay.de/itm/193790139787

Der Wassertank ist angekommen. Er wird von Putzi korrekt erkannt, die Damenstimme sagt es. Folgende Beobachtungen, Fehler bei "mop":

* nach Start bleibt run-state in "self-test", obwohl er wischt
* bei Rückfahrt und Aufladen steht im run-state ein Fragezeichen
* nach Befehl charge bleibt "return to dock" - auch beim Aufladen
* Koordinaten kommen exakt einmal - egal wie oft ich nachträglich was abrufe/ändere

BTW: Saugbehälter/Koordinaten - entgegen meiner Annahme ist das Koordinatenproblem nicht zeitabhängig. Ich hatte 30sec gewartet, musste aber auch dann mehrfach umschalten.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 23 Januar 2021, 19:45:31
hallo curt,

wegen mir können wir die "neuen" Roboter Modelle gerne absoluten.
Die Sache ist dann nur wir müssen dann die Änderungen der Module synchronisierenaber ich denke das wird schon.

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 24 Januar 2021, 04:30:32
Freunde der frisch gewischten Wohnküche,
ich habe Erkenntnisse, Neuigkeiten und dumme Ideen ...  ;)

Zitat von: MadMax am 23 Januar 2021, 19:45:31
wegen mir können wir die "neuen" Roboter Modelle gerne absoluten.
Die Sache ist dann nur wir müssen dann die Änderungen der Module synchronisierenaber ich denke das wird schon.

@Markus M. schrieb mir, dass er als einziges Problem das sieht - was Du auch siehst: Unsere (real ja Deine) Änderungen müssen sauber in das Modul rein. Ihr beide reklamiert zudem, dass ihr wenig Zeit habt ... ok, alles erwachsene Leute: Kriegt ihr hin. Hat ja auch weniger damit zu tun, ob es nun einen eigenständigen Thread für "unseren" Roboter gibt ...
Einen Moderator sprach ich noch nicht an - ich will das vorher so sauber klären, dass der Moderator so wenig wie möglich Arbeit hat. PN an einen Moderator ist raus.

Weiterhin eine Info:
Ich hatte ja die Idee (kann das aber nicht), den Arbeitsweg des Roboters live und in Farbe auf der Nutzeroberfläche FTUI darzustellen. Also habe ich den angesprochen, den ich kenne und sehr schätze: Wenn es @eki nicht kann, kann das niemand. Eki schrieb das Map-Modul für FTUI. Hier nachlesen: Beitrag #128 in https://forum.fhem.de/index.php/topic,91781.120.html . Ab sofort ist Hoffen und Bangen angesagt.

@MadMax
Eine neue Beobachtung zum Thema "Koordinaten erst nach mehrfachem 'Nachfragen'":
Putzi stand 2..3 Tage angeschaltet an der Ladestation. Als ich ihn zum Putzen schickte, rückte er (bis auf die erste) gar keine Koordinaten mehr raus - ich konnte GET data machen bis ich weiß wurde ... dann fiel mir ein, dass in dem Handbuch des Roboters sinngemäß stand, dass man den Roboter nach (keine Ahnung, ein Tag?) neu anschalten müsse. Ok, Putzi war aber an ... ich schaltete ihn aus und wieder an. Und siehe da: Nach mehrfach GET data kamen auch wieder Koordinaten. Keine Ahnung ob diese Erkenntnis hilft.

Aber eine Frage in dem Zusammenhang:
Siehst Du eine Chance für eine Art "technisches Reboot" des Roboters?

Bleibt fein gesund.
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 24 Januar 2021, 13:22:22
#####              Dieser Beitrag bezieht sich auf viomi.vacuum.v8.               #####

Hallo curt,

du als Besitzer eine Wassertanks  ;)
Ich habe mal ohne Tank meine Roboter mit der App zum Wischen beauftrag und gesehen das dort noch was im Modul gefehlt hat, dies habe ich hoffentlich korrekt eingebaut kann es aber nicht testen aber ich bin mir sicher dass du das machst.

Zu den Koordinaten, hier habe ich das abgeändert das ich den Roboter immer nach Koordinaten Frage und wenn wie beim Laden keine kommen auch egal.
Bitte mal testen ob das euer Problem löst.

Sollte das nicht helfen, bitte attr <name> verbose 5 und dann mal ins Log schauen.

Mit diesem Telegramm wird nach der Position gefragt.

2021.01.24 13:15:40 4: Robba: write {"id":3451,"method":"get_curpos","params":[]} (45)


So sollte die Antwort aussehen.

2021.01.24 13:15:40 5: Robba: decrypted
{"result":[0.085475,-2.045064,-0.488397,1,0.087438,-2.047263,-0.666131,1,0.088979,-2.049189,-0.719909,1],"id":3451}
2021.01.24 13:15:40 5: Robba: parse id 3451
$VAR1 = {
          'id' => 3451,
          'result' => [
                        '0.085475',
                        '-2.045064',
                        '-0.488397',
                        1,
                        '0.087438',
                        '-2.047263',
                        '-0.666131',
                        1,
                        '0.088979',
                        '-2.049189',
                        '-0.719909',
                        1
                      ]
        };


Interessant ist auch hier bei diesem Telegramm die letzte Zahl in der Klammer, die darf nicht größer als 4096 sein, dann ist das Telegramm zu lang und euer "intervalDataCleaning" zu groß.

2021.01.24 13:15:40 5: Robba < 2131050000000000165b533e600d64ec603d41dbce363188730df495c679f4cea335dc6252a7f7912ced3086a9175f78b462ef30fa13a2218132693fc21702a8a5e058c95bb0fdd03d94fd9946d1bf1c424358e11057ee51cec861fd0536d3b84dffb61fad549c23f2f9188586d9a8ff7e701a9767ac1d14acd891940043e3dd8b6667dce0a761561cd23213dc07820b8fbee7d492f83037a0a87501cbb83a378cf01413c9d31717b08eb224df920bd9eab4ae9c1214934d5ba39db70ba723c109f5d2e41acdc02e807df8f6a955986d9d739b61f13c42e499c33bce1b4a282f38e261f376e2b6b058bac66b33c54e17ac47fc6c5097b414de5647630de7a7c8eecb9e1bfb4e82a79788239ce17ac48450bfbcd33489cd799103ea86fda3278c6735a6d6313b1684210af187348750c6425b3ee37c7705fc59fef6f8a733044d1a7a10a6795a1136a1775ffc0a7d169cba1c608db98cdbccf2de06de8042a0d621856d8caa539a7114deafed1ee123d31724e4a1b1aac9ec661f7830c16ec9561c1dd193c18f37c6e775e0d212fb32f51207ebd1707e646b15c70fa2bccbd066056326262fbf8e64a4838a052b052e6750c15806e803f31f409486c6a8c3c021a267d9a97828ec28c1072d2cc06ae39d26c9d874b0a93dd591741e3eda90202dc253df93ba35594959bdb29fd883bfdad53efce7b0048c85a9846ed764f91587300731189a7eb5a2988d6abd75dd8e74554dcfe93e9f225b1077bff500c053f95d6243bdb58269feee47d860ab161fe936ba018ecce1140ce8ec8090063432c984a3e6f8157b7f3bd980738c0b068a106afb7445a1b32dd546fbb6739727b9fba3468c4263119288245af4d9b47fde44592a2cca5a0413e96b918023883817343e8e5bb22b6602e6aee311baf4eac11e80c8877edb3aacdc8ca9d8e25de1ac3160a4a32fe97c0633e99d2823c4ab4674fcc16e546d8069f73387de39e48ec97249e92786335737d5eb2d596803ac791f21e53475135cd625058bdf0c60a765a43f068fb03df49764b280b14a6b719e2371f99a36e1b3782583cc5a2d3441f01f58e58694fd471407779656e2cc2ac32abc48a430973758bf6752a1ad54add196f2693ff830c0808309c7efa05f26f442d4cb6cf6a0a80063bbd2aaad18f42620f20228cadedf72018c7bd4f6d1e2bcabfcc6fa4a4777e2998530494499109fb2dc1334000ef4426dbcd87059f7ecc6314d66f2f19f17862e27f6ff1abb72cff3fb549af2d87a4f29ed44d6b25ab179e7a084043d087f5c7696861f19f479b6df9250fa8040cba1b51bf22c068111d12a3feeccb268b31bc2d4ddb5dec58470a751c815c9323729186fece7e865a6ff318129dd7666394e0c2317e4ac12e97fff451c41c40e00b20fa804c75af08456b026227aeb90d61e13894ff037b13815aa52ba8ffb94c4fc20ae3b9c7b83616b5190342671a9065469f4899e837f89c60c874964d738e38cb0b2748aadaf8159e576b5b9d2da159884246a4ab048d75d181466256292014993ea43bc24701ca275a200fe1e75b35df86f969214965f8256f4f6315159cbb8edfc9821a8e427737f8e473d192826a3a75b2610c752820516202b091f9dfe37f8980ec219c1796565d6925c34df4fe2eb847c69b105171193d4466876ed88fe02d81abdea81aef8e8bb16bcee4d08c908b9330937b12ae1298748012874afceec8ddf5bf9bde9d2219b23ce84ada9b320e41d0214b457697e9230c065f220557ac8fa57e354066f3e34dcd6f230f939135b81a2b73893d5e9 (1280)


So sieht das bei mit im kompletten aus.

2021.01.24 13:15:40 4: Robba: write {"id":3451,"method":"get_curpos","params":[]} (45)
2021.01.24 13:15:40 5: Robba: send 2131005000000000165b533e600d64ec04ce0012a14537b6284a5cf498f93fbea689887512ba4fb279a78b693cb55ad50d242ab27aa4dc36e33c06ce52f96bf653a7e5065533a41712ff524a23297130
2021.01.24 13:15:40 5: Robba Send SUCCESS
2021.01.24 13:15:40 5: Robba > 2131005000000000165b533e600d64ec04ce0012a14537b6284a5cf498f93fbea689887512ba4fb279a78b693cb55ad50d242ab27aa4dc36e33c06ce52f96bf653a7e5065533a41712ff524a23297130
2021.01.24 13:15:40 5: Robba < 2131004000000000165b533e600d64ec96a2d4e60a9f52b7b51bf7f58947c388559b43e65a5f3bcb619b9a149218ba6850d709c242d258a41cb2f3e17cb33b5a (64)
2021.01.24 13:15:40 5: Robba: decrypted
{"result":["ok"],"id":3447}
2021.01.24 13:15:40 5: Robba: parse id 3447
$VAR1 = {
          'result' => [
                        'ok'
                      ],
          'id' => 3447
        };

2021.01.24 13:15:40 4: Robba: parse id 3447 / set_custom_mode
2021.01.24 13:15:40 4: Robba: msg ref is ARRAY
2021.01.24 13:15:40 5: Robba: parse result for 3447 is ARRAY(0x6919ab0)
2021.01.24 13:15:40 5: Robba < 2131050000000000165b533e600d64ec603d41dbce363188730df495c679f4cea335dc6252a7f7912ced3086a9175f78b462ef30fa13a2218132693fc21702a8a5e058c95bb0fdd03d94fd9946d1bf1c424358e11057ee51cec861fd0536d3b84dffb61fad549c23f2f9188586d9a8ff7e701a9767ac1d14acd891940043e3dd8b6667dce0a761561cd23213dc07820b8fbee7d492f83037a0a87501cbb83a378cf01413c9d31717b08eb224df920bd9eab4ae9c1214934d5ba39db70ba723c109f5d2e41acdc02e807df8f6a955986d9d739b61f13c42e499c33bce1b4a282f38e261f376e2b6b058bac66b33c54e17ac47fc6c5097b414de5647630de7a7c8eecb9e1bfb4e82a79788239ce17ac48450bfbcd33489cd799103ea86fda3278c6735a6d6313b1684210af187348750c6425b3ee37c7705fc59fef6f8a733044d1a7a10a6795a1136a1775ffc0a7d169cba1c608db98cdbccf2de06de8042a0d621856d8caa539a7114deafed1ee123d31724e4a1b1aac9ec661f7830c16ec9561c1dd193c18f37c6e775e0d212fb32f51207ebd1707e646b15c70fa2bccbd066056326262fbf8e64a4838a052b052e6750c15806e803f31f409486c6a8c3c021a267d9a97828ec28c1072d2cc06ae39d26c9d874b0a93dd591741e3eda90202dc253df93ba35594959bdb29fd883bfdad53efce7b0048c85a9846ed764f91587300731189a7eb5a2988d6abd75dd8e74554dcfe93e9f225b1077bff500c053f95d6243bdb58269feee47d860ab161fe936ba018ecce1140ce8ec8090063432c984a3e6f8157b7f3bd980738c0b068a106afb7445a1b32dd546fbb6739727b9fba3468c4263119288245af4d9b47fde44592a2cca5a0413e96b918023883817343e8e5bb22b6602e6aee311baf4eac11e80c8877edb3aacdc8ca9d8e25de1ac3160a4a32fe97c0633e99d2823c4ab4674fcc16e546d8069f73387de39e48ec97249e92786335737d5eb2d596803ac791f21e53475135cd625058bdf0c60a765a43f068fb03df49764b280b14a6b719e2371f99a36e1b3782583cc5a2d3441f01f58e58694fd471407779656e2cc2ac32abc48a430973758bf6752a1ad54add196f2693ff830c0808309c7efa05f26f442d4cb6cf6a0a80063bbd2aaad18f42620f20228cadedf72018c7bd4f6d1e2bcabfcc6fa4a4777e2998530494499109fb2dc1334000ef4426dbcd87059f7ecc6314d66f2f19f17862e27f6ff1abb72cff3fb549af2d87a4f29ed44d6b25ab179e7a084043d087f5c7696861f19f479b6df9250fa8040cba1b51bf22c068111d12a3feeccb268b31bc2d4ddb5dec58470a751c815c9323729186fece7e865a6ff318129dd7666394e0c2317e4ac12e97fff451c41c40e00b20fa804c75af08456b026227aeb90d61e13894ff037b13815aa52ba8ffb94c4fc20ae3b9c7b83616b5190342671a9065469f4899e837f89c60c874964d738e38cb0b2748aadaf8159e576b5b9d2da159884246a4ab048d75d181466256292014993ea43bc24701ca275a200fe1e75b35df86f969214965f8256f4f6315159cbb8edfc9821a8e427737f8e473d192826a3a75b2610c752820516202b091f9dfe37f8980ec219c1796565d6925c34df4fe2eb847c69b105171193d4466876ed88fe02d81abdea81aef8e8bb16bcee4d08c908b9330937b12ae1298748012874afceec8ddf5bf9bde9d2219b23ce84ada9b320e41d0214b457697e9230c065f220557ac8fa57e354066f3e34dcd6f230f939135b81a2b73893d5e9 (1280)
2021.01.24 13:15:40 5: Robba: decrypted
{"result":[0.085475,-2.045064,-0.488397,1,0.087438,-2.047263,-0.666131,1,0.088979,-2.049189,-0.719909,1],"id":3451}
2021.01.24 13:15:40 5: Robba: parse id 3451
$VAR1 = {
          'id' => 3451,
          'result' => [
                        '0.085475',
                        '-2.045064',
                        '-0.488397',
                        1,
                        '0.087438',
                        '-2.047263',
                        '-0.666131',
                        1,
                        '0.088979',
                        '-2.049189',
                        '-0.719909',
                        1
                      ]
        };


Die gilt nur für den viomi.vacuum.v8.

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 24 Januar 2021, 14:23:59
#####              Dieser Beitrag bezieht sich auf viomi.vacuum.v8.               #####

Hallo MadMax

Hab die neue Version gleich mal mit Martha und ihrem neuen nur Wassertank ausprobiert.
Leider funktioniert es nicht so richtig.

Der Sauger startet ganz normal mit der Statusanzeige self-test. Ich habe intervalData auf 30 stehen und IntervalClean auf 2.
Self test bleibt die ersten 30 Sekunden als Status stehen und wegseld dann auf ?. Es werden die Positionsdaten neu eingelesen.
Ich vermute mal weil da jetzt im state ein < ? > steht wird auch der IntervalClean nicht berücksichtigt, weil die nächsten Positionsdaten kommen alle 30 Sekunden.
Wenn ich zwischendurch auf get data klicke werden die Positionsdaten immer sofort geholt.
Ich hab mal ein log mit verbose 5 gemacht.

2021.01.24 14:00:31 4: Mi_Vacuum: write {"id":21,"method":"set_mode_withroom","params":[3,1,0]} (55)
2021.01.24 14:00:31 5: Mi_Vacuum: send 2131006000000000139d8f1b600d6f6f55c598820184acdba2076fc6d3937fe960cc87b6ee3d68efebe96c56e9ed8b49dcc10ebfe3cd9610078e17ce28f8ca03a60d0eaf8af03fdd8334478cd2f2e5d58662bd599f3a5e87e4cd3c5c5bbc98e4
2021.01.24 14:00:31 5: Mi_Vacuum Send SUCCESS
2021.01.24 14:00:31 5: Mi_Vacuum > 2131006000000000139d8f1b600d6f6f55c598820184acdba2076fc6d3937fe960cc87b6ee3d68efebe96c56e9ed8b49dcc10ebfe3cd9610078e17ce28f8ca03a60d0eaf8af03fdd8334478cd2f2e5d58662bd599f3a5e87e4cd3c5c5bbc98e4
2021.01.24 14:00:31 5: Mi_Vacuum < 2131004000000000139d8f1b600d6f6f19e61a9a660f71bacf3d337df38282193e233cb297ff15218fa8a186533908faf64122a6492dcd6e75ffc4f0cd25716a (64)
2021.01.24 14:00:31 5: Mi_Vacuum: decrypted
{"result":["ok"],"id":21}
2021.01.24 14:00:31 5: Mi_Vacuum: parse id 21
$VAR1 = {
          'result' => [
                        'ok'
                      ],
          'id' => 21
        };

2021.01.24 14:00:31 4: Mi_Vacuum: parse id 21 / app_start
2021.01.24 14:00:31 4: Mi_Vacuum: msg ref is ARRAY
2021.01.24 14:00:31 5: Mi_Vacuum: parse result for 21 is ARRAY(0x45e2108)
2021.01.24 14:00:33 4: Mi_Vacuum: write {"id":22,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone","repeat_state","v_state","is_work","is_charge","zone_data","light_state"]} (297)
2021.01.24 14:00:33 5: Mi_Vacuum: send 2131015000000000139d8f1b600d6f714a80840a6b0b154a2bb20ad00adfb8f2c843eb6d424199d46756a79ae0801265da0ec1eef53fb43db3ce9f09a7b663e3838f21b60a3670976bcbc30baa98cf8a6ee7c65d8280dbc8cc4ad2683f66239a588e4913e339065ecdc161d74e9465cb04b79fb1f061b1828cfe2f704e6d80d923898274824d64a0e82d5a219d7ce4df2f8c838cd6d2ddb4313ca007b68ee0da2817d8016b29effea0c61eff3141f1eaf42c5e97a23259c2a2ddcbd196b90eae2bbc6bff7208374b2dc93664e0587002f992b7aa2b1b08a1f31e33f64ecb13617eb4fda221753e3be4236c92e9a2d6a2fd8a1a9331dd88151b21904321727086f5b91126c7c4370790c3be0f8269fb8fe832540974b1b59bcdf9dc849e1e1c254229d62ab603104e274cb618ce977e5d2625acd7e8840c2d6fe8bd8cef2b0f829dff504bb74ba219a55cd0fa675aa7b4
2021.01.24 14:00:33 5: Mi_Vacuum Send SUCCESS
2021.01.24 14:00:33 5: Mi_Vacuum > 2131015000000000139d8f1b600d6f714a80840a6b0b154a2bb20ad00adfb8f2c843eb6d424199d46756a79ae0801265da0ec1eef53fb43db3ce9f09a7b663e3838f21b60a3670976bcbc30baa98cf8a6ee7c65d8280dbc8cc4ad2683f66239a588e4913e339065ecdc161d74e9465cb04b79fb1f061b1828cfe2f704e6d80d923898274824d64a0e82d5a219d7ce4df2f8c838cd6d2ddb4313ca007b68ee0da2817d8016b29effea0c61eff3141f1eaf42c5e97a23259c2a2ddcbd196b90eae2bbc6bff7208374b2dc93664e0587002f992b7aa2b1b08a1f31e33f64ecb13617eb4fda221753e3be4236c92e9a2d6a2fd8a1a9331dd88151b21904321727086f5b91126c7c4370790c3be0f8269fb8fe832540974b1b59bcdf9dc849e1e1c254229d62ab603104e274cb618ce977e5d2625acd7e8840c2d6fe8bd8cef2b0f829dff504bb74ba219a55cd0fa675aa7b4
2021.01.24 14:00:34 5: Mi_Vacuum < 2131008000000000139d8f1b600d6f729f8aa7bc4e0aa3a6e6c2a7c4d3ffc5ed147c3a2dfe498fc206eca9de9646e38e8be4ef6278d22b9096f7978a625ee0b9c88525cff9d998792607d0b13479273b99343bb9ea8533a816a44440800de303b97bebc0db9125153d6d75011a6529e1ee23fc5763cd9f8eeeb9b2976be8434f (128)
2021.01.24 14:00:34 5: Mi_Vacuum: decrypted
{"result":["3.5.3_0017",7,1,2110,100,2,1,0,0,3,13,1,1,2,0,-3600,0,1,0,1,"0",0],"id":22}
2021.01.24 14:00:34 5: Mi_Vacuum: parse id 22
$VAR1 = {
          'result' => [
                        '3.5.3_0017',
                        7,
                        1,
                        2110,
                        100,
                        2,
                        1,
                        0,
                        0,
                        3,
                        13,
                        1,
                        1,
                        2,
                        0,
                        -3600,
                        0,
                        1,
                        0,
                        1,
                        '0',
                        0
                      ],
          'id' => 22
        };

2021.01.24 14:00:34 4: Mi_Vacuum: parse id 22 / get_status
2021.01.24 14:00:34 4: Mi_Vacuum: msg ref is ARRAY
2021.01.24 14:00:34 4: Mi_Vacuum: write {"id":23,"method":"get_curpos","params":[]} (43)
2021.01.24 14:00:34 5: Mi_Vacuum: send 2131005000000000139d8f1b600d6f72702991e9e3c5769258b3f09876f4bacebb6ed363081e5c9996423aaae51914bdc4004a40ec0c8139e8a83a8537a541485f616d38e70853039be2a7caad4f5506
2021.01.24 14:00:34 5: Mi_Vacuum Send SUCCESS
2021.01.24 14:00:34 5: Mi_Vacuum > 2131005000000000139d8f1b600d6f72702991e9e3c5769258b3f09876f4bacebb6ed363081e5c9996423aaae51914bdc4004a40ec0c8139e8a83a8537a541485f616d38e70853039be2a7caad4f5506
2021.01.24 14:00:34 5: Mi_Vacuum < 2131004000000000139d8f1b600d6f727fae68950206754d9be37afae46d52dc1c9b30d35e9f77f28c0b25e0672dbf4cb2252bdcc06e954f52e238aee7c41d38 (64)
2021.01.24 14:00:34 5: Mi_Vacuum: decrypted
{"result":[],"id":23}
2021.01.24 14:00:34 5: Mi_Vacuum: parse id 23
$VAR1 = {
          'result' => [],
          'id' => 23
        };

2021.01.24 14:00:34 4: Mi_Vacuum: parse id 23 / device_pos
2021.01.24 14:00:34 4: Mi_Vacuum: msg ref is ARRAY
2021.01.24 14:01:03 4: Mi_Vacuum: write {"id":24,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone","repeat_state","v_state","is_work","is_charge","zone_data","light_state"]} (297)
2021.01.24 14:01:03 5: Mi_Vacuum: send 2131015000000000139d8f1b600d6f8f81a410daae2b077188e5d9073aa8ef59722e34292f1f4ebd3163d8b4026cbecd4d660e20bbc2be602ce56bbc41b8e875e32cf696c28d47ba9e3b746912c268d04eca77dee72f0bac62d2dd45cc9b21c13afb3d45b420e14089d2be45f3397175dc90cf46c5faae495048cf05e4c2930c584544b0fd9e99ebe2c205ca21f77eb6a35ff62e0534ce78ed4b3024d3a6537766e4f45157f4c38e3ecd39805312e703207140522adfe92a66c249e17716175664d9c0f47241f565ba11e54fa36094dc0e192ea2b033b6a56ad47f99a19d6ff7b0ba4e4ecadbafec328da9e73bc0bb5a3deaf84cb93c1f05091b6307f7a0f191f20b55b112318293675ad5486c157a14ee0bdfd01031df5d5ee7047673adc7abffe0645f3233bfed853eccce2b69680a1d532e08c73d9239c99dcd020353e938d144ec71aab1e18fedbf40a24122552a
2021.01.24 14:01:03 5: Mi_Vacuum Send SUCCESS
2021.01.24 14:01:03 5: Mi_Vacuum > 2131015000000000139d8f1b600d6f8f81a410daae2b077188e5d9073aa8ef59722e34292f1f4ebd3163d8b4026cbecd4d660e20bbc2be602ce56bbc41b8e875e32cf696c28d47ba9e3b746912c268d04eca77dee72f0bac62d2dd45cc9b21c13afb3d45b420e14089d2be45f3397175dc90cf46c5faae495048cf05e4c2930c584544b0fd9e99ebe2c205ca21f77eb6a35ff62e0534ce78ed4b3024d3a6537766e4f45157f4c38e3ecd39805312e703207140522adfe92a66c249e17716175664d9c0f47241f565ba11e54fa36094dc0e192ea2b033b6a56ad47f99a19d6ff7b0ba4e4ecadbafec328da9e73bc0bb5a3deaf84cb93c1f05091b6307f7a0f191f20b55b112318293675ad5486c157a14ee0bdfd01031df5d5ee7047673adc7abffe0645f3233bfed853eccce2b69680a1d532e08c73d9239c99dcd020353e938d144ec71aab1e18fedbf40a24122552a
2021.01.24 14:01:03 5: Mi_Vacuum < 2131008000000000139d8f1b600d6f8f8f9d72b8fb119893e6e6614c031b0a1d147c3a2dfe498fc206eca9de9646e38e4a6048ecfd178e12cd18632062deba7038b0bf89cdc1fa1c396159d1c581fec0fb56351aa26dcd8c9f6703611730efbe007993783daf721d284264f5c42006dca8c1e783a6d70ac52f0b52d66093ec27 (128)
2021.01.24 14:01:03 5: Mi_Vacuum: decrypted
{"result":["3.5.3_0017",7,1,0,100,2,1,0,0.190000,3,13,1,1,2,0,-3600,0,1,0,1,"0",0],"id":24}
2021.01.24 14:01:03 5: Mi_Vacuum: parse id 24
$VAR1 = {
          'result' => [
                        '3.5.3_0017',
                        7,
                        1,
                        0,
                        100,
                        2,
                        1,
                        0,
                        '0.19',
                        3,
                        13,
                        1,
                        1,
                        2,
                        0,
                        -3600,
                        0,
                        1,
                        0,
                        1,
                        '0',
                        0
                      ],
          'id' => 24
        };
2021.01.24 14:01:03 4: Mi_Vacuum: parse id 24 / get_status
2021.01.24 14:01:03 4: Mi_Vacuum: msg ref is ARRAY
2021.01.24 14:01:03 4: Mi_Vacuum: write {"id":25,"method":"get_curpos","params":[]} (43)
2021.01.24 14:01:03 5: Mi_Vacuum: send 2131005000000000139d8f1b600d6f8f45bd542322a796f99704186cf9e090a5dd0f1d84d925dd99986dfaccbb7ee19dfc5ef95c905efa95f801ba9947337823d937ad2a31ccc79e1aed60d9b1e7f81a
2021.01.24 14:01:03 5: Mi_Vacuum Send SUCCESS
2021.01.24 14:01:03 5: Mi_Vacuum > 2131005000000000139d8f1b600d6f8f45bd542322a796f99704186cf9e090a5dd0f1d84d925dd99986dfaccbb7ee19dfc5ef95c905efa95f801ba9947337823d937ad2a31ccc79e1aed60d9b1e7f81a
2021.01.24 14:01:03 5: Mi_Vacuum < 2131006000000000139d8f1b600d6f8f9930d27d61876672e3531324b3fb0999342444567a136a42e593f6b4d5d888c8373c239faf35a4ad7ebfce5060ff49ada8e1b1bafe71464dcccac840a492458f9edfce83df626a252820b507d68a163f (96)
2021.01.24 14:01:03 5: Mi_Vacuum: decrypted
{"result":[0.032929,-0.200524,-2.515535,0],"id":25}
2021.01.24 14:01:03 5: Mi_Vacuum: parse id 25
$VAR1 = {
          'result' => [
                        '0.032929',
                        '-0.200524',
                        '-2.515535',
                        0
                      ],
          'id' => 25
        };

2021.01.24 14:01:03 4: Mi_Vacuum: parse id 25 / device_pos
2021.01.24 14:01:03 4: Mi_Vacuum: msg ref is ARRAY
2021.01.24 14:01:33 4: Mi_Vacuum: write {"id":26,"method":"get_prop","params":["sw_info","run_state","mode","err_state","battary_life","box_type","mop_type","s_time","s_area","suction_grade","water_grade","remember_map","has_map","is_mop","has_newmap","timezone","repeat_state","v_state","is_work","is_charge","zone_data","light_state"]} (297)
2021.01.24 14:01:33 5: Mi_Vacuum: send 2131015000000000139d8f1b600d6fad05c9b04b9c2a7edf88b2d8f90f46d75c1c9f92bf239910add29fd291237436d27c3016e962a775d6031ad969e8b81c11135be46c495ebfa849ea9e469dee3f5017a3c7923f3403da7de02cc7834fa96b8021c1071ca0a0cc965f8b703570ef5f3bcf10cc88b0308141fa1fdabf09e75cfc0803b679a4616e24d064a87d2dde303778a59aee43c4b9c71a261f571cae1f06abeb8e0fb2d82c859d1b259e63e74eb7f35dd13b1cacbc47dc2dc96ab5c30f8f7077bbd78050cbf8f947528f5ade13f7ce645c9da4427669379e66c4c9ddf5d923ce4154c99550d7f0fb5585b771be8f5046b19cecca8a960f2f9726fefd9bb4acdd656ed2357fedeede753d2eea7a778f4a29400e7cbe0ca70481713d68c75f48a3848b73080cde41e7687bde027cd41f78ea091342c9198ee04f311829dae663060a3b15afb32f005c98cefb2bec
2021.01.24 14:01:33 5: Mi_Vacuum Send SUCCESS
2021.01.24 14:01:33 5: Mi_Vacuum > 2131015000000000139d8f1b600d6fad05c9b04b9c2a7edf88b2d8f90f46d75c1c9f92bf239910add29fd291237436d27c3016e962a775d6031ad969e8b81c11135be46c495ebfa849ea9e469dee3f5017a3c7923f3403da7de02cc7834fa96b8021c1071ca0a0cc965f8b703570ef5f3bcf10cc88b0308141fa1fdabf09e75cfc0803b679a4616e24d064a87d2dde303778a59aee43c4b9c71a261f571cae1f06abeb8e0fb2d82c859d1b259e63e74eb7f35dd13b1cacbc47dc2dc96ab5c30f8f7077bbd78050cbf8f947528f5ade13f7ce645c9da4427669379e66c4c9ddf5d923ce4154c99550d7f0fb5585b771be8f5046b19cecca8a960f2f9726fefd9bb4acdd656ed2357fedeede753d2eea7a778f4a29400e7cbe0ca70481713d68c75f48a3848b73080cde41e7687bde027cd41f78ea091342c9198ee04f311829dae663060a3b15afb32f005c98cefb2bec
2021.01.24 14:01:33 5: Mi_Vacuum < 2131008000000000139d8f1b600d6fad113ae8bbf9bff2dc963142d0203fc331147c3a2dfe498fc206eca9de9646e38e4a6048ecfd178e12cd18632062deba70cf32f2625279cc4f19e4e528c47551788bfb7372937a5c7f7489010bce8f2f6057403bcd019943308cb732977f419129e90d88ab5e4d7eb08cc2ac203eee8edd (128)
2021.01.24 14:01:33 5: Mi_Vacuum: decrypted
{"result":["3.5.3_0017",7,1,0,100,2,1,0,0.990000,3,13,1,1,2,0,-3600,0,1,0,1,"0",0],"id":26}
2021.01.24 14:01:33 5: Mi_Vacuum: parse id 26
$VAR1 = {
          'id' => 26,
          'result' => [
                        '3.5.3_0017',
                        7,
                        1,
                        0,
                        100,
                        2,
                        1,
                        0,
                        '0.99',
                        3,
                        13,
                        1,
                        1,
                        2,
                        0,
                        -3600,
                        0,
                        1,
                        0,
                        1,
                        '0',
                        0
                      ]
        };

2021.01.24 14:01:33 4: Mi_Vacuum: parse id 26 / get_status
2021.01.24 14:01:33 4: Mi_Vacuum: msg ref is ARRAY
2021.01.24 14:01:33 4: Mi_Vacuum: write {"id":27,"method":"get_curpos","params":[]} (43)
2021.01.24 14:01:33 5: Mi_Vacuum: send 2131005000000000139d8f1b600d6fad6f1df4b0cf3643178b992392274c646c61a451190435b3450baa0ed9e56c0ca90ca3eb8dbe4a54dafa640dd8b8e79d7eedd4af5bae4e6ba50b9ba6b481208e2d
2021.01.24 14:01:33 5: Mi_Vacuum Send SUCCESS
2021.01.24 14:01:33 5: Mi_Vacuum > 2131005000000000139d8f1b600d6fad6f1df4b0cf3643178b992392274c646c61a451190435b3450baa0ed9e56c0ca90ca3eb8dbe4a54dafa640dd8b8e79d7eedd4af5bae4e6ba50b9ba6b481208e2d
2021.01.24 14:01:33 5: Mi_Vacuum < 2131006000000000139d8f1b600d6fadd8fdbba8fb79aa647232399115b828934f8e00a5277135ba3222ecf39891c6a285a70a0910b39701ca06b89a7b74d2b5e04639fb214c3e309b2390764f8c33eb5965d62b3adee3849e33d6916e05a02f (96)
2021.01.24 14:01:33 5: Mi_Vacuum: decrypted
{"result":[1.476289,-0.913061,1.182861,1],"id":27}
2021.01.24 14:01:33 5: Mi_Vacuum: parse id 27
$VAR1 = {
          'result' => [
                        '1.476289',
                        '-0.913061',
                        '1.182861',
                        1
                      ],
          'id' => 27
        };

2021.01.24 14:01:33 4: Mi_Vacuum: parse id 27 / device_pos
2021.01.24 14:01:33 4: Mi_Vacuum: msg ref is ARRAY


Gruß

Stephan


Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 24 Januar 2021, 16:26:14
#####              Dieser Beitrag bezieht sich auf viomi.vacuum.v8.               #####

Hallo Stephan,

alles klar das Problem sollte bekoben sein, könntest du es testen da mir der Behälter fehlt  ;)

Der Behälter an sich funktioniert aber üder die app ohne probleme?

Gruß
Max
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 24 Januar 2021, 17:11:25
#####              Dieser Beitrag bezieht sich auf viomi.vacuum.v8.               #####

Sehr cool funktioniert

Nach den ersten 30 Sekunden für  intervalData kommen die Positionsdaten alle 2 Sekunden wie bei intervalDataClean eingestellt.

Der Behälter funktioniert über die app sowie über die Fhem Oberfläche einwandfrei.

Ich bin ja noch auf der Suche nach einer eleganten Lösung den Sauger mit einen Befehl zum Mülleimer zu bewegen. Mit den einzelnen remotcontrol Befehlen geht das zwar schon sehr gut.
Ist aber ein wenig aufwendig mit 30 einzelnen Befehlen.
Hast Du vieleicht eine Idee wie man den Sauger mit der clean Point option dazu bringen kann zu diesem Punkt zu fahren und dann einfach nicht reinigt sondern auf pause geht.
Absolut genial wäre natürlich die bei den anderen Saugern vorandene goto Option.
Bin mir nicht sicher bei unserem Model gibt es diesen Befehl glaube ich nicht.

Vielen dank und noch einen schönen Restsonntag

Gruß Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: MadMax am 24 Januar 2021, 17:27:27
Hallo Stephan,

ein goto gibt es auch nicht über die app.

Eventuell mit clean_point, dann die Position vergleichen und wenn die um 30cm dem Ziel entsprechen einfach die Reinigung mit Stopp abbrechen?



if(ReadingsAge("Robba", "pos_x", 0) > 4,9 && ReadingsAge("Robba", "pos_x", 0) < 5,1 && ReadingsAge("Robba", "pos_y", 0) > 1,9 && ReadingsAge("Robba", "pos_y", 0) < 2,1)
{


}



Gruß
Max

p.s. Robba hat unsere Tochter den Roboter genannt  ;D
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: Stelaku am 24 Januar 2021, 17:58:27
Hallo Max

Das ist eine klasse idee das werde ich mal so ausprobieren.

Gruß

Stephan
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: Stelaku am 25 Januar 2021, 18:09:10
Hallo Max

Hab das heute mal ausprobiert. Leider geht das noch nicht. weil der Sauger beim set clean_point als Status nur noch pause anzeigt.
Und die Positionsdaten kommen ja nur wenn clean im status vorhanden ist.
Vieleicht kannst Du das bei Gelegenheit noch mit ändern.
Bei clean_room geht der Sauger nicht mehr wie früher auf pause und da kommen dann auf die Positionsdaten.

Viele Grüsse

Stephan
Titel: Antw:Antw:Xiaomi WiFi Devices Modul (Vacuum/Airpurifier/Fan) - 72_XiaomiDevice (Support)
Beitrag von: curt am 25 Januar 2021, 18:14:36
Zunächst herzlichen Dank an den freundlichen Helfer @Dr. Boris Neubert für die Verschiebung des Teilthreads - so wird das wohl übersichtlicher.

Zitat von: MadMax am 24 Januar 2021, 13:22:22
du als Besitzer eine Wassertanks  ;)
Ich habe mal ohne Tank meine Roboter mit der App zum Wischen beauftrag und gesehen das dort noch was im Modul gefehlt hat, dies habe ich hoffentlich korrekt eingebaut kann es aber nicht testen aber ich bin mir sicher dass du das machst.

Immer!
Also das funktioniert schon ganz gut. Es gibt Kleinigkeiten, siehe unten.

OT: Übrigens lässt sich der Wassertank schlecht leeren, es ist fast unmöglich, die Restmenge Wasser auszuschütten, jedenfalls bei meinem Modell.

Zitat von: MadMax am 24 Januar 2021, 13:22:22
Zu den Koordinaten, hier habe ich das abgeändert das ich den Roboter immer nach Koordinaten Frage und wenn wie beim Laden keine kommen auch egal.
Bitte mal testen ob das euer Problem löst.
und
Zitat von: Stelaku am 24 Januar 2021, 17:11:25
Sehr cool funktioniert

Nach den ersten 30 Sekunden für  intervalData kommen die Positionsdaten alle 2 Sekunden wie bei intervalDataClean eingestellt.

Das ist aber eine echt böse Falle!
Ich hatte nur intervalDataClean=1. ATTR intervalData war gar nicht gesetzt, woher sollte ich es auch wissen, Doku gibt es ja noch keine. Und Putzi machte bis auf die Koordinaten alles auch fein.

Wenn intervalData nicht gesetzt ist, muss man offenbar zig Mal "get data" abfeuern, bis Koordinaten kommen. Wenn intervalData=30 wie von @Stelaku vorgeschlagen, dann reicht einmal "get data" nach "set start" und nach einigen Sekunden (keine Ahnung ob 30 stimmt) purzeln die Koordinaten ganz freiwillig raus.

Was bedeutet eigentlich intervalData=30?

Würde es gehen, für solche wichtigen Dinge im Modul default-Werte vorzugeben? Also wenn intervalData nicht gesetzt ist, nimmt das Modul intervalData=30 an, so etwa.

Eine ganz andere Frage ging unter:
Könnte das Modul ein Reboot des Roboters initiieren?
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: Stelaku am 25 Januar 2021, 18:35:45
Hallo curt

Mit intervalData wird die Zeit festgelegt in der automatisch ein get data ausgeführt wird. Glaube ich zumindest.

Gruß
Stephan
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: MadMax am 25 Januar 2021, 18:56:13
Hallo Curt,

Dafür gibt es dufult Werte die sind bei 300 das Attribut bei clean habe ich hinzugefügt hier war fest im Modul 180 hinterlegt.
Ich denke ich werde mir das am Wochenende nochmal anschauen.

Gruß
Max
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 26 Januar 2021, 06:31:41
Bezug ist die Version mit 272.147 Byte Länge.

Zitat von: Stelaku am 25 Januar 2021, 18:35:45
Mit intervalData wird die Zeit festgelegt in der automatisch ein get data ausgeführt wird. Glaube ich zumindest.

Ich sehe gerade, das das einen üblen Seiteneffekt hat: Der macht das wirklich alle 30sec - und auch dann, wenn er tagelang in der Ladestation steht. Ich weiß nicht, ob das wirklich schlau ist.

Zur Diskussion gestellt - ich sehe zwei Möglichkeiten:
1) Nutzer muss halt auf 30 umstellen, wenn der Roboter saugt, danach zurück auf 300.
2) Das macht das Modul.

Zitat von: MadMax am 25 Januar 2021, 18:56:13
Ich denke ich werde mir das am Wochenende nochmal anschauen.

Au fein, ich baue eine Wünsch-Dir-was-Liste (die ich ggf nachträglich noch ergänze, also bitte am Wochenende diesen Beitrag nochmals lesen:

1) Roboter-Reboot - initiiert von FHEM:
Siehst Du da einen Ansatz?

2) Behältererkennung:
Siehst Du einen Ansatz für die Erkennung des eingesetzten Behälters?

Es ist ja so:
Der Roboter weiß genau, welcher der drei Behälter eingesetzt ist. Die nette Damenstimme sagt mir das ja immer. Und die weiß auch, wenn kein Behälter eingesetzt ist - sagt sie auch. (Reading box_type?)

Das würde das ganz neue Automatisierungsmöglichkeiten ergeben:
Den ganzen Zinnober bei cleaning_mode und Saugstärke[¹] und water_box_mode könnte das Modul übernehmen. Oder habe ich einen Denkfehler und der Roboter macht das schon selbst?[²]

3) [hier steht noch nichts]

[¹] Hast Du die Saugstärke (u/i SET) grad versehentlich wegprogrammiert?
[²] Ich weiß: Tausend tolle Ideen und an Dir bleibt das Coding hängen ... Ich sage es nochmals und hiermit sehr deutlich: Ohne Dich, ohne Deine selbstlose Arbeit hätte ich jetzt einen Roboter, der mit einem anderen Modul grad so zum starten und stoppen zu bewegen wäre: Ich bin Dir unendlich dankbar!

Am Rande ist anzumerken, dass die Gattin nicht mehr mit meiner Ausquartierung in den Schuppen droht, sie ist ja gegen solche Experimente, die niemand braucht ... die Gattin findet nun, dass wir wegen der beiden Etagen eigentlich zwei Roboter brauchen ... ich danke Euch!
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 26 Januar 2021, 06:36:40
Mir sind mehrere SET-Möglichkeiten völlig unklar, erhellt ihr mich bitte?

Was bewirke ich denn mit
* den Volume-Set-Befehlen
* carped_mode macht was?
* Was ist eigentlich DND - was macht das?
* fan_power - was bewirkt das?
* Ich traue mich nicht, nach den ganzen map-Befehlen zu fragen.
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: Stelaku am 26 Januar 2021, 07:25:16
Hallo curt

der Volume-set Befehl stellt die Lautstärke der Damenstimme im Sauger ein. Probier mal set volumen 100 und danach mach mal set locate. Meine Frau freut sich dann immer wenn Martha ich bin hier sagt  ;D

carped_mode bedeutet Teppich modus. Ist aber in unserem Model nicht vorhanden. Und in der neusten Version von Max auch nicht mehr zu sehen.

dnd bedeutet do-not-disturb. da sollen Zeiten hinterlegt werden in dem der Sauger inaktiv ist. Ist aber auch in der neuen Version von Max nicht mehr zu sehen.

fan_power ist glaube ich für Raumlüfter gedacht. Ebenfalls nicht mehr in der neuen Version für uns zu sehen.

Der get map Befehl ist bei uns noch zu sehen wird aber glaube ich nicht funktionieren weil unser Sauger nur ein map verwaltet.

Viele Grüße

Stephan


Schau mal hier, ich bin auch dabei ein bisschen mit ftui tablet zu spielen https://forum.fhem.de/index.php/topic,118099.msg1125851.html#msg1125851
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 28 Januar 2021, 02:48:36
Danke @Stelaku , alles verstanden.

Mir ist in dem Zusammenhang eine weitere böse Falle aufgefallen: Der Roboter geht offenbar nach einiger Zeit schlafen, in der Bedienungsanleitung steht sinngemäß, dass man ihn dann neu anschlaten muss. Ein Reboot ist dafür übrigens nicht erforderlich, ein set reconnect erledigt das.

Die böse Falle ist nun aber:
In diesem -nennen wir ihn Schlafmodus- vergisst er die für ihn zuständigen SET-Befehle. Da stehen dann ganz andere im Menü. (Eine Lösung wäre, vor jedem Betrieb ein 'set reconnect' zu senden.

Stephan, hoffentlich spielst Du mit der Beta der Version 3 rum; die 2 wird wie gesagt nicht weiterentwickelt. Bzgl. der Roboter-Darstellung in FTU gibt es hoffentlich einen besseren Weg: Das Map-Widget. Ich hatte @eki angesprochen und er will sich das mal ansehen.
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: MadMax am 31 Januar 2021, 16:06:47
Hallo Zusammen,

Zitat
Ich sehe gerade, dass das einen üblen Seiteneffekt hat: Der macht das wirklich alle 30sec - und auch dann, wenn er tagelang in der Ladestation steht. Ich weiß nicht, ob das wirklich schlau ist.

Zur Diskussion gestellt - ich sehe zwei Möglichkeiten:
1) Nutzer muss halt auf 30 umstellen, wenn der Roboter saugt, danach zurück auf 300.
2) Das macht das Modul.

Wo soll das Problem sein Tagelang alle 30s daten vom Roboter zu holen?

Zitat
1) Roboter-Reboot - initiiert von FHEM:
Siehst Du da einen Ansatz?
Mein Roboter ist immer im Standby, wenn du den am Gerät ausschaltest gibt es keine Möglichkeit den über fehm wieder einzuschalten.

Zitat
2) Behältererkennung:
Siehst Du einen Ansatz für die Erkennung des eingesetzten Behälters?

Es ist ja so:
Der Roboter weiß genau, welcher der drei Behälter eingesetzt ist. Die nette Damenstimme sagt mir das ja immer. Und die weiß auch, wenn kein Behälter eingesetzt ist - sagt sie auch. (Reading box_type?)

Das würde das ganz neue Automatisierungsmöglichkeiten ergeben:
Den ganzen Zinnober bei cleaning_mode und Saugstärke[¹] und water_box_mode könnte das Modul übernehmen. Oder habe ich einen Denkfehler und der Roboter macht das schon selbst?[²]

Der Eingesetzte Behäter wird doch schon lange erkannt und auch angezeigt.
box_type   dust

Die Automatisierungsmöglichkeiten das der cleaning_mode umgestellt wird oder was meinst du?
Da habe ich vor umzusetzen, wenn da Bedarf besteht kann ich das zeitnahe erledigen.

Zitat
3) [hier steht noch nichts]

[¹] Hast Du die Saugstärke (u/i SET) grad versehentlich wegprogrammiert?
[²] Ich weiß: Tausend tolle Ideen und an Dir bleibt das Coding hängen ... Ich sage es nochmals und hiermit sehr deutlich: Ohne Dich, ohne Deine selbstlose Arbeit hätte ich jetzt einen Roboter, der mit einem anderen Modul grad so zum starten und stoppen zu bewegen wäre: Ich bin Dir unendlich dankbar!

Wo steht noch nix?

Schau mal unten in Fhem bei Device specific help, hier sind schon einige readings und so erklärt.

So, weiter im Text, das Problem mit dem clean_point und clean_area konnte ich noch immer nicht beheben, es gab eine neue russische app aber auch die macht da nix anderes oder lässt mich das Problem erkennen.

Der Roboter geht kurz in den Modus das er reinigt und danach in stanby, aber ich schicke den gleichen Befehl wie die App, das ist mir noch ein Rätzel.

Die Dateim im Anhang enthält kleine Optimirungen aber keine großen Verbesserungen.

Gruß
Max

Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: MadMax am 31 Januar 2021, 17:13:51
Hallo Zusammen,


ich habe den Automatisierungswunsch mal umgesetzt.

es sind neue Attribute aktiv.

auto_mopmove:on,0ff
auto_mop:on,off
auto_vacuum_mop:on,off
auto_vacuum:on,off

Wenn diese auf on gesetzt sind, schaltet das Modul automatisch auf den entsprechenden Modus um wenn der Behälter und der Mop installiert sind.

Gruß
Max
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: MadMax am 31 Januar 2021, 17:50:55
Sorry, hier die müsste jetzt funktionieren.
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: Stelaku am 31 Januar 2021, 18:04:14
Hallo Max

Kannste Gedancken lesen wollte gerade schreiben das die Version aus dem vorherigen post nicht automatisch den cleaning_mode ändert.

Die Version jetzt funktioniertn klasse mit der Automatischen Zuordnung der eingesetzten Behälter und den dazugehörigen cleaning_mode.

Vielen dank für Deine Bemühungen .

Viele Grüsse

Stephan
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 01 Februar 2021, 03:47:26
Zitat von: MadMax am 31 Januar 2021, 16:06:47
Wo soll das Problem sein Tagelang alle 30s daten vom Roboter zu holen?

Der saut mir im standby die Logs voll. Aber im Grunde hast Du recht - das ist nun das Unwichtigste. Lass es so wie es ist.

Zitat von: MadMax am 31 Januar 2021, 16:06:47
Mein Roboter ist immer im Standby, wenn du den am Gerät ausschaltest gibt es keine Möglichkeit den über fehm wieder einzuschalten.

Folgende Beobachtung:
Wenn Putzi zwei Tage in der Ladestation steht, interessiert den (bzw. FHEM) nicht mehr, dass er Putzi ist. Ich kann den zwar via FHEM starten, aber es kommen keine Readings. Und der set von sets (welch schöne Formulierung) ist dann wieder der für die "normalen" Saugroboter. Das liegt offenbar an der im Handbuch beschriebenen Besonderheit, dass Putzi nach bestimmter Zeit (ein Tag?) intern irgendwas abschaltet. Daher meine Idee mit dem erzwungenen Reboot.
Aber da habe ich inzwischen gefunden, dass ein via FHEM ausgelöstes "set reconnect" das Problem löst: Das kommt an und alles ist danach gut.
Die Frage ist, ob das Modul das künftig macht - oder jeder Nutzer. Ok, das ist ein Luxusproblem.

Zitat von: MadMax am 31 Januar 2021, 16:06:47
Der Eingesetzte Behäter wird doch schon lange erkannt und auch angezeigt.
box_type   dust
Die Automatisierungsmöglichkeiten das der cleaning_mode umgestellt wird oder was meinst du?
Da habe ich vor umzusetzen, wenn da Bedarf besteht kann ich das zeitnahe erledigen.

Dazu unten.

Zitat von: MadMax am 31 Januar 2021, 16:06:47
Wo steht noch nix?

Kommunikationsfehler. Das war ein Platzhalter in meinem Post. Ich dachte beim Schreiben "Da fällt Dir noch was ein, was war das nur?". Und dann fiel mir nachträglich doch nichts mehr ein ...

Zitat von: MadMax am 31 Januar 2021, 16:06:47
Schau mal unten in Fhem bei Device specific help, hier sind schon einige readings und so erklärt.

Ähhmmmm.

Zitat von: MadMax am 31 Januar 2021, 17:13:51
ich habe den Automatisierungswunsch mal umgesetzt.
es sind neue Attribute aktiv.
auto_mopmove:on,0ff
auto_mop:on,off
auto_vacuum_mop:on,off
auto_vacuum:on,off
Wenn diese auf on gesetzt sind, schaltet das Modul automatisch auf den entsprechenden Modus um wenn der Behälter und der Mop installiert sind.

Maschin kaputt.

Also die Optionen sind schon da - werden aber nicht umgesetzt. Oder ich verstehe das falsch, habe eine falsche Erwartungshaltung.

Also bei "auto_mopmove:on" würde ich ja nun erwarten, dass dieser ruckelnde Wischmodus genau dann angeschaltet ist, wenn der Kombibehälter bzw. der Wasserbehälter eingesetzt ist. Geht aber nicht, also bei mir nicht. (Und so fort.)
    (Versionsvergleich: Dateilänge 274.378 Byte).

@Stelaku
Geht das bei Dir?
Also in meinen Readings ändert sich da nichts. Selbst mit "get status" nicht. Habe ich das falsche magische Zaubersalz?

Dazu gleich ein Erweiterungswunsch:
Sofern Saugerbehälter oder Kombibehälter eingesetzt ist, möchte ich mir eine Option für suction_grade wünschen: Vermutlich gibt es Vorlieben; der eine saugt täglich und hätte als Standard gern "quiet", der andere nur einmal in 14 Tagen und hätte als Standard gern "turbo". Ich würde mir zum Beispiel gern "turbo" als Standard einstellen und nur notfalls von Hand umstellen wollen.

Bitte nicht falsch verstehen: Ich finde toll, dass Du das überhaupt machst. Und das Du das so super machst. Danke!
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: Stelaku am 01 Februar 2021, 06:52:54
Hallo curt

ZitatDer saut mir im standby die Logs voll. Aber im Grunde hast Du recht - das ist nun das Unwichtigste. Lass es so wie es ist.

Ich habe für dieses Problem einfach event-on-change-reading .* gesetzt.

Ich habe bei mir alle attr auf on gestellt.
attr Martha auto_mop on
attr Martha auto_mopmove on
attr Martha auto_vacuum on
attr Martha auto_vacuum_mop on


Und wenn ich jetzt den Wassertank und den Wischer einbaue wird das Reading mop_move auf on gesetzt.
Und nehme ich jetzt den normalen Saugerbehälter (wichtig der Wischer muss auch ausgebaut werden).
geht das Reading mop_move auf off. Funktioniert bei mir ohne Probleme.
Ich habe die Version mit der grösse 274.378 Byte.

ZitatDazu gleich ein Erweiterungswunsch:
Sofern Saugerbehälter oder Kombibehälter eingesetzt ist, möchte ich mir eine Option für suction_grade wünschen: Vermutlich gibt es Vorlieben; der eine saugt täglich und hätte als Standard gern "quiet", der andere nur einmal in 14 Tagen und hätte als Standard gern "turbo". Ich würde mir zum Beispiel gern "turbo" als Standard einstellen und nur notfalls von Hand umstellen wollen.

Habe ich jetzt noch nicht getestet, aber ich meine nebenbei beobachtet zu haben das der Wert für suction_grade einmal gesetzt nicht mehr ohne ein manuelles zutun verändert wird.

Viele Grüsse

Stephan

Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 01 Februar 2021, 07:07:50
Guten Morgen,

Zitat von: Stelaku am 01 Februar 2021, 06:52:54
Ich habe bei mir alle attr auf on gestellt.

Ich auch.

Zitat von: Stelaku am 01 Februar 2021, 06:52:54
Und wenn ich jetzt den Wassertank und den Wischer einbaue wird das Reading mop_move auf on gesetzt.

Bei mir nicht.

Zitat von: Stelaku am 01 Februar 2021, 06:52:54
(wichtig der Wischer muss auch ausgebaut werden)

Waaaaa - der Mops selbst war bei mir selbst nie im Spiel. Ich baute nur alle drei Behälter nacheinander ein. Sollte es etwa am Mop liegen? Ok, ich teste bei nächster Gelegenheit.

Zitat von: Stelaku am 01 Februar 2021, 06:52:54
Ich habe die Version mit der grösse 274.378 Byte.

Identisch also.

Zitat von: Stelaku am 01 Februar 2021, 06:52:54
Habe ich jetzt noch nicht getestet, aber ich meine nebenbei beobachtet zu haben das der Wert für suction_grade einmal gesetzt nicht mehr ohne ein manuelles zutun verändert wird.

Mein Erweiterungsvorschlag setzt genau darauf auf!
Also ich kann (falls @MadMax meinen Vorschlag übernimmt) ein attr für den gewollten Standard setzen. Wenn mir dann mal in den Kopf kommt, dass heute leise gesaugt werden soll, dann muss ich das für diesen Arbeitsvorgang sebst vermittels SET ansagen. Wenn der Reinigungsvorgang beendet ist, fällt suction_grade wieder auf den via attr vorgegebenen Standard zurück.
Also das wäre ein Traum.
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: Stelaku am 03 Februar 2021, 11:34:56
Hallo alle zusammen

Es hat sich was getan unter https://forum.fhem.de/index.php/topic,91781.msg1128665.html#msg1128665 gibt es jetzte eine wie ich finde schöne Lösung für die Visualisierung
Der Karte mit live Positionsmeldung des Saugers.

Viele Grüsse

Stephan
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: MadMax am 06 Februar 2021, 17:18:07
Hallo Zusammen,

Zitat
Zitat von: Stelaku am 01 Februar 2021, 06:52:54

    Und wenn ich jetzt den Wassertank und den Wischer einbaue wird das Reading mop_move auf on gesetzt.


Bei mir nicht.

Zitat von: Stelaku am 01 Februar 2021, 06:52:54

    (wichtig der Wischer muss auch ausgebaut werden)


Waaaaa - der Mops selbst war bei mir selbst nie im Spiel. Ich baute nur alle drei Behälter nacheinander ein. Sollte es etwa am Mop liegen? Ok, ich teste bei nächster Gelegenheit.

Zitat von: Stelaku am 01 Februar 2021, 06:52:54

    Ich habe die Version mit der grösse 274.378 Byte.


Identisch also.

Ja der Mop muss installiert sein das das umgestellt wird, sonst kannst du ja auch nicht wischen ;)

Zitat
Mein Erweiterungsvorschlag setzt genau darauf auf!
Also ich kann (falls @MadMax meinen Vorschlag übernimmt) ein attr für den gewollten Standard setzen. Wenn mir dann mal in den Kopf kommt, dass heute leise gesaugt werden soll, dann muss ich das für diesen Arbeitsvorgang sebst vermittels SET ansagen. Wenn der Reinigungsvorgang beendet ist, fällt suction_grade wieder auf den via attr vorgegebenen Standard zurück.
Also das wäre ein Traum.

Dein Traum wird Wahrheit ;)

es gibt vier neue Attribute.
auto_suction_grade_vacuum
auto_suction_grade_vacuum_mop
auto_water_grade_vacuum_mop
auto_water_grade_mop

Beschreibung ist im Modul hinterlegt aber ich denke die sind selbsterklärend.

Zitat
Hallo alle zusammen

Es hat sich was getan unter https://forum.fhem.de/index.php/topic,91781.msg1128665.html#msg1128665 gibt es jetzte eine wie ich finde schöne Lösung für die Visualisierung
Der Karte mit live Positionsmeldung des Saugers.

Viele Grüsse

Stephan

Kannst du dazu bitte eine kurze Zusammenfassung schreiben oder die Definition?

Das Problem mit den Zonen und punktuellen Reinigung das der Roboter nach dem Start in Standby geht habe ich noch nicht gelöst, ich habe hierzu von openHAB mal quellcode angeschaut, dort werden auch diese befehle gesendet, bin aber an dem Problem dran.

Gruß
Max
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: Stelaku am 06 Februar 2021, 17:33:57
Hallo Max

unter den o.g. link oder auch hier #145  (https://forum.fhem.de/index.php/topic,91781.msg1128665.html#msg1128665) habe ich eine kleine Anleitung geschrieben.

Diese werde ich so gut es geht immer wieder aktuallisieren wenn sich dort etwas ändert.

Viele Grüsse

Stephan
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: mthome am 11 Februar 2021, 10:33:21
Hallo zusammen,

zuerst nochmals vielen vielen Dank an @MadMax. Das Modul läuft einfach klasse.

Eine Frage habe ich jedoch noch: Gibt es Pläne, dieses Modul und das original 72_XiaomiDevice wieder zusammenzuführen? Aktuell habe ich es einfach vom Update ausgeschlossen.

Viele Grüße,
Michael
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 14 Februar 2021, 19:21:58
@mthome
Ich gehe davon aus, dass sich @MadMax und @Markus M. gelegentlich darüber verständigen. Es war jedenfalls so angedacht.
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 31 März 2021, 05:23:54
Da die Änderungen von @MadMax (großer Dank!) nun wohl erstmal stabil sind:

MadMax, darf ich Dich bitten, Dich mit @Markus M. zu verständigen, wie die Änderungen für das Modell viomi.vacuum.v8 in das eigentliche Modul 72_XiaomiDevice zu integrieren sind?

Das wäre sehr schön. Danke!
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: curt am 23 April 2021, 06:37:25
Ich möchte das Thema in Erinnerung bringen @MadMax @Markus M.
Titel: Antw:[72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: JensS am 31 Juli 2021, 20:08:13
Seit kurzem habe ich einen Viomi S9.
Dieser scheint komplett anders abgefragt als der S8.
Die Definition sowie "get device_info" funktionieren schon mal. Der Rest niccht.
Habt ihr einen Tipp, wie die neuen Befehlssätze analysiert und eingebunden werden können?

Gruß Jens

p.s. Mit miiocli konnte ich dem Staubi einige Infos entlocken, kann diese aber (noch) nicht zuordnen. 'piid': 2, 'siid': 2, 'value': 0
'piid': 4, 'siid': 2, 'value': 0
'piid': 11, 'siid': 2, 'value': 1
'piid': 12, 'siid': 2, 'value': 3
'piid': 13, 'siid': 2, 'value': 0
'piid': 15, 'siid': 2, 'value': 11
'piid': 16, 'siid': 2, 'value': 8
'piid': 17, 'siid': 2, 'value': 0
'piid': 19, 'siid': 2, 'value': 1
'piid': 1, 'siid': 3, 'value': 100
'piid': 1, 'siid': 4, 'value': 0
'piid': 3, 'siid': 4, 'value': 1
'piid': 6, 'siid': 4, 'value': 1
'piid': 8, 'siid': 4, 'value': 98
'piid': 9, 'siid': 4, 'value': 177
'piid': 10, 'siid': 4, 'value': 99
'piid': 11, 'siid': 4, 'value': 357
'piid': 12, 'siid': 4, 'value': 98
'piid': 13, 'siid': 4, 'value': 177
'piid': 14, 'siid': 4, 'value': 100
'piid': 15, 'siid': 4, 'value': 180
'piid': 17, 'siid': 4, 'value': 1
'piid': 18, 'siid': 4, 'value': 2
'piid': 23, 'siid': 4, 'value': 0
'piid': 24, 'siid': 4, 'value': -7200
'piid': 25, 'siid': 4, 'value': 0
'piid': 26, 'siid': 4, 'value': 690
'piid': 27, 'siid': 4, 'value': 8
'piid': 28, 'siid': 4, 'value': '00000'
'piid': 29, 'siid': 4, 'value': 0
'piid': 30, 'siid': 4, 'value': 1
'piid': 31, 'siid': 4, 'value': 'de'
'piid': 32, 'siid': 4, 'value': 1627727920
'piid': 33, 'siid': 4, 'value': 'curMapUrl'
'piid': 34, 'siid': 4, 'value': 1627733086
'piid': 39, 'siid': 4, 'value': 1
'piid': 40, 'siid': 4, 'value': 0
'piid': 41, 'siid': 4, 'value': 1
'piid': 42, 'siid': 4, 'value': 'error'
'piid': 15, 'siid': 5, 'value': 0
'piid': 16, 'siid': 5, 'value': 22
'piid': 17, 'siid': 5, 'value': 0
'piid': 18, 'siid': 5, 'value': 6
'piid': 19, 'siid': 5, 'value': 0
'piid': 20, 'siid': 5, 'value': 0
'piid': 21, 'siid': 5, 'value': 0
'piid': 22, 'siid': 5, 'value': ''
'piid': 1, 'siid': 6, 'value': '0,0'
'piid': 1, 'siid': 7, 'value': 1
'piid': 2, 'siid': 7, 'value': 1627727920
'piid': 4, 'siid': 7, 'value': 'error'
'piid': 10, 'siid': 7, 'value': '0123'
'piid': 11, 'siid': 7, 'value': '[["2021/08/01/6480218025/329433889_225730220.bkmap","2021/08/01/6480218025/329433889_225729918.record",1627727920,"Karte1",1]]'
'piid': 13, 'siid': 7, 'value': '0123'
'piid': 14, 'siid': 7, 'value': 0
'piid': 15, 'siid': 7, 'value': '0123'
'piid': 16, 'siid': 7, 'value': 0
'piid': 3, 'siid': 8, 'value': 'error'
'piid': 4, 'siid': 8, 'value': 'girl_de'
'piid': 5, 'siid': 8, 'value': 0
'piid': 6, 'siid': 8, 'value': 100
Titel: Aw: [72_XiaomiDevice] Nur Modell viomi.vacuum.v8
Beitrag von: RappaSan am 20 April 2023, 13:02:20
Länger nix mehr los hier, Zeit für eine Frage:
Funktioniert diese Version auch mit einem model roborock.vacuum.a62?
Oder müsste dafür noch etwas geändert werden?
Wäre interessant wegen der möglichen Kartendarstellung.

Ich beantworte mal selbst nach einem Blindtest:
Es klappt nicht. :(
Werde nicht schlau aus den Daten aus:
https://miot-spec.org/miot-spec-v2/instance?type=urn:miot-spec-v2:device:vacuum:0000A006:roborock-a62:1
bzw.
https://miot-spec.org/miot-spec-v2/instance?type=urn:miot-spec-v2:device:vacuum:0000A006:roborock-a62v5:1
Was macht man damit?