NEWS
Test Adapter Mihome-vacuum v3.1.6 Next Generarition
-
@tombox ja, aber wenn jetzt einer die karte an an hat, wird sie noch öfter abgerufen. Die lösung wäre dann eher, die karte seltener abzurufen.
-
@dirkhe Ja während eines Reinigungsvorgang wird sie zusätzlich noch alle 15min abgerufen. dazu müsste man wissen was das neue rate limit für map Abruf. so ist es erstmal für user die karte aktiviert haben wird es während des reinigen aktualisiert
-
@tombox Ich habe ebenfalls die neueste Github Version installiert und kann den Sauger über das Dashboard starten. In der App wird mir auch die Karte und auch der Weg des Saugers angezeigt, allerdings nicht im Dashboard, was ich genauso eingebunden habe, wie es mir @bahnuhr erklärt hatte.
https://forum.iobroker.net/post/747066
Bevor es die Probleme gab, hat es so auch reibungslos funktioniert. Nur jetzt wird mir die Fahrt des Saugers nicht im Dashboard angezeigt. -
@damrak2022 Meinst du die ganze karte oder nur die fahrt
-
@tombox Die Karte wird angezeigt, aber die Fahrt leider nicht
-
Hi Dirk,
ja danke, ich kann nur von der Userseite her sehen, dass der Adapter jetzt fuer meine Beduerfnisse funktioniert.
Mir ist es wichtig, dass NACH einem Saugvorgang mir die Karte per Synochat gesendet wird, damit ich weiss, ob die Sauger alles gesaugt haben oder ob irgendwas im Weg stand.
Hab 4 Sauger auf 4 Etagen, einer laeuft taeglich morgens um 9 im Keller, die anderen 3 nur, wenn nach 15 min Abwesenheit keiner mehr da ist, und das einmal taeglich.
Gruss
Bernd -
@ilovegym sagte in Test Adapter Mihome-vacuum v3.1.6 Next Generarition:
Hab 4 Sauger auf 4 Etagen
Fett Brett
-
@ilovegym Siehst du bei dir noch die Fahrten in den Karten?
-
@tombox ja alles einwandfrei!
-
@tombox So, ich habe mir den code jetzt nochmal genauer angesehen. Das was ich erst geschrieben habe, dass die map auch geholt wird, wenn map nicht aktiviert ist, da habe ich den Statusnamen falsch interpretiert, sorry.
So jetzt zu der Änderung, die du gemacht hattest:
Dieser code wird alle x (bei mir 60 Sekunden) aufgerufen:if (Date.now() - this.cMapLastPoll > this.cMapPoll && this.mapGet) { await this.getMapPointer(); }
Vorher war es
if (Date.now() - this.cMapLastPoll > this.cMapPoll && !this.mapGet) { await this.getMapPointer(); }
Diese Abfrage ist dafür da, dass der Mappointer nach spätestens 15 Minuten einmal abgerufen wird, aber nur, wenn die Karte nicht sowieso schon abgerufen wird.
Jetzt ist die Logik, rufe die Map nach 15 Minuten ab, aber nur wenn sie sowieso abgerufen wird, weil der robbi in einem der folgenden stati ist
cleanStates.Cleaning,
cleanStates.Back_toHome,
cleanStates.SpotCleaning,
cleanStates.GoingToSpot,
cleanStates.ZoneCleaning,
cleanStates.RoomCleaning,Das bedeutet, dass der code jetzt so sinnlos ist.
Entweder wir wollen das regelmäßige Abrufen nach 15 Minuten haben, dass muss der code wieder zurück geändert werden. Oder das ganze ist nicht notwendig, dann kann der ganze code oben gelöscht werden, incl. der Zeilen 158,159this.cMapPoll = 900000; // 15 Min this.cMapLastPoll = 0;
und Zeile 553
this.cMapLastPoll = Date.now();
Vlt. macht es auch Sinn, den Status ausserhalb nur jede Stunde abzurufen?
-
@dirkhe Mir war nicht ganz klar welchen Vorteil das hat aber es war halt im abfrageinterval von alle 20sek und deswegen kam es zum block. jede stunde klingt gut aber auch für die die map deaktiviert haben?
-
@tombox Zu dem Code kann ich nichts sagen, weil ich mich da garnicht auskenne. Mich würde nur interessieren, ob die Fahrt des Staubsaugers auch wieder in Echtzeit auf der Karte am Pc angezeigt wird/ werden kann.
Das sind meine Einstellungen im Adapter:
-
Wir hatten das Kartending ja schonmal.
Da muss es in deinen Tiefen noch ein anderes Problem geben.
Meine Karte und Aktualisierung passiert in Echtzeit.
Gerade noch mal geguckt .
-
@haselchen Ich habe mir nochmal meine Canvas Installation angeschaut: Die sieht so aus:
Andy@homebridge:/opt/iobroker $ npm ls canvas iobroker.inst@3.0.0 /opt/iobroker ├─┬ iobroker.iot@1.14.2 │ ├── canvas@2.11.2 │ └─┬ jsdom@20.0.3 │ └── canvas@2.11.2 deduped └─┬ iobroker.mihome-vacuum@3.11.0 (git+ssh://git@github.com/iobroker-community-adapters/ioBroker.mihome-vacuum.git#8bd06c236397e62f9e86062eacab80949bf3d324) └── canvas@2.11.2 deduped
Das scheint in Ordnung zu sein, und ich habe ja nichts geändert, deswegen verstehe ich es nicht.
-
@damrak2022 Hier kommt die Karte auch waehrend des Saugvorgangs, keine Blockade mehr seitens Xiaomi, auch wenn der Adapter 24/7 laeuft und die Sauger einmal taeglich.
Die aktuelle 3.11 hast du installiert? Mein System Node 18.16.0, NPM9.5.1, Debian Bullseye auf der Synology als VM.
Eigene VM's fuer Redis, Influx und Grafana, iobroker mit Objekte: 99788, Zustände: 85009Meine Timeouts sehen so aus:
-
@ilovegym Meine Einstellungen sind genau wie Deine, aber ich bekomme die eigentlich Fahrt nicht angezeigt. In der App ist alles so wie es sein sollte.
Ich bin etwas ratlos, wo ich jetzt noch schauen könnte.
Ich habe gerade gesehen, das ich im Protokoll folgenden Eintrag habe, nachdem ich auf Expertenmodus umgeschaltet habe:mihome-vacuum.0 1167 2023-05-17 16:53:26.568 error Socket Close
Hilft das weiter?
-
@haselchen Ich musste ja mein komplettes System neu aufsetzen, bin aber der Meinung das alles korrekt ist.
Eventuell kannst Du hier nochmal einen Blick auf werfen, deswegen poste ich das nochmal. Vielleicht fällt Dir etwas aufEdit Vis
VIS Runtime:
Installation CanvasAndy@homebridge:/opt/iobroker $ npm ls canvas iobroker.inst@3.0.0 /opt/iobroker ├─┬ iobroker.iot@1.14.2 │ ├── canvas@2.11.2 │ └─┬ jsdom@20.0.3 │ └── canvas@2.11.2 deduped └─┬ iobroker.mihome-vacuum@3.11.0 (git+ssh://git@github.com/iobroker-community-adapters/ioBroker.mihome-vacuum.git#8bd06c236397e62f9e86062eacab80949bf3d324) └── canvas@2.11.2 deduped
Einbindung ins Dashboard:
Ansonsten wüsste ich nicht wo ich noch suchen soll, denn bei mir, wie gesagt, wird die Fahrt nicht angezeigt.
-
@ilovegym Ich habe das html widget nochmal neu angelegt, aber ich bekomme die Fahrt einfach nicht angezeigt.
Im Protokoll steht lediglich das ich den Robi losgeschickt habe.mihome-vacuum.0 79672 2023-05-23 17:24:18.292 info trigger cleaning all
Hat jemand noch eine Idee?
-
Zeig mal die komplette Einstellungsseite vom Widget
-
@haselchen Du meinst die hier, richtig: