NEWS
Test Adapter Mihome-vacuum v3.1.6 Next Generarition
-
hmm ich habe gerade mit den Räumen bisschen rumgespielt. Ich bekomme nur IDs angezeigt keine Namen.
Wie finde ich nun raus was welcher Raum ist? So weiss ich ja welcher Mapindex dann der Raum ist und dann den Staubsauger zum Mapindex schicken.
Leider kann man wohl auch nicht erkennen in welchem Raum er gerade ist? Ich bekomme in dem Räumen leider keine änderungen wenn er sich darin befindet.@chrisxy da hilft nur den Raum einmal mit dem Button roomclean reinigen zu lassen, dann siehst du, welcher das ist..
oder hat jemand ne andere Idee ??? -
@ilovegym
Dann war die Überlegung nicht ganz falsch. Aber nächstes Problem. Ich bekomme die Daten aus Redis nicht raus.In den Beispielen in der Dokumentation (https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#readfile) würde es wie folgt aussehen:
readFile('mihome-vacuum.admin', '/actualMap_0.png', function (error, data) { console.log(data.substring(0, 50)); });oder
readFile('/../mihome-vacuum.admin/actualMap_0.png', function (error) { console.log(data.substring(0, 50)); });Bei beiden Abfragen kommt die Meldung
TypeError: Cannot read properties of undefined (reading 'substring')zusätzlich stürzt der komplette javascript-Adapter ab. Das Beispiel 1 aus der Dokumentation funktioniert. Das Beispiel zwei nicht.
Hab jemand das schon hinbekommen und kann mir mitteilen wo ich den Fehler habe?
-
@chrisxy da hilft nur den Raum einmal mit dem Button roomclean reinigen zu lassen, dann siehst du, welcher das ist..
oder hat jemand ne andere Idee ???@ilovegym ja nun hat es geklappt ich musste jeweils den Staubsauger zur Ladestation schicken. Sonst hat er es nicht angekommen. Noch ein Tipp? Wie kann ich nun per Control eine ID angeben? Geht das? Also Mapindex 12 soll er reinigen? Oder muss ich dies zwingend über den room.71284738.clean.. gehen ?
Plan war es eine Dropdown im VIS oder ähnliches zu machen wo man den Raum nur auswählen muss. Notlösung jeder Raum ein Schalter.
Den Status in welchem Raum er ist kann man nicht sehen? Außer die MAP
-
@ilovegym ja nun hat es geklappt ich musste jeweils den Staubsauger zur Ladestation schicken. Sonst hat er es nicht angekommen. Noch ein Tipp? Wie kann ich nun per Control eine ID angeben? Geht das? Also Mapindex 12 soll er reinigen? Oder muss ich dies zwingend über den room.71284738.clean.. gehen ?
Plan war es eine Dropdown im VIS oder ähnliches zu machen wo man den Raum nur auswählen muss. Notlösung jeder Raum ein Schalter.
Den Status in welchem Raum er ist kann man nicht sehen? Außer die MAP
@chrisxy mit den ID's hab ich noch nie gearbeitet .. k.a.
Ich hab das gar nicht in der VIS drin, nur die Raeume mit dem iot-Adapter verknuepft, Alexa reinige Wohnzimmer, und fertich.. mehr brauchen wir hier nicht.. der Rest geht automatisch, wenn keiner Zuhause ist mit den 4 Saugern..
@tazdevil20
was hast du denn vor?Ich lasse mir nur Statusmeldungen und die Map aufs Handy schicken per SynoChat..
Und wenn der Staubbehaelter voll ist, fahren se zum Muelleimer.. :D dazu hab ich ein Script, dass zu jedem vollendeten Saugvorgang einen Zaehler hochsetzt, bis der Behaelter voll ist ( hab ich selbst rausklabustert wieviel das bei welchem Sauger ist).. Wenn der Behaelter geleert ist, muss ich den Datenpunkt dann wieder manuell auf 0% setzen, was ich zu 99% vergesse und er beim naechsten mal wieder zum Muelleimer faehrt.. er vergisst ja nix..
-
@ilovegym ja nun hat es geklappt ich musste jeweils den Staubsauger zur Ladestation schicken. Sonst hat er es nicht angekommen. Noch ein Tipp? Wie kann ich nun per Control eine ID angeben? Geht das? Also Mapindex 12 soll er reinigen? Oder muss ich dies zwingend über den room.71284738.clean.. gehen ?
Plan war es eine Dropdown im VIS oder ähnliches zu machen wo man den Raum nur auswählen muss. Notlösung jeder Raum ein Schalter.
Den Status in welchem Raum er ist kann man nicht sehen? Außer die MAP
@chrisxy
In vis so:

und mit einem Script:
// Mihome - Staubsauger var request = require('request'), logging = true, Auto_Sprache = 'javascript.0.System.Automatik.Sprachausgabe'; var ID_Wz = "2803", ID_Kueche = "2831", ID_Buero = "2832", ID_Flur = "5081", ID_Sz = "2868", ID_Bad = "2870", ID_GaesteWC = "2902", ID_Arbeitsz = "3924" // Räume: Erdgeschoss Kellergeschoss // 451001032803 Wohnzimmer 451001035078 ??? // 451001032831 Küche 451001035079 ??? // 451001032832 Büro 451001035080 ??? // 451001035081 Flur // 451001032868 Schlafzimmer // 451001032870 Bad // 451001032902 Gäste WC // 451001033924 Arbeitszimmer // Zonen - Reinigung ---------------------------------------------------------------------------------------------- on({id: "javascript.0.Geräte.Staubsauger.Taster_Zone", change: "ne", val:true}, function() { // Taster wurde gedrückt var Zone = []; setState('mihome-vacuum.0.cleanmap.actualMap', 0); // 0 = Erdgeschoss, 1 = Kellergeschoss setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Arbeitszimmer").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Arbeitsz + '.roomClean', true); Zone.push("Arbeitszimmer"); }}, 500); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Bad").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Bad + '.roomClean', true); Zone.push("Bad"); }}, 1000); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Büro").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Buero + '.roomClean', true); Zone.push("Büro"); }}, 1500); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Flur").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Flur + '.roomClean', true); Zone.push("Flur"); }}, 2000); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_GästeWC").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_GaesteWC + '.roomClean', true); Zone.push("Gäste WC"); }}, 2500); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Küche").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Kueche + '.roomClean', true); Zone.push("Küche"); }}, 3000); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Schlafzimmer").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Sz + '.roomClean', true); Zone.push("Schlafzimmer"); }}, 3500); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Wohnzimmer").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Wz + '.roomClean', true); Zone.push("Wohnzimmer"); }}, 4000); setTimeout(function() { if (Zone.length == 0) { if (Sprache === true || Sprache === 1) { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Gong").val); setState('sayit.3.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/tos-computer-03.mp3'); setTimeout(function() { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Text").val); }, 2800); setTimeout(function() { setState('sayit.4.tts.text', "Achtung, zur Zonenreinigung muss mindestens 1 Raum angeklickt sein!")}, 3000); } log ("Zonenreinigung: Es wurde kein Raum angeklickt!"); } else { var Sprache = getState(Auto_Sprache).val; var Str_Zone = Zone.join(', '); if (Sprache === true || Sprache === 1) { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Gong").val); setState('sayit.3.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/tos-computer-03.mp3'); setTimeout(function() { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Text").val); }, 2800); setTimeout(function() { setState('sayit.4.tts.text', "ok, Die Zonenreinigung wird im " + Str_Zone + " ausgeführt!")}, 2000); } log ("Zonenreinigung wird im " + Str_Zone + " durchgeführt!"); } }, 5000); }); // Fahre zum Mülleimer ---------------------------------------------------------------------------------------------- on({id: "javascript.0.Geräte.Staubsauger.Taster_Muell", change: "ne", val:true}, function() { // Taster wurde gedrückt var Sprache = getState(Auto_Sprache).val; if (Sprache === true || Sprache === 1) { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Gong").val); setState('sayit.3.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/tos-computer-03.mp3'); setTimeout(function() { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Text").val); }, 2800); setTimeout(function() { setState('sayit.4.tts.text', "ok, Der Staubsauger fährt zum Mülleimer!")}, 2000); } //setState('mihome-vacuum.0.control.fan_power', 104); // Beschleunige die Fahrt auf 100% setStateDelayed('mihome-vacuum.0.control.goTo', "17500,29300", 3000); //setStateDelayed('mihome-vacuum.0.control.X_send_command','app_goto_target; [17350,22600]', 3000); //setStateDelayed('mihome-vacuum.0.control.fan_power', 102, 300000); // nach 5 Minuten die Power wieder auf 50% }); -
@chrisxy
In vis so:

und mit einem Script:
// Mihome - Staubsauger var request = require('request'), logging = true, Auto_Sprache = 'javascript.0.System.Automatik.Sprachausgabe'; var ID_Wz = "2803", ID_Kueche = "2831", ID_Buero = "2832", ID_Flur = "5081", ID_Sz = "2868", ID_Bad = "2870", ID_GaesteWC = "2902", ID_Arbeitsz = "3924" // Räume: Erdgeschoss Kellergeschoss // 451001032803 Wohnzimmer 451001035078 ??? // 451001032831 Küche 451001035079 ??? // 451001032832 Büro 451001035080 ??? // 451001035081 Flur // 451001032868 Schlafzimmer // 451001032870 Bad // 451001032902 Gäste WC // 451001033924 Arbeitszimmer // Zonen - Reinigung ---------------------------------------------------------------------------------------------- on({id: "javascript.0.Geräte.Staubsauger.Taster_Zone", change: "ne", val:true}, function() { // Taster wurde gedrückt var Zone = []; setState('mihome-vacuum.0.cleanmap.actualMap', 0); // 0 = Erdgeschoss, 1 = Kellergeschoss setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Arbeitszimmer").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Arbeitsz + '.roomClean', true); Zone.push("Arbeitszimmer"); }}, 500); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Bad").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Bad + '.roomClean', true); Zone.push("Bad"); }}, 1000); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Büro").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Buero + '.roomClean', true); Zone.push("Büro"); }}, 1500); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Flur").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Flur + '.roomClean', true); Zone.push("Flur"); }}, 2000); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_GästeWC").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_GaesteWC + '.roomClean', true); Zone.push("Gäste WC"); }}, 2500); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Küche").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Kueche + '.roomClean', true); Zone.push("Küche"); }}, 3000); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Schlafzimmer").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Sz + '.roomClean', true); Zone.push("Schlafzimmer"); }}, 3500); setTimeout(function() { if (getState("javascript.0.Geräte.Staubsauger.Zone_Wohnzimmer").val) { setState('mihome-vacuum.0.rooms.45100103' + ID_Wz + '.roomClean', true); Zone.push("Wohnzimmer"); }}, 4000); setTimeout(function() { if (Zone.length == 0) { if (Sprache === true || Sprache === 1) { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Gong").val); setState('sayit.3.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/tos-computer-03.mp3'); setTimeout(function() { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Text").val); }, 2800); setTimeout(function() { setState('sayit.4.tts.text', "Achtung, zur Zonenreinigung muss mindestens 1 Raum angeklickt sein!")}, 3000); } log ("Zonenreinigung: Es wurde kein Raum angeklickt!"); } else { var Sprache = getState(Auto_Sprache).val; var Str_Zone = Zone.join(', '); if (Sprache === true || Sprache === 1) { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Gong").val); setState('sayit.3.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/tos-computer-03.mp3'); setTimeout(function() { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Text").val); }, 2800); setTimeout(function() { setState('sayit.4.tts.text', "ok, Die Zonenreinigung wird im " + Str_Zone + " ausgeführt!")}, 2000); } log ("Zonenreinigung wird im " + Str_Zone + " durchgeführt!"); } }, 5000); }); // Fahre zum Mülleimer ---------------------------------------------------------------------------------------------- on({id: "javascript.0.Geräte.Staubsauger.Taster_Muell", change: "ne", val:true}, function() { // Taster wurde gedrückt var Sprache = getState(Auto_Sprache).val; if (Sprache === true || Sprache === 1) { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Gong").val); setState('sayit.3.tts.text', '/opt/iobroker/iobroker-data/files/vis.0/mp3/tos-computer-03.mp3'); setTimeout(function() { Tablet_Lautstaerke(getState("javascript.0.System.Sonstige.Laut_Text").val); }, 2800); setTimeout(function() { setState('sayit.4.tts.text', "ok, Der Staubsauger fährt zum Mülleimer!")}, 2000); } //setState('mihome-vacuum.0.control.fan_power', 104); // Beschleunige die Fahrt auf 100% setStateDelayed('mihome-vacuum.0.control.goTo', "17500,29300", 3000); //setStateDelayed('mihome-vacuum.0.control.X_send_command','app_goto_target; [17350,22600]', 3000); //setStateDelayed('mihome-vacuum.0.control.fan_power', 102, 300000); // nach 5 Minuten die Power wieder auf 50% }); -
warum machst du das aller per script? Du hast doch für jeden raum deine datenpunkte und kansst die starten, sauglevel einstelle usw. Dax fanze kannst du auch für eine zone machen, einfach addroom ancklicken ubd koordinaten eingeben
@dirkhe sagte in Test Adapter Mihome-vacuum v3.1.6 Next Generarition:
warum machst du das aller per script? Du hast doch für jeden raum deine datenpunkte und kansst die starten, sauglevel einstelle usw. Dax fanze kannst du auch für eine zone machen, einfach addroom ancklicken ubd koordinaten eingeben
addroom ging bei mir nicht (oder ich hab es nicht hinbekommen).
Deshalb hab ich mir ein Script geschrieben. -
@ilovegym
Habe es aufgegeben mit Redis das ganze zu lösen. Schlussendlich habe ich die Funktion wie in der Doku (umwandlung in eine jpg-Datei im Filesystem) eingebaut:function send(text) { request.get({url: 'http://iobroker.fritz.box:8082/mihome-vacuum.admin/actualMap_0.png', encoding: 'binary'}, function (err, response, body) { fs.writeFile("/tmp/roborock.jpg", body, 'binary', function(err) { if (err) { console.error(err); } else { sendTo('telegram.0', { text: '/tmp/roborock.jpg', caption: text }); } }); }); }Zumindest funktioniert es wieder so wie ich wollte.
Vielen Dank an alle für die Hinweise und Hilfe. -
@ilovegym
Habe es aufgegeben mit Redis das ganze zu lösen. Schlussendlich habe ich die Funktion wie in der Doku (umwandlung in eine jpg-Datei im Filesystem) eingebaut:function send(text) { request.get({url: 'http://iobroker.fritz.box:8082/mihome-vacuum.admin/actualMap_0.png', encoding: 'binary'}, function (err, response, body) { fs.writeFile("/tmp/roborock.jpg", body, 'binary', function(err) { if (err) { console.error(err); } else { sendTo('telegram.0', { text: '/tmp/roborock.jpg', caption: text }); } }); }); }Zumindest funktioniert es wieder so wie ich wollte.
Vielen Dank an alle für die Hinweise und Hilfe.@tazdevil20 ja, entweder so, dann kannst du dir das Bild auch weiter aufs NAS oder so kopieren, oder ueber den Weg ins iobroker-filesystem-Redis, dann musst du es erst holen mit request dann mit writefile wohinschreiben und dann kannst du es dir fuer Telegram wieder holen und senden.. da ist deine jetzige Methode einfacher, da Telegram das direkte versenden von files supported..
-
@diginix ich kann versuchen, mir das mal anzuschauen, aber auch da brauche ich ein debuglog. Ist die Frage, ob er eingeloggt ist (in der cloud). Es wurde vor einiger zeit die kommunikation verschlüsselt, ist aber schon seit feb. 2022 drin.
@dirkhe Eingeloggt muss er sein zumindest immer dann wenn Kartenupdates kommen. Es klemmt ja nicht permanent sondern meist 2-x minuten. Zum Teil aber eben auch >10min.
Wird nur die Karte selbst vom Cloudserver geholt und alles andere wie Zeit, Fläche usw. direkt lokal vom Sauger? -
@dirkhe Ja, das ist klar. Ging eher um die restlichen Werte. Aber da ja die lokale IP mit Token im Adapter stehen, wird das sicher auch alles direkt lokal geholt.
Die neuen imho zu dunklen Map Farben für Sauger ohne Teppicherkennung oder Wischfunktion habe ich in der mapCreator.js Zeile 18-23 wieder auf die aus v3.6.0 gestellt. Bis auf die falschen zu früh geleerten room.states ist die 3.8.4 ansonsten nun wieder brauchbar. ;-)
-
@dirkhe Ja, das ist klar. Ging eher um die restlichen Werte. Aber da ja die lokale IP mit Token im Adapter stehen, wird das sicher auch alles direkt lokal geholt.
Die neuen imho zu dunklen Map Farben für Sauger ohne Teppicherkennung oder Wischfunktion habe ich in der mapCreator.js Zeile 18-23 wieder auf die aus v3.6.0 gestellt. Bis auf die falschen zu früh geleerten room.states ist die 3.8.4 ansonsten nun wieder brauchbar. ;-)
-
@diginix ich denke die farben sind auch in der app geändert, oder? Das könnte man aber konfigurierbar machen, entweder alle werte oder sowas wie farbthemes
@dirkhe Nein, in der App sind sie bei mir immer gleich seit Jahren. Die Mapfarben des Adapters kommen aus ihm, nicht von Xiaomi. Vllt haben Sauger mit Teppicherkennung andere Farben für die Bereiche im Raum, in dem Teppich erkannt wurde. Aber das ist ja für Modelle ohne diese Funktion belanglos. Wäre also tatsächlich eine individualisierbare Sache für die Instanz.
-
@dirkhe Mit 3.8.4, die seit gestern 09:28 Uhr lief, hatte ich heute morgen wieder den Fall, dass aus unbekanntem Grund die CPU Last um 10% steigt.
Der Sauger war gestern zuletzt 20:30 Uhr unterwegs und stand seit dem im Dock. 11 Stunden später steigt die CPU Last spürbar an (Pfeil im Bild) und 10:30 Uhr habe ich die Instanz dann beendet und man sieht den deutlichen Abfall auf ein niedrigeres Niveau als zuvor wo die Instanz ruhig vor sich hinlief (blaue Linie). Die Instanz selbst braucht also klar etwas CPU (1-4%) wenn sie normal läuft. Aber was ab 07:30 Uhr im Adpater schief läuft, wäre interessant. Im Netzwerk steigt zu der Zeit auch der ausgehende Traffic deutlich an. Mit 3.6.0 ist das noch nie passiert.

-
@dirkhe Mit 3.8.4, die seit gestern 09:28 Uhr lief, hatte ich heute morgen wieder den Fall, dass aus unbekanntem Grund die CPU Last um 10% steigt.
Der Sauger war gestern zuletzt 20:30 Uhr unterwegs und stand seit dem im Dock. 11 Stunden später steigt die CPU Last spürbar an (Pfeil im Bild) und 10:30 Uhr habe ich die Instanz dann beendet und man sieht den deutlichen Abfall auf ein niedrigeres Niveau als zuvor wo die Instanz ruhig vor sich hinlief (blaue Linie). Die Instanz selbst braucht also klar etwas CPU (1-4%) wenn sie normal läuft. Aber was ab 07:30 Uhr im Adpater schief läuft, wäre interessant. Im Netzwerk steigt zu der Zeit auch der ausgehende Traffic deutlich an. Mit 3.6.0 ist das noch nie passiert.

-
@diginix ich habe den fehler gefunden, denke ich. siehe update kommentsr hier https://forum.iobroker.net/topic/59480/test-für-mihome-vacuum
-
@meistertr Erstmal super Arbeit die du leistest.
Eine Frage, seit heute bin ich im Besitz eines ROIDMI EVE Plus, der eine Untermarke von Xiaomi ist.
Man kann diesen Sauger auch ganz normal über die MiHomeApp steuern.Daher meine Frage, kannst du diesen auch einbinden?
Wenn ja was benötigst du, um dir unter die Arme zu greifen. (Achtung Anfänger) ?Habe bereits deinen 3.0.4 Adapter installiert. Folgendes spuckt er im Debug aus:
mihome-vacuum.0 2021-04-14 19:54:03.212 debug (15781) Receive Timeout<<< mihome-vacuum.0 2021-04-14 19:54:03.111 debug (15781) Receive Timeout<<< mihome-vacuum.0 2021-04-14 19:54:03.006 debug (15781) Receive Timeout<<< mihome-vacuum.0 2021-04-14 19:54:02.904 debug (15781) Receive Timeout<<< mihome-vacuum.0 2021-04-14 19:54:02.713 debug (15781) Receive Timeout<<< mihome-vacuum.0 2021-04-14 19:54:01.317 warn (15781) Model roidmi.vacuum.v60 not supported! Please open issue on git: https://github.com/iobroker-community-adapters/ioBroker.mihome-vacuum/issues mihome-vacuum.0 2021-04-14 19:54:01.317 debug (15781) DeviceModel selected to: roidmi.vacuum.v60 mihome-vacuum.0 2021-04-14 19:54:01.316 warn (15781) No Answer for DeviceModel use model from Config mihome-vacuum.0 2021-04-14 19:54:01.316 warn (15781) No Answer for DeviceModel use old one mihome-vacuum.0 2021-04-14 19:54:01.316 warn (15781) YOUR DEVICE IS CONNECTED BUT DID NOT ANSWER CONNECTION CAN TAKE UP TO 10 MINUTES PLESASE WAIT AND DON`T TRUN THE ADAPTER OFF mihome-vacuum.0 2021-04-14 19:54:01.315 debug (15781) Get Device data..4 mihome-vacuum.0 2021-04-14 19:54:01.212 debug (15781) Message= {"id":5,"method":"miIO.info"} mihome-vacuum.0 2021-04-14 19:54:01.211 debug (15781) Get Device data..3 mihome-vacuum.0 2021-04-14 19:54:01.109 debug (15781) Message= {"id":4,"method":"miIO.info"} mihome-vacuum.0 2021-04-14 19:54:01.108 debug (15781) Get Device data..2 mihome-vacuum.0 2021-04-14 19:54:01.005 debug (15781) Message= {"id":3,"method":"miIO.info"} mihome-vacuum.0 2021-04-14 19:54:01.005 debug (15781) Get Device data..1 mihome-vacuum.0 2021-04-14 19:54:00.901 debug (15781) Message= {"id":2,"method":"miIO.info"} mihome-vacuum.0 2021-04-14 19:54:00.901 debug (15781) Get Device data..0 mihome-vacuum.0 2021-04-14 19:54:00.710 debug (15781) Message= {"id":1,"method":"miIO.info"} mihome-vacuum.0 2021-04-14 19:54:00.709 debug (15781) GETMODELFROMAPI: objModel: {"val":"roidmi.vacuum.v60","ack":true,"ts":1618422820472,"q":0,"from":"system.adapter.mihome-vacuum.0","user":"system.user.admin","lc":1618422820472} mihome-vacuum.0 2021-04-14 19:54:00.708 debug (15781) Time difference between Mihome Vacuum and ioBroker: -1618420957 sec mihome-vacuum.0 2021-04-14 19:54:00.706 debug (15781) MAIN: Connected to device, try to get model.. mihome-vacuum.0 2021-04-14 19:54:00.705 debug (15781) Receive <<< Helo <<< 2131002000000000185728150000075bffffffffffffffffffffffffffffffff mihome-vacuum.0 2021-04-14 19:54:00.647 debug (15781) server started on 0.0.0.0:53421Danke im Voraus
Gruß Blacky@blackhawk3000 Hast du es inzwischen irgendwie geschafft den EVE in ioBroker zu bekommen?
-
Aktuelle Test Version 3.1.6 Veröffentlichungsdatum 18.4.2021 Github Link https://github.com/iobroker-community-adapters/ioBroker.mihome-vacuum Lange hats gedauert aber langsam komm ich zum Ende (wobei das dann wahrscheinlich der Anfang ist :) ).
Was hat sich geändert? Alles und nix kann kann man sagen.
Der Adapter wurde komplett neu aufgesetzt und dem Aktuellen stand angepasst.vorher:
- Nachrichten an den Roboter wurden willkürlich geschickt und gehofft das eine Antwort kommt.
- Die Erkennung des Roboters (Modell und Marke und Firmware) wurden durch Ankommende Nachrichten oder das Ausbleiben erkannt
- comact mode nicht möglich da zig Timeouts liefen
- Keine neuen/anderen Sauger integrierbar da alles in einer Datei lag
jetzt:
- beim start wird zwingend das Modell ermittelt wonach dann die richtige Datei für den jeweiligen Sauger geladen wird
- danach werden Strukturiert die Sonderfunktionen ermittelt und freigegeben
- Nachrichten werden nicht mehr willkürlich gesendet sonders strukturiert und jede Nachricht bekommt eine Antwort
- comact mode möglich da alle timer zentral gelagert sind
ich habe mich bemüht die Objekte zum Vorgänger gleich zu lassen. also Optisch ist nicht viel neu aber wie gesagt unterm Kleid alles was man im debug log sehen sollte.
ich habe noch nicht viele Sauger in der Datenbank also kann es zu warn log einträgen kommen, dann bitte modell und bezeichnung posten dann nehm ich sie mit rein.
Bitte alles Testen da ich viel ohne Testen umgeschrieben habe (bei über 2000 Zeilen) konnte ich nicht alles direkt testen.Stand Aktuell:
Jetzt sollte alles gehen was bei der 2er auch geht. und mehrWas sollte gehen:
- alles wie beim alten außer die map (folgt in kürze)
- viomi Modelle die sonst über meinen Fork liefen sind nun mit drin
- support für den S7 (letztes update hat die History kaputt gemacht)
- Map wir unterstützt
Fixes:
- Map bei zwei Saugern funtionieren
- Map wird zuverlässig(er) geladen
- 3.0.2 Manueller Map Reload Button funktionert
- 3.0.4/ 3.0.7 Timer geht wieder
- 3.0.5 Disable map_slot warning, add start button, fix error while sending messages without selected device, fix water_box value
- 3.0.6 fix queue States, fix cleaning Buttons.
- 3.0.8 fix map for Valetudo
- 3.1.0 aktuelle Goto und Zones werden gespeichert
- 3.1.1 fix queue
- 3.1.3 Map bugfix, add Multimap Support
- 3.1.3 fix missing Wifi Signal
- 3.1.4 Fix Connrection after reboot/ now wifi
3.1.6: - fixed Disk I/O
- added get States when map is changed
- minimize Messages
- changed logentrys from warn to debug
- added Donate button
folgt in Kürze:
- Koordinaten von goto und Zonen werden angezeigt (in den jeweiligen states)- dreame support über miot
- compactmode
- map - map für history
- material tabel
- led Status S7
neues Logo- Doku aufbereiten
Installieren bitte über https://github.com/iobroker-community-adapters/ioBroker.mihome-vacuum (einfach von git)
Bitte Vorher den alten Adapter vollständig löschen.
Dies ist die Alpha also BITTE nur installieren wenn ihr wisst was ihr macht und einen qualifizierten Bugreport liefern könnt
Bitte in dieses Thema NUR Fehler oder Requests die den Adapter betreffen. KEINE Installationsfehler oder sonstige Fragen. macht dafür bitte wenn die Suche nichts ergeben hat ein neues Thema auf damit es hier nicht so überläuft wie in den alten Threads..
-
Geht bei euch die Goto funktion noch?
Seit Heute hat sich meine Map komisch verhalten, da habe ich eine neue abfahren lassen und ich kann nicht mehr den Mülleimer Punkt finden.
Auch wenn ich in der Xiaomi App Goto verwende und dann die Koordinaten in den Objekten erneut nutze, findet er es nicht.Ist das ein bug in der neuesten version ?