Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [Frage] Xiaomi Vacuum cleaner

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    [Frage] Xiaomi Vacuum cleaner

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      gst666 last edited by

      So im Augenblick sind neue Erkenntnisse etwas zäh. Leider Schaffe ich es nicht mittels Bluestack meinen Air Purifier neu anzumelden. Das liegt wohl daran, das das Anfragen die eigentlich ins Netz laufen sollten ins leere laufen.

      Dabei ist mir aber eine Eigenheit aufgefallen. Resetet man das Gerät bzw. meldet es ab, so erhält es mit dem Abmelden einen neuen Token und nicht erst bei der neuen Anmeldung. Es wäre klasse, wenn einer, der den Vacuum hat und schon die neue Firmware ohne passenden Token hat, mal sein Gerät abmelden könnte. Es wird dann ein neues WLAN angezeigt. Dieses bitte auswählen und dann an die Adresse 192.168.13.1 auf den UDP Port mal das Magic Paket senden. Es würde mich interessieren, ob in diesem Augenblick das Paket übermittelt wird. Dies könnte den anderen helfen.

      1 Reply Last reply Reply Quote 0
      • bahnuhr
        bahnuhr Forum Testing Most Active last edited by

        @skorpil:

        …und noch eine kurze Frage resp. Hinweis. Obwohl ich ja das Gerät noch gar nicht habe, habe ich mir aber schon die App unter iOS heruntergeladen und mich angemeldet. Beim "Spielen " habe ich gesehen, dass unter meinem Profilbild eine 10-stellige Zahl steht.

        Hat die eine Bedeutung für unsere Fragestellungen? Hat die was mir dem Token zu tun? `

        Hallo,

        ich hab auch so eine 10-stellige Zahl dort stehen.

        Weißt du mittlerweile für was die gut ist?

        P.S.

        Mein robot ist auch noch nicht da.

        Bestellt am 05.02.

        shipped out am 17.02.

        Bei Hermes bisher noch nicht angekommen.

        @all

        Gibt es einen Ablauf bei Erstinbetriebnahme des Geräte den man beachten sollte.

        z.B. gleich von Anfang an die Wifi signale auffangen.

        mfg

        1 Reply Last reply Reply Quote 0
        • Meistertr
          Meistertr Developer last edited by

          Habe heute die Anzeige bekommen dass ein Firmware Update bereit steht. Werde morgen früh den Roboter mal neu anmelden und schauen was er macht und danach das ganze mal mit der neuen Firmware ausprobieren. Vll ist der Token ja wieder da…

          Gesendet von meinem E5823 mit Tapatalk

          1 Reply Last reply Reply Quote 0
          • S
            skorpil last edited by

            @bahnuhr:

            1. nein, keine Ahnung, was das ist. Aus dem Forum hat ja leider auch niemand dazu geantwortet;-(

            2. bestellt am 28.1. Status:

            ` > 2017-02-12 19:12:00 Parcel departure in Shenzhen Sorting Centre

            2017-02-13 06:33:00 Parcel departure arrive in HongKong Sorting Centre

            2017-02-14 10:25:00 Parcel is leaving Hong Kong Airport

            2017-02-15 10:35:00 United Kingdom Lonton Sorting Centre

            2017-02-16 08:15:00 Information sent to Germany `

            Warten wir es ab!

            1 Reply Last reply Reply Quote 0
            • bahnuhr
              bahnuhr Forum Testing Most Active last edited by

              @skorpil

              du hast ja viel da stehen; bei mir steht nur:
              filename="bild1.jpg" index="0">~~

              Die 10 stellige Nr. scheint wohl die account Nr. zu sein. Also wahrscheinlich eine laufende Nr. bzgl. unserer Anmeldung bei mi home.

              mfg

              1 Reply Last reply Reply Quote 0
              • G
                gst666 last edited by

                Ein Firmware-Update würde ich zur Zeit nicht machen, wenn es keinen zwingenden Grund gibt.

                Der Token hat soweit ich erkennen kann nichts mit dem Account zu tun. Dafür spricht auch, dass wenn das Gerät abgemeldet wird dieses schon einen neuen Token erzeugt, der bei dem Anmelden dann gleich bleibt. Spannend ist was bei der Anmeldung geschieht. Im Auslieferungszustand spannt das Gerät ein eigenes WLAN auf. die iOS-App ist auch nur dann bereit ein neues Gerät anzulernen, wenn es sich mit der passenden WLAN-ID verbindet. Interessant wäre es, wenn jemand diese Kommunikation mitschneiden könnte. Ich habe es bislang leider nicht geschafft. Als Ausweg werden ich mittels eines RASPI mal ein solches Gerät imitieren, um zu sehen, was dann passiert.

                Auf jeden Fall wird die WLAN-ID dann gesetzt. Ich vermute, dass im Auslieferungszustand irgendwie auch der Token abgefragt werden kann. Ich gehe davon aus, dass der Token nicht in der Cloud gespeichert ist, da das Gerät ja gerade nicht einem Account zugeordnet ist. Darüber hinaus kann man das Gerät auch mittels Tasten am Gerät (zumindest bei meinem Air Purifier) zurücksetzen und es ist keine Verbindung zum Netzwerk nötig. Daher muss das Gerät den Token am Anfang irgendwie mal bekanntgeben und er wird dann wohl in der Cloud gespeichert.

                Die Nummer in der Cloud scheint tatsächlich nur eine fortlaufende Nummer zu sein, die keinen Bezug zu dem Token hat.

                1 Reply Last reply Reply Quote 0
                • G
                  gst666 last edited by

                  So, nun ist es Zeit für das Angekündigte Skript:

                  ! #!/usr/bin/python
                  ! # X… Pocket Knife
                  ! # TODO:
                  ! # Verschluesselung
                  ! # Ergebnis vom Command ausgeben
                  ! import sys
                  ! import socket
                  ! import struct
                  ! import hashlib
                  ! import argparse
                  ! # https://cryptography.io/
                  ! from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes
                  ! from cryptography.hazmat.backends import default_backend
                  ! from cryptography.hazmat.primitives import padding
                  ! _backend = default_backend()
                  ! TARGET_IP = ""
                  ! TARGET_PORT = 54321
                  ! parser = argparse.ArgumentParser(description=("Control Xiaomi Mi Home Wifi devices"))
                  ! parser.add_argument("-ip", type=str, help="IP or DNS-Name of the device")
                  ! parser.add_argument("-info", help="get info of the device", action="store_true")
                  ! parser.add_argument("-power", type=str, choices=["on", "off"], help="turn Air Purifier 'on' or 'off'")
                  ! parser.add_argument("-mode", type=str, choices=["auto", "silent","favorite"], help="set mode of Air Purifier to 'auto','silent' or 'favorite'")
                  ! parser.add_argument("-token", type=str, help="set token for cryption/encryption (only for experts)")
                  ! parser.add_argument("-cmd", type=str, help="encrypt given command and send to device (only for experts)")
                  ! parser.add_argument("-decode", type=str, help="decipher a given cipher with given token (only for experts)")
                  ! #parser.add_argument("–print-raw", action='store_true')
                  ! args = parser.parse_args()
                  ! class XiaomiPacket():
                  ! def init(self):
                  ! self.magic = "2131".decode('hex')
                  ! self.length = "0020".decode('hex')
                  ! self.unknown1 = "FFFFFFFF".decode('hex')
                  ! self.devicetype = "FFFF".decode('hex')
                  ! self.serial = "FFFF".decode('hex')
                  ! self.stamp = "FFFFFFFF".decode('hex')
                  ! self.checksum = "ffffffffffffffffffffffffffffffff".decode('hex')
                  ! self.data = ""
                  ! self.token = ""
                  ! def setRaw(self, raw):
                  ! self.magic = raw[ 0: 2]
                  ! self.length = raw[ 2: 4]
                  ! self.unknown1 = raw[ 4: 8]
                  ! self.devicetype = raw[ 8:10]
                  ! self.serial = raw[10:12]
                  ! self.stamp = raw[12:16]
                  ! self.checksum = raw[16:32]
                  ! self.data = raw[32:]
                  ! if self.length=="0020".decode('hex'):
                  ! self.token=self.checksum
                  ! return
                  ! def updateChecksum(self):
                  ! self.checksum = md5(self.magic+self.length+self.unknown1+self.devicetype+self.serial+self.stamp+self.token+self.data)
                  ! return
                  ! def getRaw(self):
                  ! if len(self.data)>0:
                  ! self.updateChecksum()
                  ! raw = self.magic+self.length+self.unknown1+self.devicetype+self.serial+self.stamp+self.checksum+self.data
                  ! return raw
                  ! else:
                  ! raw = self.magic+self.length+self.unknown1+self.devicetype+self.serial+self.stamp+self.checksum
                  ! return raw
                  ! def getPlainData(self):
                  ! plain = decrypt(self.token, self.data)
                  ! return plain
                  ! def setPlainData(self,plain):
                  ! self.data = encrypt(self.token, plain)
                  ! length = len(self.data)+32
                  ! self.length = format(length, '04x').decode('hex')
                  ! self.updateChecksum()
                  ! return
                  ! def setHelo(self):
                  ! self.magic = "2131".decode('hex')
                  ! self.length = "0020".decode('hex')
                  ! self.unknown1 = "FFFFFFFF".decode('hex')
                  ! self.devicetype = "FFFF".decode('hex')
                  ! self.serial = "FFFF".decode('hex')
                  ! self.stamp = "FFFFFFFF".decode('hex')
                  ! self.checksum = "ffffffffffffffffffffffffffffffff".decode('hex')
                  ! self.data = ""
                  ! self.token = ""
                  ! return
                  ! def findXiaomi(self):
                  ! sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
                  ! sock.bind(('', 0))
                  ! sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
                  ! Packet = XiaomiPacket()
                  ! Packet.setHelo()
                  ! sock.sendto(Packet.getRaw(), ('<broadcast>', TARGET_PORT))
                  ! d = sock.recvfrom(1024)
                  ! print d[1][0]
                  ! return d[1][0]
                  ! def printPacket(self,txt):
                  ! txt=(txt[0:11]+" ")[0:12]
                  ! txt=txt+self.getRaw().encode('hex')
                  ! txt=txt[:160]
                  ! print txt
                  ! return
                  ! def md5(data):
                  ! checksum = hashlib.md5()
                  ! checksum.update(data)
                  ! return checksum.digest()
                  ! def key_iv(token):
                  ! key = md5(token)
                  ! iv = md5(key+token)
                  ! return (key, iv)
                  ! def encrypt(token, plaintext):
                  ! key, iv=key_iv(token)
                  ! padder = padding.PKCS7(128).padder()
                  ! padded_plaintext = padder.update(plaintext)+padder.finalize()
                  ! cipher = Cipher(algorithms.AES(key),modes.CBC(iv),backend=_backend)
                  ! encryptor = cipher.encryptor()
                  ! return encryptor.update(padded_plaintext)+encryptor.finalize()
                  ! def decrypt(token, ciphertext):
                  ! key, iv = key_iv(token)
                  ! cipher = Cipher(algorithms.AES(key),modes.CBC(iv),backend=_backend)
                  ! decryptor = cipher.decryptor()
                  ! padded_plaintext = decryptor.update(bytes(ciphertext))+decryptor.finalize()
                  ! unpadder = padding.PKCS7(128).unpadder()
                  ! unpadded_plaintext = unpadder.update(padded_plaintext)+unpadder.finalize()
                  ! return unpadded_plaintext
                  ! def GetSessionInfo():
                  ! try:
                  ! sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
                  ! except socket.error:
                  ! print('Failed to create socket')
                  ! sys.exit()
                  ! try:
                  ! PACKET = XiaomiPacket()
                  ! PACKET.setHelo()
                  ! #PACKET.printPacket('HELO')
                  ! sock.sendto(PACKET.getRaw(), (TARGET_IP, TARGET_PORT))
                  ! sock.settimeout(1.0)
                  ! try:
                  ! d = sock.recvfrom(1024)
                  ! except socket.timeout:
                  ! print "Timeout"
                  ! sys.exit()
                  ! PACKET.setRaw(d[0])
                  ! if args.token:
                  ! PACKET.token=args.token.decode('hex')
                  ! #PACKET.printPacket('HELO answer')
                  ! if PACKET.devicetype.encode('hex')=="034c":
                  ! print "Device Type: Xiaomi Mi Robot Vacuum"
                  ! elif PACKET.devicetype.encode('hex')=="00c4":
                  ! print "Device Type: Xiaomi Smart Mi Air Purifier"
                  ! else:
                  ! print "Device Type: "+PACKET.devicetype.encode('hex')
                  ! print "Token: "+PACKET.token.encode('hex')
                  ! return PACKET
                  ! except socket.error, msg:
                  ! print('Error Code: '+str(msg[0])+' Messge: '+msg[1])
                  ! sys.exit()
                  ! def SendRcv(PACKET):
                  ! try:
                  ! sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
                  ! except socket.error:
                  ! print('Failed to create socket')
                  ! sys.exit()
                  ! try:
                  ! #PACKET.printPacket('Send')
                  ! #print PACKET.getPlainData()
                  ! sock.sendto(PACKET.getRaw(), (TARGET_IP, TARGET_PORT))
                  ! sock.settimeout(1.0)
                  ! d = sock.recvfrom(1024)
                  ! PACKET.setRaw(d[0])
                  ! #print PACKET.getPlainData()
                  ! #print PACKET.data.encode('hex')
                  ! return
                  ! except socket.error, msg:
                  ! print('Error Code: '+str(msg[0])+' Messge: '+msg[1])
                  ! sys.exit()
                  ! return
                  ! #Packet.setPlainData('{"id":6148,"method":"get_prop","params":["aqi","led","mode","filter1_life","buzzer","favorite_level","temp_dec","humidity","motor1_speed","led_b","child_lock"]}')
                  ! if args.ip:
                  ! TARGET_IP = args.ip
                  ! else:
                  ! Packet = XiaomiPacket()
                  ! TARGET_IP = Packet.findXiaomi()
                  ! if args.decode:
                  ! if not args.token:
                  ! print "For this option the token argument is needed!"
                  ! sys.exit()
                  ! Packet = XiaomiPacket()
                  ! if args.decode.decode('hex')[0:2]=='!1':
                  ! Packet.data=args.decode.decode('hex')[32:]
                  ! else:
                  ! Packet.data=args.decode.decode('hex')
                  ! Packet.token=args.token.decode('hex')
                  ! print Packet.getPlainData()
                  ! if args.info:
                  ! Packet = GetSessionInfo()
                  ! k = key_iv(Packet.token)
                  ! if args.power:
                  ! Packet = GetSessionInfo()
                  ! if Packet.devicetype.encode('hex')!="00c4":
                  ! print "ERROR: Air Purifier not recognized!"
                  ! sys.exit()
                  ! print args.power
                  ! if args.power=="on":
                  ! Packet.setPlainData('{"id":6149,"method":"set_power","params":["on"]}')
                  ! SendRcv(Packet)
                  ! else:
                  ! Packet.setPlainData('{"id":6149,"method":"set_power","params":["off"]}')
                  ! SendRcv(Packet)
                  ! if args.mode:
                  ! Packet = GetSessionInfo()
                  ! if Packet.devicetype.encode('hex')!="00c4":
                  ! print "ERROR: Air Purifier not recognized!"
                  ! sys.exit()
                  ! print args.mode
                  ! if args.mode=="auto":
                  ! Packet.setPlainData('{"id":6149,"method":"set_mode","params":["auto"]}')
                  ! SendRcv(Packet)
                  ! elif args.mode=="silent":
                  ! Packet.setPlainData('{"id":6149,"method":"set_mode","params":["silent"]}')
                  ! SendRcv(Packet)
                  ! else:
                  ! Packet.setPlainData('{"id":6149,"method":"set_mode","params":["favorite"]}')
                  ! SendRcv(Packet)
                  ! if args.cmd:
                  ! Packet = GetSessionInfo()
                  ! Packet.setPlainData(args.cmd)
                  ! SendRcv(Packet)
                  ! print Packet.getPlainData()</broadcast>

                  Zur Installation:

                  Es muss Python (Version 2.x) installiert sein. Darüber hinaus muss cryptography installiert sein (pip Install cryptography / sollte es Probleme geben, fehlen evtl. noch andere Bibliotheken; war auf Raspi so ne Orgie)

                  Zur Benutzung:

                  xpn -h gibt Hilfe aus

                  mit -ip kann eine IP vorgegeben werden.

                  mit -info kann man sich den Token anzeigen lassen

                  mit -token kann man dem Programm einen Token vorgeben

                  mit -decode (Token muss mit -token angegeben werden) kann man eine Nachricht entziffern

                  Falls man einen Mir Purifier hat kann man mit -power und -mode ihn steuern. Für Vaccum werde ich das noch ergänzen.

                  Das ganze funktioniert nur, wenn das Gerät freiwillig den Token freigibt (häng von Firmware-Version ab). Hier forsche ich noch ein wenig.

                  1 Reply Last reply Reply Quote 0
                  • Meistertr
                    Meistertr Developer last edited by

                    ich habe gerade ein bisschen rum gespielt. Beim Abmelden werden keine daten gesendet (Also kein neuer Toker oder zu mindestens nicht für mich sichtbar). Das wieder anmelden konnte ich nicht über bluestack machen, da er Bluetooth haben wollte, also konnte ich da auch leider keine Daten abgreifen. Dann habe ich das Update gemach (jaaaaaa ich war neugierig was passiert…) Leider auch hier kein erfolg, habe die ganze zeit mit geschnitten aber keine informativen Daten gefunden.

                    Schade drum, wäre schön wenn der Roboter vollkommen durchsichtig wäre....

                    Ich habe die Befürchtung, dass der Roboter auf die Cloud angewiesen ist und ohne sie der Token nicht ermittelt werden kann...

                    1 Reply Last reply Reply Quote 0
                    • Meistertr
                      Meistertr Developer last edited by

                      Die Hoffnung stirbt zuletzt.

                      @ gst666 kannst du mal schauen ob das der Token für die Nachricht ist….

                      Token: D14BD369DEAB115E7C4C872E9897C8D2

                      Nachricht: 213100600000000002f20d8f58b1c57b473a37bf4f99795bb471b4c2d52ec9852449cae7e1029ed72090ab523cb6758655368a399bdf20ec86bef10404ec41df7eb5dc825288b00b79fc4b3b2bb6d1a7183e5165cfe5e88529e00228d2e7302d

                      1 Reply Last reply Reply Quote 0
                      • G
                        gst666 last edited by

                        > @ gst666 kannst du mal schauen ob das der Token für die Nachricht ist….

                        Leider nein.

                        Ich denke, ich habe einen Mechanismus gefunden. Wenn das Gerät im reseteten Zustand sich befindet, so scheint es bei der HELO Nachricht den Key preiszugeben. Hast Du es geschafft, dass Skript zu installieren? Dann resete mal das Gerät. Das Gerät hat dann eine WLAN-SSID, die mit zhimi… beginnt. In dieses WLAN einloggen. dann das Skript ausführen:

                        xpn -info

                        Dann wird der token vermutlich angezeigt.

                        Wäre schön zu hören, dass es klappt.

                        1 Reply Last reply Reply Quote 0
                        • G
                          gst666 last edited by

                          Noch einen Zusatz:

                          Über Bluestack habe ich die Anmeldung auch nicht hinbekommen. Habe daher mit dem Raspi eine Art Emulator gebaut. Den Anmeldevorgang habe ich wahrscheinlich auch dekodiert. Muss noch einen Gegentest mit dem wahren Gerät machen.

                          1 Reply Last reply Reply Quote 0
                          • G
                            gst666 last edited by

                            So, jetzt habe ich den Anmeldevorgang identifiziert:

                            Sobald der Router resetet ist kann man die WLAN-Daten und die Verknüpfung zum Account herstellen

                            {"id":29,"method":"miIO.config_router","params":{"country_domain":"sg","ssid":"WLANKENNUNG","uid":123456789,"gmt_offset":3600,"passwd":"geheim"}}'
                            

                            Dabei muss "WLANKENNUNG" durch die SSID und "geheim" durch das WLAN-Password ersetzt werden.

                            Des Weiteren muss die richtige uid eingetragen werden. Dies ist die Nummer, die unter Profil in der App gesehen werden kann. Hier bitte aufpassen, da sich sonst jemand über ein neues Gerät "freut".

                            {"id":36,"method":"miIO.stop_diag_mode","params":""}
                            

                            Hiermit wird das Gerät neu gestartet. Wenn man sich zu viel Zeit lässt, geht das auch automatisch. Damit meldet sich das Device in der Cloud an und ist mittels der App auch wieder erreichbar.

                            1 Reply Last reply Reply Quote 0
                            • Meistertr
                              Meistertr Developer last edited by

                              Reicht es das device in der app abzumelden? Oder muss ich das über die Reset Taste machen?

                              Gesendet von meinem E5823 mit Tapatalk

                              1 Reply Last reply Reply Quote 0
                              • G
                                gst666 last edited by

                                Ist beides dasselbe.

                                1 Reply Last reply Reply Quote 0
                                • Bluefox
                                  Bluefox last edited by

                                  @gst666:

                                  So, jetzt habe ich den Anmeldevorgang identifiziert:

                                  Sobald der Router resetet ist kann man die WLAN-Daten und die Verknüpfung zum Account herstellen

                                  {"id":29,"method":"miIO.config_router","params":{"country_domain":"sg","ssid":"WLANKENNUNG","uid":123456789,"gmt_offset":3600,"passwd":"geheim"}}'
                                  

                                  Dabei muss "WLANKENNUNG" durch die SSID und "geheim" durch das WLAN-Password ersetzt werden.

                                  Des Weiteren muss die richtige uid eingetragen werden. Dies ist die Nummer, die unter Profil in der App gesehen werden kann. Hier bitte aufpassen, da sich sonst jemand über ein neues Gerät "freut".

                                  {"id":36,"method":"miIO.stop_diag_mode","params":""}
                                  

                                  Hiermit wird das Gerät neu gestartet. Wenn man sich zu viel Zeit lässt, geht das auch automatisch. Damit meldet sich das Device in der Cloud an und ist mittels der App auch wieder erreichbar. `
                                  Was ist dieses Paket mit WLANKENNUNG. Der wird doch sicherlich nicht im KlarJSON übergeben, sondern mit dem Token verschlüsselt? Dann braucht man immer noch den Token?

                                  1 Reply Last reply Reply Quote 0
                                  • Meistertr
                                    Meistertr Developer last edited by

                                    @Bluefox:

                                    Was ist dieses Paket mit WLANKENNUNG. Der wird doch sicherlich nicht im KlarJSON übergeben, sondern mit dem Token verschlüsselt? Dann braucht man immer noch den Token? `

                                    Es wird nicht im Klartext gesendet aber das ist egal, da beim Abgemeldeten Gerät der Token gesendet wird!!

                                    Habe es gerade Ausprobiert, Robby abgemeldet und dann mit meinem Windows Rechner in das Wlan vom Roboter angemeldet. Die IP vom Robby ist bei mir 192.168.8.1 und dann habe ich im über Tacket Sender die HALO Nachrichnt gesendet und siehe da !!!!!!!! Der Tocken wird gesendet!!!

                                    @gst666 das Programm habe ich noch nciht installiert, muss schauen ob ich es Heute noch schaffe, muss noch auf Familienfeier…..

                                    1 Reply Last reply Reply Quote 0
                                    • G
                                      gst666 last edited by

                                      @Bluefox
                                      > Was ist dieses Paket mit WLANKENNUNG. Der wird doch sicherlich nicht im KlarJSON übergeben, sondern mit dem Token verschlüsselt? Dann braucht man immer noch den Token?

                                      Einmal muss dem Gerät die Daten des WLANs mitgeteilt werden. Danach nie wieder. Die Daten werden natürlich mit dem Token verschlüsselt. Dafür das Progrämmchen.

                                      @Meistertr

                                      Super, dann haben wir jetzt eine Möglichkeit den Token zu gewinnen. Trotzdem werde ich mal irgendwann beigehen und versuchen, die Kommunikation des Geräts mit dem Internet zu belauschen (hier wird die SSL Verschlüsselung spannend).

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        skorpil last edited by

                                        Guten Morgen, Meistertr und gst666

                                        Ich verfolge hier mit bewundernder Aufmerksamkeit was ihr postet, obwohl ich nur sehr wenig davon verstehe, da mir das Hintergrundwissen fehlt.

                                        Meine Frage an Euch: wie werden sich Euere Erkenntnisse auf den zugehörigen iobroker Adapter für den Staubsauger konkret auswirken?

                                        Bzw.: könntet ihr mal für Dummies eine step by step Erklärung posten?

                                        Also, wie sollte man vorgehen, um den Staubsauger in iobroker einzubinden? Oder sind wir noch nicht soweit? Letzte Frage zeugt davon, dass ich nur rudimentär verstehe, um was es hier geht. Verstanden habe ich, dass ihr einen Weg gefunden habt, den Token zu finden. …;-) Was macht man dann mit dem Token?

                                        Danke jedenfalls für Euere Arbeit im voraus!

                                        1 Reply Last reply Reply Quote 0
                                        • bahnuhr
                                          bahnuhr Forum Testing Most Active last edited by

                                          Ich verfolge hier mit bewundernder Aufmerksamkeit was ihr postet, obwohl ich nur sehr wenig davon verstehe, da mir das Hintergrundwissen fehlt. 
                                          
                                          

                                          Ich sehe das auch so; ist schon klasse was die Jungs hier aufstellen.

                                          Bzw.: könntet ihr mal für Dummies eine step by step Erklärung posten? 
                                          

                                          Gibts sowas schon. Würde mich auch interessieren.

                                          Der Robo ist zwar noch nicht da; wäre aber interessant zu wissen was man machen muss

                                           Letzte Frage zeugt davon, dass ich nur rudimentär verstehe, um was es hier geht. Verstanden habe ich, dass ihr einen Weg gefunden habt, den Token zu finden. ...;-) Was macht man dann mit dem Token?
                                          

                                          Auch das sehe ich genauso; wahrscheinlich sind wir aber noch in einem Stadium was einfach noch zu früh ist.

                                          Was ich bisher mitgenommen habe ist:

                                          • wenn möglich kein update machen

                                          • den wlan verkehr von anfang mitschneiden

                                          richtig soweit ?

                                          mfg

                                          Dieter

                                          1 Reply Last reply Reply Quote 0
                                          • G
                                            gst666 last edited by

                                            Theoretisch könntest Du über das Skript alles steuern. Aus Javascript müsstest Du per exec das Skript ausführen. Ist natürlich noch nicht die Endlösung. Wenn jemand Lust hat und in der Lage ist Adapter zu basteln, dann bin ich gerne bereit mich mit ihm mal ein Wochenende zusammenzusetzen um den Adapter zu basteln. Am Besten wäre es, wenn die Person auch einen Vakuum hätte.

                                            Bezüglich Updates kannst Du die jetzt machen. Wenn man das Gerät in den Konfigurationsmodus setzt (Reset) erhält man den Token (wurde von Meistertr bestätigt).

                                            Wenn Du das Gerät hast wäre es das Beste, dass bevor Du es konfigurierst Dich mit einem Computer in das WLAN des Geräts einloggst und ein HELO-Nachricht schickst (wie das geht wurde weiter oben beschrieben). Wenn du das Skript nimmst, dann geht das mit "xpn -info", die IP such das Programm dann selbständig. Token sicher notieren.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            897
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            204
                                            2196
                                            798021
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo