Deebot Ozmo 950 [MQTT][CLOUDFREE][CLOUD][bumper][non-bumper]

Begonnen von schwatter, 15 Juni 2020, 21:42:30

Vorheriges Thema - Nächstes Thema

Thomas0401

Hallo Otto,

vielen Dank das Du helfen möchtest

folgende shell Befehle funktionieren

deebotozmo clean
deebotozmo charge

usw.

Die sudo cat /etc/sudoers.d/*

dieht so aus

Defaults env_keep += "NO_AT_BRIDGE"
pi ALL=(ALL) NOPASSWD: ALL
Defaults env_keep += "http_proxy HTTP_PROXY"
Defaults env_keep += "https_proxy HTTPS_PROXY"
Defaults env_keep += "ftp_proxy FTP_PROXY"
Defaults env_keep += "RSYNC_PROXY"
Defaults env_keep += "no_proxy NO_PROXY"
fhem ALL=(ALL) NOPASSWD: /usr/local/bin/deebotozmo
fhem ALL=(ALL) NOPASSWD:SETENV: /usr/bin/cpanm *
fhem ALL=(ALL) NOPASSWD:SETENV: /usr/bin/perl - App\:\:cpanminus
#
# As of Debian version 1.7.2p1-1, the default /etc/sudoers file created on
# installation of the package now includes the directive:
#
#       #includedir /etc/sudoers.d
#
# This will cause sudo to read and parse any files in the /etc/sudoers.d
# directory that do not end in '~' or contain a '.' character.
#
# Note that there must be at least one file in the sudoers.d directory (this
# one will do), and all files in this directory should be mode 0440.
#
# Note also, that because sudoers contents can vary widely, no attempt is
# made to add this directive to existing sudoers files on upgrade.  Feel free
# to add the above directive to the end of your /etc/sudoers file to enable
# this functionality for existing installations if you wish!
#
# Finally, please note that using the visudo command is the recommended way
# to update sudoers content, since it protects against many failure modes.
# See the man page for visudo for more information.



Ich habe die sudoer nicht angerührt seit meinem Unfall

Otto123

Ok meine Befehl listet jetzt einfach den Inhalt aller Dateien im Verzeichnis /etc/sudoers.d - da gibt es jetzt offenbar bei Dir ein paar Dinge die mir unklar sind. Aber lassen wir das erstmal

Schau mal bitte mit dem Befehl:
which deebotozmo
Wenn da als Antwort /usr/local/bin/deebotozmo kommt, kann das mMn nie funktioniert haben!
Die Zeile müsste dann so aussehen:
fhem ALL=(ALL) NOPASSWD: /usr/local/bin/deebotozmo *

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Thomas0401

nach Eingabe von
wich deebotozmo

kommt dieser Pfad
/home/pi/.local/bin/deebotozmo

Otto123

Das ist ja ein völlig anderer Pfad :o
und in der FHEM Oberfläche?
{qx(which deebotozmo)}
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Thomas0401

ja genau und ich habe keine Ahnung warum, ich habe wirklich nichts geändert

Pfad aus der FHEM-Oberfläche
/usr/local/bin/deebotozmo

VG Thomas

Otto123

Das ist doch npm Zeugs? Da hast Du beim letzten setup offenbar unter user pi installiert und option -g vergessen.

Aber für Dein fhem user sudo weißt Du jetzt was zu tun ist?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Thomas0401


Otto123

#112
Hab ich doch aber in #106 gesagt?
Du musst Deine Datei im Pfad /etc/sudoers.d/ - ich weiß leider nicht wie sie heisst - mit
Edit: Dateiname aus dem alten Thread
sudo visudo /etc/sudoers.d/011_fhem-nopasswd
Editieren und die Zeile um den Stern ergänzen
fhem ALL=(ALL) NOPASSWD: /usr/local/bin/deebotozmo *
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Thomas0401

War mir nicht ganz sicher und wollte nicht wieder eine Katastrophe verursachen.

Hab ich geändert und funktioniert wieder, vielen Dank Otto

VG Thomas

cbl

Ich hänge mich mal hier an den Thread, da es offenbar der einzige ist, in dem die Deebot diskutiert wurden.

Die Lösung finde ich interessant und stehe kurz davor, einen ECOVACS DEEBOT OZMO * zu kaufen. Die Beschreibung hier bezieht sich auf den 950. Aufgrund der geringeren Höhe (und damit einer weiteren erreichbare Fläche unter einem Schrank) würde ich das jüngere Modell T8 favorisieren. Hat jemand damit Erfahrung gesammelt? Wird der ebenfalls so funktionieren wie der 950 mit FHEM (die drei Varianten, von denen mit jüngerer Firmware nur eine funktioniert, habe ich gesehen).



Gruß
Christian

Thomas0401

#115
Hallo Christian,

ich glaube das nur Deebot 960/950/920 unterstützt wird. Das steht zumindest https://github.com/And3rsL/Deebotozmo hier so.

bzw. schau mal hier https://forum.fhem.de/index.php/topic,112149.msg1094921.html#msg1094921 da steht was über den T8

VG Thomas

laberlaib

Gude,

im ersten Post steht immernoch, dass das FW Update auf 1.8.2 die cloudfreien Steuerungsmöglichkeiten aushebelt.
Im Thread und auch aus Github heraus wird aber wohl klar, dass das nicht mehr der Fall ist sondern nur der MQTT-Port umgestellt wird.

Also klappt das alles wieder und ich kann das Ding gefahrlos mal meinen Eltern andrehen und dann bei Nichtgefallen selber abziehen und den hier nutzen?

Philipp
--
Proxmox, Homematic, G-Tags, Zigbee2MQTT, Rhasspy Sprachsteuerung im Aufbau (beta)

schwatter

#117
Nabend,

ja, es funktioniert. Zumindest mit Bumper, aber etwas frickelig. Ich konnte auch schon erfolgreich den Bot steuern. Hatte erst den Fork von Edenhaus und jetzt von Martin. Alle sets haben funktioniert. Die gets aber nicht. Daher hab ich auch nichts im ersten Post aktualisiert.
Bei Fhem Only hatte ich mein ich
ein "can not connect to port 443" oder ähnliches. Da muss jetzt wohl mit Zertifikaten gearbeitet werden oder die Art der Verbindung anders aufgebaut werden.

Feel free to test und lass und daran teilhaben. Im Moment habe ich andere Prioritäten.

Gruß schwatter

davipet

´Nabend
Ich habe mir am PrimeDay auch einen OZMO 950 gegönnt und möchte nun das Ding in FHEM integrieren.
Ich scheitere leider schon bei der Installation der Python Lib...

Die Installation läuft erstmal scheinbar normal durch. Die 3 Abhängikeiten wie in #1 beschrieben habe ich auch installiert.
Beim Aufruf von deebotozmo createconfig kommt folgender Fehler:

pi@fhemvm:~$ sudo deebotozmo createconfig
Traceback (most recent call last):
  File "/usr/local/bin/deebotozmo", line 7, in <module>
    from deebotozmo.cli import cli
  File "/usr/local/lib/python3.5/dist-packages/deebotozmo/__init__.py", line 410
    self.mop_attached: bool = False
                     ^
SyntaxError: invalid syntax


Das selbe kommt auch wenn ich es mit sudo ausführe. Es ist auch völlig egal welches Kommando. Ob createconfig, debog, help... egal. Immer der Selbe Fehler.
Daher vermute ich ein Problem bei abhängigkeiten. Ich habe eine Linux debian VM mit FHEM laufen.
Gibt es eine Möglichkeit fehlende Pakete zu identifizieren?

Danke!

Gruß

David

davipet

Nochmal ich ;)
sowas lässt mir dann ja keine Ruhe...
Ich habe also weiter probiert und einfach mal den mutmaßlichen Fehler in Zeile 410 der Datei behoben.
Aus:
self.mop_attached: bool = False

wurde:
self.mop_attached = False


Und schon geht einiges mehr!
Also Einrichten hat nun soweit geklappt und ich kann den Kollegen aus FHEM zum Arbeiten überreden.

Aber leider nicht so ganz alles.
Im Terminal versuche ich zu debuggen und bekomme für verschiedene Kommandos keine Rückmeldung. Also gar nichts.
getrooms oder stats geben nichts zurück.

Und bei exportlivemap bekomme ich wieder einen Fehler:

root@fhemvm:/usr/local/bin# sudo deebotozmo exportlivemap /opt/fhem/www/livemap/map.png
Traceback (most recent call last):
  File "/usr/lib/python3.5/base64.py", line 518, in _input_type_check
    m = memoryview(s)
TypeError: memoryview: a bytes-like object is required, not 'NoneType'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/bin/deebotozmo", line 11, in <module>
    sys.exit(cli())
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 1289, in invoke
    rv.append(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.5/dist-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/deebotozmo/cli.py", line 203, in exportLiveMap
    fh.write(base64.decodebytes(vacbot.live_map))
  File "/usr/lib/python3.5/base64.py", line 552, in decodebytes
    _input_type_check(s)
  File "/usr/lib/python3.5/base64.py", line 521, in _input_type_check
    raise TypeError(msg) from err
TypeError: expected bytes-like object, not NoneType



Was läuft da schief?

Danke!

David