Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. XIAOMI ROSSOU SS4 Ventilator mit dem IOBroker steuern

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    XIAOMI ROSSOU SS4 Ventilator mit dem IOBroker steuern

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

      Re: Xiaomi Rosou SS4
      Vor sehr langer Zeit hatte ich hier die Frage gestellt, ob es möglich ist den Xiaomi Rosou SS4 Ventilator mit dem IOBroker zu steuern. Lange Zeit gab es keine Lösung dafür. Immer mal wieder habe ich verschiedene Ansätze probiert, z.B mit dem miio Adapter für den IOBroker. Nachdem die Hürden mit dem Token gelöst waren (Den kann man z.B. mit dem Mihome-vacuum Adapter bequem auslesen), wurde der Ventilator zwar in den Objekten angezeigt, jedoch war nicht wirklich zu steuern. Ich hatte auch mehrere issues bei Github angelegt - ohne Erfolg. An dem Miio Adapter wird wohl nicht mehr entwickelt.
      Vor einiger Zeit bin ich nun auf Github auf das Projekt python-miio aufmerksam. Mit den Tools aus dem Projekt, war es mir möglich einige neue Versuche mit dem Ventilator zu starten, letztendlich ebenfalls ohne Erfolg. Auch hier habe ich ein issue eröffnet. Nachdem auch da lange Zeit nichts passiert, kam dann gestern doch ein Kontakt zustande und dank der tatkräftigen Unterstützung war relativ schnell eine Unterstützung für den Ventilator zusammen zu stellen. Der Rossou SS4 wird also sehr bald von python-miio unterstützt.
      In der Zwischenzeit ist das auch durch Raw Kommandos möglich:
      Hier die wichtigsten Befehle:
      Zunächst muss man natürlich python-miio installieren. Dafür ist Phyton nötig, was ebenfalls installiert sein sollte.
      Dies ist hier beschrieben!
      Damit der IOBroker mit den Tools von python-miio zusammen arbeiten kann, mit

      sudo pip3 install python-miio
      

      installieren.
      Nun die wichtigsten Befehle:

      Einschalten:

      miiocli device --ip IP  --token TOKEN raw_command set_power [1]
      

      Ausschalten:

      miiocli device --ip IP --token TOKEN raw_command set_power [0]
      

      Ventilator in Sleep- Mode;

      miiocli device --ip IP --token TOKEN raw_command set_mode [1]
      

      Strong Mode:

      miiocli device --ip IP --token TOKEN raw_command set_mode [2]
      

      Natürlicher Modus:

      miiocli device --ip IP --token TOKEN raw_command set_mode [3]
      

      Lüftergeschwindigkeit (0-100)

      miiocli device --ip IP --token TOKEN raw_command set_blow [50]
      

      Ton an:

      miiocli device --ip  IP --token TOKEN raw_command set_sound [1]
      

      Ton aus:

      miiocli device --ip IP--token TOKEN raw_command set_sound [0]
      

      Schwenken ein:

      miiocli device --ip IP --token TOKEN raw_command set_yaw [1]
      

      Schwenken aus:

      miiocli device --ip  IP --token TOKEN raw_command set_yaw [0]
      

      Timer setzen (0 für aus und 1-540 für die Minutenzahl)

      miiocli device --ip IP --token TOKEN raw_command set_timer [120]
      

      Dies sind die Kommandos, die auch mit der aktuellen Version von phyton-miio funktionieren. In der zukünftigen Version ist der Aufruf dann einfacher:

      $ miiocli fanleshow
      Usage: miiocli fanleshow [OPTIONS] COMMAND [ARGS]...
      
      Options:
        --ip TEXT     [required]
        --token TEXT  [required]
        --help        Show this message and exit.
      
      Commands:
        delay_off      Set delay off minutes.
        info           Get miIO protocol information from the device.
        off            Power off.
        on             Power on.
        raw_command    Send a raw command to the device.
        set_buzzer     Set buzzer on/off.
        set_mode       Set mode.
        set_oscillate  Set oscillate on/off.
        set_speed      Set natural level.
        status         Retrieve properties.
      

      Im IOBroker kann man dann z.B. mit dem Exec Blockly die Befehlszeile ausführen lassen:
      Exec.png
      Ich hoffe, dass damit auch andere Nutzer etwas anfangen können!

      1 Reply Last reply Reply Quote 1
      • P
        Pittini Developer last edited by

        Das is super interessant was Du da machst, ich bin nämlich auch grad an nem Xiaomi Device (Purifier 3H) dran, versuchte aber einen anderen Weg, nämlich über die node-mihome. Leider schaff ichs bisher nur die Daten vom Gerät auszulesen, schreiben mag es noch ned. Vieleicht kann man da gemeinsam was auf die Füße stellen?

        H 1 Reply Last reply Reply Quote 0
        • H
          hilde0407 @Pittini last edited by hilde0407

          @Pittini Gerne! Soweit es meine Zeit zulässt! Von dem node-mihome Ansatz habe ich auch bereits gelesen (dort wird auch der Rossou SS4 unterstützt), nur bin ich da auch nicht weiter gekommen! Der Purifier 3H wird vieleicht auch von python-miio unterstützt! Da kann ich Dir möglicherweise helfen!
          Mehr Infos findest Du auch auf der Github Seite von python-miio!

          P 1 Reply Last reply Reply Quote 1
          • P
            Pittini Developer @hilde0407 last edited by

            @hilde0407 Scheint unterstützt zu werden. Aber was ich mich grad frag, gut ich kann via iobroker via exec den Kommandozeilenbefehl absetzen. Aber wie krieg ich die aktuellen states aus "status" in den iobroker?

            H 1 Reply Last reply Reply Quote 0
            • H
              hilde0407 @Pittini last edited by hilde0407

              @Pittini Mit einem get Prop Kommando:

              miiocli device --ip IP --token TOKEN raw_command get_prop "['power', 'mode', 'blow', 'timer', 'sound', 'yaw', 'fault']"
              

              Man kann auch einzelne States abfragen z.B. nur power, dann einfach den Rest weg lassen!
              In einem Blockly geht das so:
              Blockly.jpg

              Aber aufpassen! Die result Variable muss man noch weiter bearbeiten, es wird darin ein String geschrieben! In Deinem Fall (das Gerät wird bereits offiziell unterstützt), sollte auch der status Befehl ebenfalls in einem Exec Blockly und dem Abspeichern via debug in eine Variable funktionieren!

              P 1 Reply Last reply Reply Quote 0
              • P
                Pittini Developer @hilde0407 last edited by Pittini

                @hilde0407 Hmm, ich kann machen was ich will, das einzige was funktioniert ist "info".

                pittini@Iobroker:~$ miiocli device --ip 192.168.2.136 --token 4ff8a96292d0451c5148142a0a851e4f  info
                Model: zhimi.airpurifier.mb3
                Hardware version: esp32
                Firmware version: 2.0.7
                
                

                Bei allem anderen krieg ich:

                pittini@Iobroker:~$ miiocli device --ip 192.168.2.136 --token 4ff8a96292d0451c5148142a0a851e4f raw_command set_power "[0]"
                Running command raw_command
                Error: {'code': -5001, 'message': 'command error'}
                
                

                Habs mit 2 verschiedenen Devices (AirPurifier und AirHumidifier) versucht, mit identischem Ergebnis. Hast Du da ne Idee dazu?

                Die Befehlsliste des Devicetyps spuckt es aus:

                pittini@Iobroker:~$ miiocli airpurifier --help
                Usage: miiocli airpurifier [OPTIONS] COMMAND [ARGS]...
                
                Options:
                  --ip TEXT     [required]
                  --token TEXT  [required]
                  --help        Show this message and exit.
                
                Commands:
                  info                Get miIO protocol information from the device.
                  off                 Power off.
                  on                  Power on.
                  raw_command         Send a raw command to the device.
                  reset_filter        Resets filter hours used and remaining life.
                  set_auto_detect     Set auto detect on/off.
                  set_buzzer          Set buzzer on/off.
                  set_child_lock      Set child lock on/off.
                  set_extra_features  Storage register to enable extra features at the app.
                  set_favorite_level  Set favorite level.
                  set_learn_mode      Set the Learn Mode on/off.
                  set_led             Turn led on/off.
                  set_led_brightness  Set led brightness.
                  set_mode            Set mode.
                  set_volume          Set volume of sound notifications [0-100].
                  status              Retrieve properties.
                
                

                PS: In Deinen Beispielen oben sind glaub paar Tippfehler bzw Wechselstabenverbuchsler bei Schwenken ein und aus hats iwie die " und [ verhaut und beim Timer setzen sind keine ", was stimmen kann, aber da überall welche sind...

                H 1 Reply Last reply Reply Quote 0
                • H
                  hilde0407 @Pittini last edited by hilde0407

                  @Pittini Danke für die Tippfehlerhinweise! Ich habe es berichtigt! Die Anführungszeichen sind nicht nötig!

                  Nun zu Deinem Problem! Ich war der Meinung, dass Du bereits geschrieben hattes, dass phyton-miio bereits Dein Gerät unterstütz! Du kannst aber scheinbar das Gerät damit nicht steuern, was bedeutet, das phyton-miio dein Gerät noch nicht unterstützt!
                  Was ich finden konnte, dass Dein Gerät von Homebridge unterstützt wird.
                  Ansonsten hier Kommandos zum steuern, die ich gefunden habe, jedoch keine Gewähr, ob es funktioniert!

                  Einschalten:

                  miiocli device --ip IP --token TOKEN raw_command set_properties '[{"did":"MYDID","piid":2,"siid":2,"value":true}]'
                  

                  Ausschalten:

                  miiocli device --ip IP --token TOKEN raw_command set_properties '[{"did":"MYDID","piid":2,"siid":2,"value":false}]'
                  

                  Fanspeed einstellen (Stufe 1 bis 3)

                  miiocli device --ip IP --token TOKEN raw_command set_properties '[{"did":"MYDID","siid":2,"piid":4,"value":1}]'
                  miiocli device --ip IP --token TOKEN raw_command set_properties '[{"did":"MYDID","siid":2,"piid":4,"value":2}]'
                  miiocli device --ip IP --token TOKEN raw_command set_properties '[{"did":"MYDID","siid":2,"piid":4,"value":3}]'
                  

                  Wenn das nicht funktionieren sollte, mal mit miio probieren:

                  Als Erstes miIO Device Library installieren:

                  npm install -g miio
                  

                  nun den Token registrieren:

                  miio tokens update IP --token TOKEN
                  

                  Dann sollte das Gerät zu steuern sein!

                  Einschalten:

                  miio protocol call IP set_properties '[{"did":"MYDID","piid":2,"siid":2,"value":true}]'
                  

                  Ausschalten:

                  miio protocol call IP set_properties '[{"did":"MYDID","piid":2,"siid":2,"value":false}]'
                  

                  Fanspeed einstellen (Level 1-3):

                  miio protocol call IP set_properties '[{"did":"MYDID","siid":2,"piid":4,"value":1}]' 
                  miio protocol call IP set_properties '[{"did":"MYDID","siid":2,"piid":4,"value":2}]' 
                  miio protocol call IP set_properties '[{"did":"MYDID","siid":2,"piid":4,"value":3}]' 
                  

                  Nachzulesen hier

                  1 Reply Last reply Reply Quote 1
                  • P
                    Pittini Developer last edited by Pittini

                    Ich gebs auf. Ich hab einfach kein Plan von python und kann nichmal den code richtig lesen.
                    Also hab ich meinen Frust nochmal an der node-mihome ausgelassen und.....es zum laufen gebracht, inkl Tokenauslesen etc. Falls Du guggen oder Betatesten oder mitmachen magst: https://github.com/Pittini/iobroker-nodemihome bzw. https://forum.iobroker.net/topic/39388/vorlage-xiaomi-airpurifier-3h-u-a-inkl-token-auslesen

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    943
                    Online

                    31.9k
                    Users

                    80.1k
                    Topics

                    1.3m
                    Posts

                    xiaomi rossou ss4
                    2
                    8
                    696
                    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