NEWS
Xiaomi Vacuum (Rockrobo) Saugkarte Live Map
-
Hallo Meistertr,
ich hoffe du kannst mir weiterhelfen. Ich verwende dein Script um die Karte auszulesen.
Leider bleibt das Objekt leer. An sich ist der Xiaomi Vacuum an iobroker gekoppelt und auch mit Valetudo bespielt.Es scheint so als würden sich bei mir die Pakete "canvas" und "xmlhttprequest" nicht installieren.
Prinzipiell bin ich nach deiner Anleitung von github vorgegangen.Ich hab schon einen Thread diesbezüglich aufgemacht, bin mir aber überhaupt nicht sicher ob es daran liegt.
Siehe hier: LinkHast du eventuell noch einen Ansatzpunkt? Hast du vielleicht ähnliche Erfahrungen gemacht?
gruß B4n4n3
-
@B4n4n3 das es rot unterstrichen ist ist normal, gibt es beim starten einen Fehler im log? Die Karte wird nur generiert Wenn der Sauger läuft. Schon mal angestellt und geschaut? Wenn. Was nicht stimmt, muss es im log stehen
-
Hi, ja den Sauger hab ich schon laufen lassen. Auch während er läuft bekomme ich keine Karte angezeigt.
Im log des Script-Editor steht folgendes:19:14:00.733 info javascript.0 Start javascript script.js.James.MapJames 19:14:00.734 info javascript.0 script.js.James.MapJames: registered 0 subscriptions and 1 schedule 19:14:01.925 error javascript.0 script.js.James.MapJames: TypeError: Cannot read property 'forEach' of undefined 19:14:01.932 error javascript.0 at getMapImageData (script.js.James.MapJames:191:13) 19:14:01.932 error javascript.0 at updateMapPage (script.js.James.MapJames:59:20) 19:14:01.932 error javascript.0 at exports.XMLHttpRequest.xmlHttp.onreadystatechange (script.js.James.MapJames:36:13)
Im log von ioBroker steht folgendes:
[javascript.0 2019-10-07 19:49:52.761 error at process._tickCallback (internal/process/next_tick.js:63:19) javascript.0 2019-10-07 19:49:52.761 error at endReadableNT (_stream_readable.js:1145:12) javascript.0 2019-10-07 19:49:52.761 error at IncomingMessage.emit (events.js:203:15) javascript.0 2019-10-07 19:49:52.761 error at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xmlhttprequest/lib/XMLHttpRequest.js:447:13) javascript.0 2019-10-07 19:49:52.761 error at setState (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xmlhttprequest/lib/XMLHttpRequest.js:610:14) javascript.0 2019-10-07 19:49:52.761 error at exports.XMLHttpRequest.dispatchEvent (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xmlhttprequest/lib/XMLHttpRequest.js:591:25) javascript.0 2019-10-07 19:49:52.761 error at exports.XMLHttpRequest.xmlHttp.onreadystatechange (script.js.James.MapJames:36:13) javascript.0 2019-10-07 19:49:52.761 error at updateMapPage (script.js.James.MapJames:59:20) javascript.0 2019-10-07 19:49:52.761 error at getMapImageData (script.js.James.MapJames:191:13) javascript.0 2019-10-07 19:49:52.760 error script.js.James.MapJames: TypeError: Cannot read property 'forEach' of undefined] javascript.0 2019-10-07 19:49:52.498 info script.js.James.MapJames: registered 0 subscriptions and 1 schedule javascript.0 2019-10-07 19:49:52.487 info Start javascript script.js.James.MapJames javascript.0 2019-10-07 19:49:50.905 info Stop script script.js.James.MapJames
-
Auch die zusätzlichen Module in der JavaScript Instance eingefügt? -
Jepp sind auch schon drin.
Sagen euch die Fehlermeldungen in den Logs etwas?
-
Hi zusammen,
kurze Frage, muss ich jetzt nur die V3_X.js im Javascript Adapter einbinden für Valetudo 3.X, oder noch ein anderes Script?
Die anderen Dinge aus der Beschreibung
sudo apt install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev
gemacht und
"canvas" und "xmlhttprequest"
hinzugefügt
-
@AxelF1977 Ja. Das sollte dann passen. Im Script selbst noch die IP des Roborock sowie den Namen des Adapters (Zeilen 39-40) anpassen.
-
@brain said in Xiaomi Vacuum (Rockrobo) Saugkarte Live Map:
@AxelF1977 Ja. Das sollte dann passen. Im Script selbst noch die IP des Roborock sowie den Namen des Adapters (Zeilen 39-40) anpassen.
Vielen Dank, klappt alles
Ich möchte mir nun NACH dem beendeten Reinigungsvorgang die Karte per Telegram schicken lassen. Komme aber nicht drauf, wie ich dern Trigger setze.
Er soll die Karte nicht dauerhaft schicken, sondern dann, wenn der Reinigungsvorgang abgeschlossen ist.Außerdem möchte ich den Roboter zu einem bestimmten Spot schicken, wo ich dann den Behälter leere
Wie löst Ihr das?
-
Hi zusammen,
nachdem ich meinen Robo erfolgreich gerootet habe, wollte ich nun die LiveMap in VIS ergänzen.
Wenn ich nun im Javascript Adpater die NPM Pakete hinzufüge und der Apater sich rebootet bekomme ich im Log folgende Meldung:
Kann jemand was damit anfangen?
Danke für Eure Hilfe,
Seppel -
Hat jemand von euch ICantBelieveItsNotValetudo am laufen?
Zur Zeit läuft von das Skript von @Meistertr (was ja aber, wenn ich es richtig verstehe, die Karte nur abruft)ICantBelieveItsNotValetudo lagert jedoch das erstellen der Karte aus (runter vom Robo) um diesen etwas zu entlasten bzgl. CPU und RAM.
Leider werde ich aus der Anleitung auf Github nicht schlau.
-
@Leviathan09 das hast du falsch, es ist anders rum. Mei meinem Script wird die Karte Erstellung zu iobroker ausgelagert. Wie es beim anderen ist, weiß ich gerade nicht.
-
@Meistertr dann ist ja alles super
Danke -
Hi zusammen und vielen Dank für die tolle Arbeit. Bei mir funktioniert die Karte, jedoch bekomme ich im Log extrem viele Errors (siehe Screenshot). Hat jemand eine Idee warum?
-
@elsmarto Dann schau doch mal was in deinem Skript "robbi_map" in Zeile 64 Spalte 13 nicht stimmt.
-
lol...nach einem Neustart des JS Adapters läuft es einwandfrei :). Danke
-
@elsmarto wenn du dielatest vom vacuum Adapter installierst, hast du im Adapter drin.
-
Hallo Zusammen,
ich bin nun auch ein stolzer xiaomi S6 Besitzer Hab Ihn soweit auch schon im IoBroker drin.
Nur mit der Map in Vis tue ich mir noch sehr schwer, weis überhaupt nicht wo ich da ansetzen soll? Geht das mit dem S6 überhaupt?
Das was in der Anleitung vom Adapter steht mag nicht funktionieren. Und im Netz finde ich nur unterschiedlichste dinge die ich noch per Git installieren soll.
Hat jemand ein brauchbares Tutorial dafür oder kann mir jemand wenigstens mal die grobe Richtung vorgeben damit ich weiß wo ich ansetzen kann?Danke
-
Ist das etwas das für die Zukunft "Kriegsentscheidend" ist?
mihome-vacuum.0 2020-05-01 08:28:39.903 warn (8912) This object will not be created in future versions. Please report this to the developer. mihome-vacuum.0 2020-05-01 08:28:39.901 warn (8912) Object mihome-vacuum.0.info.dnd is invalid: obj.common.type has an invalid value (switch) but has to be one of number, string, boolean, array, object, mixed, file, json
-
Auch ich habe ein Script am laufen, das mir nach Beendigung des Saugvorgangs meiner 2 S50 via Alexa und Telegram eine Vollzugsmeldung mit Saugzeitlänge, qm und dem Akkustand sendet. In Telegram hängt er noch eine Map an. Das hat am Anfang gut funktioniert.
In letzter Zeit wundere ich mich warum die Karten immer gleich aussehen obwohl ich unterschiedliche Räume sauge. Die angezeigten Stateswerte passen.
Wenn ich mir das "mihome-vacuum.admin" Verzeichnis anschaue wird mir einiges klar. Hier wird scheinbar schon ewig nichts mehr reingeschrieben.
Hat sich irgendetwas geändert`? Wo bekomme ich die aktuellen Maps her?
Den Screenshot habe ich heute (07.05,) gemacht. Wie man sehen kann wurden die Dateien im Verzeichnis schon ewig nicht mehr aktualisiert.
Weiss jemand Rat? -
@DocGame Bei mir liegt die Karte schon immer hier:
/opt/iobroker/iobroker-data/files/mihome-vacuum.admin/actualMap_0.png
Ich croppe das PNG sogar und archiviere es dadurch gleich weg. Das archivierte sende ich mir dann und habe so in Telegram und Email keinen unnötigen Weißraum um das Bild.
convert /opt/iobroker/iobroker-data/files/mihome-vacuum.admin/actualMap_0.png -crop 1240x830+350+406 +repage /opt/iobroker_user_data/vacuum/%date%_%room%.png