NEWS
IRobot Roomba Adapter
-
@Zefau sagte in IRobot Roomba Adapter:
@JB_Sullivan sagte in IRobot Roomba Adapter:
Wenn ich das Passwort raus lösche, ist der Adapter dauerhaft gelb.
Ist ja logisch und auch richtig. Geht ja darum, dass du das Passwort neu vom Roomba abrufen kannst.
Kannst du das Passwort mittels https://github.com/koalazak/dorita980/blob/master/README.md#how-to-get-your-usernameblid-and-password abrufen?
Für canvas: hast du ein 64 bit System? Dann müssen wirklich alle Komponenten auch als 64 bit installiert werden.
Hallo Zefau - JA, das Passwort kann ich so wie es dort auf der Seite beschrieben ist abrufen.
Mein System ist ein 32 Bit System und ich habe auch die 32Bit Version installiert.{ ver: '3', hostname: 'Roomba-3143C91xxxxxxxxx', robotname: 'RobbiTobbi', ip: '10.xxx.xxx.xxxx', mac: 'F0:03:8C:C3:C9:54', sw: 'v2.4.6-3', sku: 'R960040', nc: 0, proto: 'mqtt', cap: { pose: 1, ota: 2, multiPass: 2, pp: 1, binFullDetect: 1, langOta: 1, maps: 1, edge: 1, eco: 1, svcConf: 1 }, blid: '3143C9107xxxxxxxxx' } Password=> :1:1506013791:3x3x3x3x3x3x3x3 <= Yes, all this string. Use this credentials in dorita980 lib :)
Kann man den verschlüsselten Benutzernamen und das PW ggf. irgendwo in eine Config Datei manuell eintragen?
-
@JB_Sullivan sagte in IRobot Roomba Adapter:
Kann man den verschlüsselten Benutzernamen und das PW ggf. irgendwo in eine Config Datei manuell eintragen?
Du kannst die auch direkt in die Adapter Einstellungen rein kopieren? Musst ja nicht den dortigen Abruf nutzen.
-
@Zefau - Na das ist ja der KNALLER !!!! Nun wird der Adapter zumindest wieder grün. !!!
Ich schwöre Dir, ich kenne das Passwort 100%ig und habe es auch immer richtig eingegeben - kann man ja per Umschaltung auch kontrollieren.
Bleibt jetzt "nur" noch das Canvas Problem. Der zweite Link von dir ist sehr schwer zu lesen und zu verstehen was man da eigentlich machen soll.
-
Ich gebe mit CANVAS noch nicht auf. Offensichtlich fehlt binding.gyp (siehe unten gyp-ERR!) - aber ich checke das nicht wie ich das nachinstalliert bekomme
C:\>node-gyp configure gyp info it worked if it ends with ok gyp info using node-gyp@5.0.3 gyp info using node@10.16.0 | win32 | ia32 gyp info find Python using Python version 2.7.15 found at "C:\Program Files\Python\python.exe" gyp info find VS using VS2017 (15.9.28307.812) found at: gyp info find VS "C:\Program Files\Microsoft Visual Studio\2017\BuildTools" gyp info find VS run with --verbose for detailed information gyp info spawn C:\Program Files\Python\python.exe gyp info spawn args [ 'C:\\Users\\SmartHome\\AppData\\Roaming\\npm\\node_modules\\node-gyp\\gyp\\gyp_main.py', gyp info spawn args 'binding.gyp', gyp info spawn args '-f', gyp info spawn args 'msvs', gyp info spawn args '-I', gyp info spawn args 'C:\\build\\config.gypi', gyp info spawn args '-I', gyp info spawn args 'C:\\Users\\SmartHome\\AppData\\Roaming\\npm\\node_modules\\node-gyp\\addon.gypi', gyp info spawn args '-I', gyp info spawn args 'C:\\Users\\SmartHome\\AppData\\Local\\node-gyp\\Cache\\10.16.0\\include\\node\\common.gypi', gyp info spawn args '-Dlibrary=shared_library', gyp info spawn args '-Dvisibility=default', gyp info spawn args '-Dnode_root_dir=C:\\Users\\SmartHome\\AppData\\Local\\node-gyp\\Cache\\10.16.0', gyp info spawn args '-Dnode_gyp_dir=C:\\Users\\SmartHome\\AppData\\Roaming\\npm\\node_modules\\node-gyp', gyp info spawn args '-Dnode_lib_file=C:\\Users\\SmartHome\\AppData\\Local\\node-gyp\\Cache\\10.16.0\\<(target_arch)\\node.lib', gyp info spawn args '-Dmodule_root_dir=C:\\', gyp info spawn args '-Dnode_engine=v8', gyp info spawn args '--depth=.', gyp info spawn args '--no-parallel', gyp info spawn args '--generator-output', gyp info spawn args 'C:\\build', gyp info spawn args '-Goutput_dir=.' ] gyp: binding.gyp not found (cwd: C:\) while trying to load binding.gyp gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (C:\Users\SmartHome\AppData\Roaming\npm\node_modules\node-gyp\lib\configure.js:344:16) gyp ERR! stack at ChildProcess.emit (events.js:198:13) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:248:12) gyp ERR! System Windows_NT 10.0.17763 gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\SmartHome\\AppData\\Roaming\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "configure" gyp ERR! cwd C:\ gyp ERR! node -v v10.16.0 gyp ERR! node-gyp -v v5.0.3 gyp ERR! not ok
-
@JB_Sullivan führe den Befehl mal im ioBroker Verzeichnis aus
-
@Zefau sagte in IRobot Roomba Adapter:
Den Fehler mit dem Docking werde ich dann ebenfalls beheben.
Hi,
kann es sein, dass das immer noch falsch ist? Bei mir ist zumindest bei meinem 966 der state docked auf false, wenn er in der Ladestation steht und geht auf true, wenn er los fährt.Ansonsten geiler Adapter, habe ihn gestern installiert, inklusive canvas auf Ubuntu 18.04. Es läuft ziemlich perfekt, auch eine Karte kommt per Telegram. Allerdings hatte ich heute ziemlich viel im Log. Zur Erklärung, der Roomba startet automatisch um 11 Uhr, fährt dann meist so eine Stunde, geht zum Docking, lädt so eine Stunde nach und fährt dann nochmal. Hier das Log, die Zeiten mit wesentlichen Einträgen könnten sich mit besagtem Zurückfahren und später nochmal starten decken.
2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: TypeError: Cannot read property 'drawImage' of undefined 2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:694:7) 2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:371:6) 2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: at MqttClient.emit (events.js:198:13) 2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/dorita980/lib/v2/local.js:39:16) 2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: at ontimeout (timers.js:436:11) 2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: at tryOnTimeout (timers.js:300:5) 2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: at listOnTimeout (timers.js:263:5) 2019-09-03 10:59:59.750 - [31merror[39m: Caught by controller[0]: at Timer.processTimers (timers.js:223:10) 2019-09-03 10:59:59.751 - [31merror[39m: host.iobroker instance system.adapter.roomba.0 terminated with code 0 (OK) 2019-09-03 10:59:59.751 - [32minfo[39m: host.iobroker Restart adapter system.adapter.roomba.0 because enabled 2019-09-03 11:00:29.758 - [32minfo[39m: host.iobroker instance system.adapter.roomba.0 started with pid 21125 2019-09-03 11:00:30.590 - [32minfo[39m: roomba.0 starting. Version 1.0.6 in /opt/iobroker/node_modules/iobroker.roomba, node: v10.16.3 2019-09-03 11:00:30.640 - [32minfo[39m: roomba.0 Connecting to Roomba (192.168.100.63).. 2019-09-03 11:00:30.777 - [32minfo[39m: roomba.0 Restored last mission (#4). 2019-09-03 11:00:32.583 - [32minfo[39m: roomba.0 Roomba online. Connection established. 2019-09-03 11:00:33.383 - [32minfo[39m: roomba.0 Roomba has started a new mission (#5). 2019-09-03 12:15:43.709 - [32minfo[39m: javascript.0 script.js.common.Roomba-Telegram: Roombi finished at cleaning 0 sqm in 596 seconds (no errors). 2019-09-03 12:15:43.714 - [32minfo[39m: roomba.0 Mission #5 saved. 2019-09-03 13:17:41.897 - [31merror[39m: roomba.0 uncaught exception: Cannot read property 'push' of undefined 2019-09-03 13:17:41.898 - [31merror[39m: roomba.0 TypeError: Cannot read property 'push' of undefined at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:757:15) at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:371:6) at MqttClient.emit (events.js:198:13) at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/dorita980/lib/v2/local.js:39:16) at ontimeout (timers.js:436:11) at tryOnTimeout (timers.js:300:5) at listOnTimeout (timers.js:263:5) at Timer.processTimers (timers.js:223:10) 2019-09-03 13:17:41.898 - [32minfo[39m: roomba.0 Adapter stopped und unloaded. 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: TypeError: Cannot read property 'push' of undefined 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:757:15) 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:371:6) 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: at MqttClient.emit (events.js:198:13) 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/dorita980/lib/v2/local.js:39:16) 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: at ontimeout (timers.js:436:11) 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: at tryOnTimeout (timers.js:300:5) 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: at listOnTimeout (timers.js:263:5) 2019-09-03 13:17:41.935 - [31merror[39m: Caught by controller[0]: at Timer.processTimers (timers.js:223:10) 2019-09-03 13:17:41.935 - [31merror[39m: host.iobroker instance system.adapter.roomba.0 terminated with code 0 (OK) 2019-09-03 13:17:41.935 - [32minfo[39m: host.iobroker Restart adapter system.adapter.roomba.0 because enabled 2019-09-03 13:18:11.943 - [32minfo[39m: host.iobroker instance system.adapter.roomba.0 started with pid 22381 2019-09-03 13:18:12.659 - [32minfo[39m: roomba.0 starting. Version 1.0.6 in /opt/iobroker/node_modules/iobroker.roomba, node: v10.16.3 2019-09-03 13:18:12.702 - [32minfo[39m: roomba.0 Connecting to Roomba (192.168.100.63).. 2019-09-03 13:18:12.880 - [32minfo[39m: roomba.0 Restored last mission (#5). 2019-09-03 13:18:15.687 - [32minfo[39m: roomba.0 Roomba online. Connection established. 2019-09-03 13:18:16.487 - [33mwarn[39m: roomba.0 The first argument must be an object 2019-09-03 13:18:16.488 - [33mwarn[39m: roomba.0 TypeError: The first argument must be an object at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:715:11) at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:371:6) at MqttClient.emit (events.js:198:13) at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/dorita980/lib/v2/local.js:39:16) at ontimeout (timers.js:436:11) at tryOnTimeout (timers.js:300:5) at listOnTimeout (timers.js:263:5) at Timer.processTimers (timers.js:223:10) 2019-09-03 13:18:17.288 - [33mwarn[39m: roomba.0 The first argument must be an object 2019-09-03 13:18:17.288 - [33mwarn[39m: roomba.0 TypeError: The first argument must be an object at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:715:11) at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:371:6) at MqttClient.emit (events.js:198:13) at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/dorita980/lib/v2/local.js:39:16) at ontimeout (timers.js:436:11) at tryOnTimeout (timers.js:300:5) at listOnTimeout (timers.js:263:5) at Timer.processTimers (timers.js:223:10) 2019-09-03 13:18:18.088 - [33mwarn[39m: roomba.0 The first argument must be an object 2019-09-03 13:18:18.088 - [33mwarn[39m: roomba.0 TypeError: The first argument must be an object at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:715:11) at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:371:6) at MqttClient.emit (events.js:198:13) at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/dorita980/lib/v2/local.js:39:16) at ontimeout (timers.js:436:11) at tryOnTimeout (timers.js:300:5) at listOnTimeout (timers.js:263:5) at Timer.processTimers (timers.js:223:10) 2019-09-03 13:18:18.888 - [33mwarn[39m: roomba.0 The first argument must be an object ... Wiederholt sich so im Sekundentakt ... 2019-09-03 13:29:51.403 - [33mwarn[39m: roomba.0 The first argument must be an object 2019-09-03 13:29:51.403 - [33mwarn[39m: roomba.0 TypeError: The first argument must be an object at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:715:11) at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:371:6) at MqttClient.emit (events.js:198:13) at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/dorita980/lib/v2/local.js:39:16) at ontimeout (timers.js:436:11) at tryOnTimeout (timers.js:300:5) at listOnTimeout (timers.js:263:5) at Timer.processTimers (timers.js:223:10) 2019-09-03 13:29:52.204 - [33mwarn[39m: roomba.0 The first argument must be an object 2019-09-03 13:29:52.204 - [33mwarn[39m: roomba.0 TypeError: The first argument must be an object at mapMission (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:715:11) at MqttClient.<anonymous> (/opt/iobroker/node_modules/iobroker.roomba/roomba.js:371:6) at MqttClient.emit (events.js:198:13) at Timeout.setInterval [as _onTimeout] (/opt/iobroker/node_modules/dorita980/lib/v2/local.js:39:16) at ontimeout (timers.js:436:11) at tryOnTimeout (timers.js:300:5) at listOnTimeout (timers.js:263:5) at Timer.processTimers (timers.js:223:10) 2019-09-03 13:30:15.693 - [33mwarn[39m: roomba.0 Connection lost! Roomba offline. 2019-09-03 13:30:15.694 - [32minfo[39m: roomba.0 Roomba Connection closed. 2019-09-03 13:30:19.922 - [32minfo[39m: roomba.0 Roomba online. Connection established.
Könnte es damit zusammenhängen, dass er momentan noch Zugriff aufs Internet hat? App ist auf dem Android gestoppt und sollte nicht parallel gelaufen sein. Beim späteren Öffnen habe ich aber auch dort ganz normal die Karte und den Bericht über die Reinigung, ohne Fehler.
Sollte der Internetzugriff generell verboten sein, wenn man den Adapter in Gebrauch hat, oder sollte sich das nicht beissen, solange man die App nicht öffnet, während der Roomba gerade arbeitet?
Gruss, Jürgen
-
Leider auch nicht erfolgreich, da immer noch nicht erkannt und wieder ein Pfund voll Fehlermeldungen angezeigt wurden.
-
@JB_Sullivan Du musst zwischen WARN und ERROR unterscheiden. WARN ist nicht unbedingt schlimm, wie jetzt in deinem Fall ist alles erfolgreich durchgelaufen. Du hast aber (wieder) canvas im falschem Ordner installiert. Du musst canvas im ioBroker.roomba Ordner installieren. Das sind wir oben schon durchgegangen.
-
Nein, du hast geschrieben - "führe den Befehl mal im ioBroker Verzeichnis aus" - das ist für mich "C:/ioBroker" das ist das ioBroker Verzeichnis - ich dachte das wäre Absicht, darum habe ich es so versanden.
Die male davor habe ich es in C:/ioBroker/node_modules/iobroker.roomba installiert ....... und da liegt Canvas auch.
Es sind alle Canvas Dateien genau dort und trotzdem meckert der Adapter das er sie nicht finden kann.Aber ich mache es gerne noch einmal unter C:/ioBroker/node_modules/iobroker.roomba
-
So ich habe jetzt Canavas nochmal in den iobroker.roomba Ordner installiert.
Hier das Ergebnis:
Ich habe den Adapter gestoppt und wieder gestartet, den Robbi laufen lassen und anschließend wieder zur Basis geschickt.
Das Ergebnis ist das gleiche wie immer - kann keine Karte geladen werden.
Hier der LOG aus dem ioBroker Admin.
roomba.0 2019-09-03 20:43:53.630 debug system.adapter.admin.0: logging true roomba.0 2019-09-03 20:43:41.297 info Triggered action -dock- on Roomba. roomba.0 2019-09-03 20:43:41.063 info Roomba online. Connection established. roomba.0 2019-09-03 20:43:37.872 debug {"code":"EPIPE"} roomba.0 2019-09-03 20:43:37.872 info Roomba Connection closed. roomba.0 2019-09-03 20:43:37.872 warn Connection lost! Roomba offline. roomba.0 2019-09-03 20:43:37.872 info Triggered action -dock- on Roomba. roomba.0 2019-09-03 20:43:34.281 info Triggered action -dock- on Roomba. roomba.0 2019-09-03 20:43:31.682 info Triggered action -stop- on Roomba. roomba.0 2019-09-03 20:40:07.186 info Triggered action -start- on Roomba. roomba.0 2019-09-03 20:39:54.384 debug Subscribed to states commands.dock. roomba.0 2019-09-03 20:39:54.384 debug Subscribed to states commands.resume. roomba.0 2019-09-03 20:39:54.384 debug Subscribed to states commands.pause. roomba.0 2019-09-03 20:39:54.384 debug Subscribed to states commands.stop. roomba.0 2019-09-03 20:39:54.384 debug Subscribed to states commands.start. web.0 2019-09-03 20:39:50.354 info ==>Connected system.user.admin from ::ffff:10.122.60.28 roomba.0 2019-09-03 20:39:46.728 info Roomba online. Connection established. roomba.0 2019-09-03 20:39:44.525 info Connecting to Roomba (10.122.60.10).. roomba.0 2019-09-03 20:39:44.525 debug \\?\C:\ioBroker\node_modules\iobroker.roomba\node_modules\canvas\build\Release\canvas.node roomba.0 2019-09-03 20:39:44.525 debug Das angegebene Modul wurde nicht gefunden. roomba.0 2019-09-03 20:39:44.525 warn Canvas not installed! Thus, no map drawings are possible. roomba.0 2019-09-03 20:39:44.353 info starting. Version 1.0.6 in C:/ioBroker/node_modules/iobroker.roomba, node: v10.16.0 roomba.0 2019-09-03 20:39:44.259 debug statesDB connected roomba.0 2019-09-03 20:39:44.244 debug objectDB connected
Das Problem ist das gleiche wie immer - er meckert, das er canvas.node nicht finden kann, obwohl es GENAU dort liegt.
-
@JB_Sullivan Ich bin leider ratlos. Er müsste nach der Installation von canvas (die bei dir ja auch erfolgreich durchläuft) eigl. auf
C:\ioBroker\node_modules\iobroker.roomba\node_modules\canvas
zugreifen und nicht auf\\?\C:\ioBroker\node_modules\iobroker.roomba\node_modules\canvas\build\Release\canvas.node
. -
Gibt es irgend eine Config Datei wo der Pfad drin steht? Vielleicht kann man das händisch ändern?
-
@JB_Sullivan
C:\iobroker\node_modules\iobroker.roomba\node_modules\canvas\binding.gyp
Mein Inhalt der Datei:
-
@JB_Sullivan ggf. die
C:\iobroker\node_modules\iobroker.roomba\node_modules\canvas\package.json
?Mein Inhalt:
Sind darin insbesondere die Pfade identisch zu deiner Variante?
-
@Wildbill sagte in IRobot Roomba Adapter:
kann es sein, dass das immer noch falsch ist? Bei mir ist zumindest bei meinem 966 der state docked auf false, wenn er in der Ladestation steht und geht auf true, wenn er los fährt.
Bin aktuell nicht Zuhause und werde das nochmal prüfen, wenn ich wieder da bin.
-
OK - hier mein binding.gyp und package.json - liegt im selben Dateipfad wie bei dir. Ich werde mal alles vergleichen.
.... und package.json
-
@JB_Sullivan in der package.json sind ein paar Sachen, den die Unterschied machen könnten. Einfach mal rumprobieren.
-
Werde ich mal machen, auch wenn ich keine Ahnung davon habe, was von "Kriegs entscheidender" Relevanz ist.
-
@JB_Sullivan kann ich auch nur raten, aber
_location
würde ich probieren und_requiredBy
und ggf. nochmal_where
. -
@Wildbill sagte in IRobot Roomba Adapter:
Hier das Log, die Zeiten mit wesentlichen Einträgen könnten sich mit besagtem Zurückfahren und später nochmal starten decken.
Sind alles Fehler im Adapter. Bitte installiere dir die aktuelle Version v1.0.7 von Github. Diese sollte die Fehler beheben.
Danke dir für's Testen.