NEWS
Test Dreame Home Adapter
-
@wawyo Hallo
Ich teste auch gerade den Dreame Adapter und er sendet auch Daten aber ich würde gerne deine Version mit den Map daten und Räumen testen wenn das möglich istLG
-
@michael-ladstätter
Hier ist die vollständige Anleitung, inklusive der Befehle zur Aktualisierung und Neustart der Instanz:Die modifizierte Version der
main.js
kann derzeit nur manuell aktualisiert werden und ist nicht über GitHub verfügbar. Um die Änderungen vorzunehmen, folgen Sie bitte diesen Schritten:-
Kopieren Sie den bereitgestellten Code und speichern Sie ihn unter dem Namen
main.js
. -
Stellen Sie über SSH eine Verbindung zu Ihrem Server her und führen Sie den folgenden Befehl aus, um die Berechtigungen für die Datei zu ändern:
sudo chmod 644 /opt/iobroker/node_modules/iobroker.dreame/main.js
-
Öffnen Sie FileZilla und navigieren Sie zu folgendem Verzeichnis:
/opt/iobroker/node_modules/iobroker.dreame
. -
Sichern Sie die originale
main.js
-Datei an einem sicheren Ort. -
Ersetzen Sie die originale
main.js
-Datei durch die heruntergeladene und modifizierte Version, die Sie in Schritt 1 erstellt haben. -
Führen Sie den folgenden Befehl aus, um die Änderungen hochzuladen:
sudo iobroker upload dreame
-
Starten Sie die
dreame
-Instanz neu, um die Änderungen zu übernehmen:sudo iobroker restart dreame
Durch diese Schritte wird die modifizierte
main.js
erfolgreich implementiert und die Änderungen werden aktiv -
-
@wawyo Hallo
Danke für die tolle Anleitung
Habe ich umgesetzt aber leider tauchen bei mir weder der Ordner maps noch cleanset auf
einige Sachen haben sich geändert und es wurden aus vielen datenpunkten die vorher aus zahlen bestand ist jetzt ein text in der bezeichnung -
@michael-ladstätter
Die Daten werden erst geschrieben, wenn der Saugroboter in Betrieb ist, da die Informationen über die Funktion „mqttClient“ des Adapters abgerufen werden. -
war schon im betrieb aber es kamen trotzdem keine neuen Daten dazu
-
es kommen diese meldungen in der log und dann startet der adapter neu
-
-
@michael-ladstätter
Um sicherzustellen, dass die Dekompressionsfunktion einwandfrei läuft und um das Problem einzugrenzen, füge bitte den folgenden Code direkt nach der Zeilevar decode = zlib.inflateSync(encodedData);
in der Datei ein. Dies hilft uns, zu überprüfen, ob die Dekompression korrekt durchgeführt wird und die erwarteten Daten liefert:var decode = zlib.inflateSync(encodedData); this.log.info(' Zlib inflate : ' + decode);
Diese Änderung wird dazu führen, dass die Daten, die nach der Dekompression erhalten wurden, in den Logdateien ausgegeben werden. Dadurch können wir sicherstellen, dass die
zlib.inflateSync
-Funktion korrekt arbeitet und die Ausgaben entsprechend unseren Erwartungen sind.Beispiel für die geänderte Codezeile (Zeile 902):
var decode = zlib.inflateSync(encodedData); this.log.info(' Zlib inflate : ' + decode);
Bitte integriere diese Änderung in den Code und teste, ob die Dekompression jetzt ordnungsgemäß funktioniert. Diese Protokollierung hilft uns, potenzielle Probleme bei der Dekompression zu identifizieren und einzugrenzen.
-
-
@michael-ladstätter Ich habe festgestellt, dass beim Kopieren des Codes auf die Plattform einige Teile des Codes unterhalb der Zeile 917 gelöscht wurden. Dies hat zu Problemen bei der Ausführung des Codes geführt.
Um sicherzustellen, dass der Code korrekt funktioniert, habe ich den vollständigen und funktionierenden Code bereitgestellt. Bitte lade den folgenden Code herunter und ersetze die beschädigte Version auf der Plattform Download; main.js
-
Super danke hat ohne Probleme funktioniert
-
@michael-ladstätter Super
ich benötige jetzt Unterstützung von Beobachtern und Analysten, um unser Ziel zu erreichen: eine Karte aus den Koordinaten zu erstellen. Der Prozess gestaltet sich als komplex, und ich kann mir vorstellen, dass im dekomprimierten Code möglicherweise weitere wertvolle Daten enthalten sind. Es wäre eine Verschwendung, nur die Header zu entfernen, um an die JSON-Daten zu gelangen, ohne das gesamte Potenzial der Daten zu nutzen.
Der aktuelle Stand ist folgender:
- Die Dekompression des Codes hat möglicherweise zusätzliche Daten ans Licht gebracht, die für unser Projekt nützlich sein könnten.
- Das bloße Entfernen der Header könnte uns wichtige Informationen vorenthalten, die wir für eine umfassende Analyse und das Erstellen der Karte benötigen.
Da ich alleine Schwierigkeiten habe, alle relevanten Informationen aus dem Code zu extrahieren und die Daten vollständig zu verstehen, würde ich mich über eure Unterstützung sehr freuen. Eure Hilfe beim Beobachten und Analysieren der Daten wäre sehr wertvoll, um unser Ziel effizient zu erreichen.
-
OK, hat sich erledigt, jetzt habe ich es gefunden.
Für alle die auch keinen Plan haben wie ich.
- Ein neues Java Script erstellen
- Dort reicht dann eine Zeile: setState ('dreame.0.***********.remote.start-sweep')
- Dieses Script kann dann einfach, z.B. über Blockly, aufgerufen werden.
Damit startet einfach eine Reinigung. Über die Dreame App habe ich bei meinen Saugern "CleanGenius" ausgewählt und der Modus wird dadurch auch einfach gestartet.
-
Hallo nochmal, hat schon jemand herausgefunden, wie/wo man die Stockwerke/Etage ändern kann, weil die Shortcuts je Stockwerk immer wieder von vorne mit 32 beginnen? Dankeschön
-
value": "{"selects":[[X,1,3,2,1],[Y,1,3,2,1]]}
Parameter 1 = Raum
Parameter 2 = Wiederholungen
Parameter 3 = Saugstärke (0-3)
Parameter 4 = Wassermenge (1-3)
Parameter 5 = RaumreinigungsreihenfolgeIst das korrekt? Wie kann ich den Roboter dann aber beispielsweise nur saugen lassen (ohne Wischen)?
Danke
-
Ja das mit dem nur Saugen und nur Wischen würde mich auch interessieren.
-
@heinz2100
Array parameters:-
Room ID: [X,2,1,2,0]
-
Repeats: [1,X,1,2,0] 1,2,3 list item
-
Suction Level: [1,2,X,2,0] 0: Quiet, 1: Standard, 2: Strong, 3: Turbo
-
Water Volume: [1,2,1,X,0] 2: Low, 3: Medium, 4:High
-
Cleaning Mode: [1,2,1,2,X] 0: Sweeping, 1: Mopping, 2: Sweeping and Mopping
Laut der API sollte der Array so aufgebaut sein. Ich hoffe, dass alles funktioniert!
-
-
@smartismart Hey, kannst du mir weiterhelfen. Ich habe den Adapter installiert und mich erfolgreich eingeloggt.
Wie kann ich denn jetzt meinem Robi sagen, das er loslegen soll
Ich habe in der Dreame App 3 Shortcuts
Saugen
Wischen
Leicht Wischen
Diese 3 würde ich einfach dann per VIS anwählen wollen.
Danke dir im voraus -
@marcogoldau
Oben im 1 Post wird beschrieben was man machen muss wenn man die Shortcuts nutzen möchte.Wenn man die Shortcut ID hat, diese dann wie oben beschrieben in den Datenpunkt schreiben lassen (z.B . per Blockly)
-
@wawyo Ich habe den L10S Ultra Pro Heat.
Bei mir ist der erste Paramater RoomID und der fünfte Paramter RoomIndex (Raumreinigungsreihenfolge).
Die Paramter Repeats, Suction Level und Water Level ignoriert er komplett und nimmt dort die Raumeinstellungen aus der App. Wenn dort also für die Küche nur saugen auf Max eingestellt ist, dann macht er das auch, egal welche Parameter gesetzt sind.
Kann man das irgendwie umgehen? Gerade die Paramter wären super. Hab eigentlich keine Lust 300 verschiedene Shortcuts zu erstellen und zumal man dann ja immer nur einen Shortcut nach dem anderen starten kann.