Plugin: Xiaomi MiFlora Flower Monitor

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Tweeet
    Dumb Home'r
    • 01.03.2018
    • 25

    #91
    Hilft das weiter?

    Kommentar

    • Michael M.
      LoxBus Spammer
      • 23.03.2016
      • 237

      #92
      Das ist sehr komisch - bei mir tauchen auch beim blescan die Flower Care sensoren auf. (bin aber noch auf Loxberry 1.x)
      Wenn sie per blescan nicht gefunden werden, ist der Fehler im Plugin logisch, da beide auf die gleichen Python Module aufsetzen

      Ich werde in den kommenden Tagen updaten auf Loxberry 2 und dann nochmal testen.

      Kannst du mal folgenden Befehl eingeben und die Ausgabe hier posten:

      Code:
      pip3 show bluepy
      Scheinbar ist das Problem nicht unbekannt:
      Hi I am trying to use bluepy in one of my docker containers i.e. homeassistant but ever since it got upgraded to python 3.7.3, bluepy has stopped working i.e. connecting and controlling my BLE devi...


      Noch eine Idee um das Problem einzugrenzen:

      Code:
      ./usr/local/lib/python3.7/dist-packages/bluepy/bluepy-helper
      
      dort dann "scan" (ohne Anführungszeichen) eingeben
      Zuletzt geändert von Michael M.; 24.12.2019, 09:37.

      Kommentar

      • Tweeet
        Dumb Home'r
        • 01.03.2018
        • 25

        #93
        pip3 show bluepy

        Ausgabe:
        root@loxberry-sonos-tts:~# pip3 show bluepy
        Traceback (most recent call last):
        File "/usr/local/bin/pip3", line 7, in <module>
        from pip._internal.main import main
        ModuleNotFoundError: No module named 'pip._internal.main'
        root@loxberry-sonos-tts:~#

        Kommentar


        • Tweeet
          Tweeet kommentierte
          Kommentar bearbeiten
          pip install btlewrap:

          Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
          Requirement already satisfied: btlewrap in /usr/local/lib/python3.7/dist-packages (0.0.8)
          Requirement already satisfied: typing<4,>=3 in /usr/local/lib/python3.7/dist-packages (from btlewrap) (3.7.4.1)

        • Michael M.
          Michael M. kommentierte
          Kommentar bearbeiten
          Dann versuch mal pip3 install --upgrade --force-reinstall btlewrap

        • Tweeet
          Tweeet kommentierte
          Kommentar bearbeiten
          btlewrap update auf Version 0.0.9 hat geklappt.

          ****

          root@loxberry-sonos-tts:~# pip3 list
          Package Version
          ------------------- ---------
          bluepy 1.3.0
          btlewrap 0.0.9
          certifi 2018.8.24
          chardet 3.0.4
          distro-info 0.21
          idna 2.6
          pip 19.3.1
          PyGObject 3.30.4
          python-apt 1.8.4
          pyxattr 0.6.1
          requests 2.21.0
          setuptools 41.6.0
          six 1.12.0
          typing 3.7.4.1
          unattended-upgrades 0.1
          urllib3 1.24.1
          youtube-dl 2019.1.17

          ****

          blescan zeigt den Flower care sensor leider immer noch nicht an. Bei hcitool lescan kann ich ihn sehen.
      • Tweeet
        Dumb Home'r
        • 01.03.2018
        • 25

        #94
        /usr/local/lib/python3.7/dist-packages/bluepy/bluepy-helper

        Ausgabe:
        root@loxberry-sonos-tts:~# /usr/local/lib/python3.7/dist-packages/bluepy/bluepy-helper
        # bluepy-helper.c version 1.3.0 built at 06:27:58 on Jul 16 2019
        scan
        rsp=$mgmtcode=$success
        rsp=$statstate=$scandst='(null)mtu=h0sec='low
        rsp=$scanaddr=b6FC28511D021type=h2rssi=h51flag=h0d =b02011A020A0C0BFF4C001006131A790ACBAC
        rsp=$scanaddr=b4ED38ADEBBC9type=h2rssi=h59flag=h0d =b02011A0AFF4C001005031894022A
        rsp=$statstate=$discmtu=h0sec='low

        Kommentar

        • Michael M.
          LoxBus Spammer
          • 23.03.2016
          • 237

          #95
          Hallo,

          habe die Version 2.0.1 des Plugins veröffentlicht. Ich habe erfolgreich auf einem komplett neu installierten Loxberry 2.0.0.4 auf einem Raspberry Pi 3 Model B Rev 1.2 getestet.

          Grüße

          Kommentar

          • Tweeet
            Dumb Home'r
            • 01.03.2018
            • 25

            #96

            Michael, ich bin nun mit meinem Problem etwas weitergekommen:

            - hcitool lescan: Device wird gefunden
            - /usr/local/lib/python3.7/dist-packages/bluepy/bluepy-helper / Scan: Device ist sichtbar
            - python3 /usr/local/bin/blescan: Device ist gelistet


            Aber beim manuellen Abrufen der Daten bekomme ich nachfolgenden Fehler. Hast du mir wiedermal einen Tip?!

            root@loxberry-sonos-tts:~# /opt/loxberry/bin/plugins/xiaomi-miflora/miflora.py
            04.01.2020 08:10:49 INFO Scanning for Xiaomi MiFlora devices (takes up to 10 seconds)
            04.01.2020 08:10:59 INFO Found 1 devices:
            04.01.2020 08:10:59 INFO Polling device: C4:7C:8D:6A:A7:F2
            Traceback (most recent call last):
            File "/opt/loxberry/bin/plugins/xiaomi-miflora/miflora.py", line 305, in <module>
            main()
            File "/opt/loxberry/bin/plugins/xiaomi-miflora/miflora.py", line 97, in main
            poller = MiFloraPoller(device, BluepyBackend)
            File "/opt/loxberry/bin/plugins/xiaomi-miflora/miflora/miflora_poller.py", line 37, in __init__
            self._bt_interface = BluetoothInterface(backend, adapter)
            TypeError: __init__() takes 2 positional arguments but 3 were given


            Kommentar

            • Michael M.
              LoxBus Spammer
              • 23.03.2016
              • 237

              #97
              Versuch mal in der Datei /opt/loxberry/bin/plugins/xiaomi-miflora/miflora/miflora_poller.py

              Code:
              self._bt_interface = BluetoothInterface(backend, adapter)
              in
              Code:
              self._bt_interface = BluetoothInterface(backend, adapter=adapter)
              zu ändern

              Kommentar


              • Tweeet
                Tweeet kommentierte
                Kommentar bearbeiten
                Michael, vielen Dank für deine Hilfe! Hat perfekt funktioniert und die Daten kommen wieder im MS an.
            • Michael M.
              LoxBus Spammer
              • 23.03.2016
              • 237

              #98
              Plugin Version 2.0.2 veröffentlicht:

              Kommentar

              • harry.hopfauf
                Dumb Home'r
                • 12.04.2019
                • 13

                #99
                Hallo Michael,
                danke erstmal für das tolle Plugin. Nach einigen Python-Problemen läuft das Plugin nun einwandfrei. Mit dem internen RPi bluetooth erreiche ich meine Pflanze an ihrem Stellplatz nur leider nicht. Komme ich mit dem Logilink dongle bedeutend weiter?
                Zuletzt geändert von harry.hopfauf; 09.04.2020, 16:54.

                Kommentar

                • Michael M.
                  LoxBus Spammer
                  • 23.03.2016
                  • 237

                  #100
                  Zitat von harry.hopfauf
                  Hallo Michael,
                  danke erstmal für das tolle Plugin. Nach einigen Python-Problemen läuft das Plugin nun einwandfrei. Mit dem internen RPi bluetooth erreiche ich meine Pflanze an ihrem Stellplatz nur leider nicht. Komme ich mit dem Logilink dongle bedeutend weiter?
                  Das kann ich dir leider nicht sagen.... ansonsten einfach einen zweiten Loxberry nur für das PlugIn verwenden, welcher näher bei den Pflanzen ist.

                  Kommentar

                  • deepinpowder
                    LoxBus Spammer
                    • 07.03.2016
                    • 412

                    #101
                    Hallo,

                    hast du die Motivation das Plugin um weiter Xiaomi BLE Sensoren zu erweitern?

                    ich nutze noch die Temperatur und Luftfeuchte Sensoren.



                    zur Zeit leider über dem Umweg des ioBrokers

                    ich würde mich freuen. Gruß

                    Kommentar


                    • chicoloco11
                      chicoloco11 kommentierte
                      Kommentar bearbeiten
                      das wäre ein traum. Bis es so ein Plugin jemals geben wird muss ich wohl auch über Io Broker gehen ... kannst du mir bitte mal eine Anleitung senden wie du es gemacht hast ? vielen Dank
                  • Michael M.
                    LoxBus Spammer
                    • 23.03.2016
                    • 237

                    #102
                    Zitat von deepinpowder
                    Hallo,

                    hast du die Motivation das Plugin um weiter Xiaomi BLE Sensoren zu erweitern?

                    ich nutze noch die Temperatur und Luftfeuchte Sensoren.



                    zur Zeit leider über dem Umweg des ioBrokers

                    ich würde mich freuen. Gruß

                    Da ich die Sensoren selbst nicht im Einsatz habe aus Zeitmangel eher nicht - ich könnte ein solches Plugin auch nicht aktuell halten.

                    Ich habe auf die schnelle gesehen, dass es ein Python Projekt bei GitHub gibt - vielleicht hilft dir das weiter.

                    Kommentar

                    • singertom
                      Dumb Home'r
                      • 15.04.2020
                      • 13

                      #103
                      Hi,

                      gibts ne möglichkeit über uber ne loxone taste die abfrage der Sensoren anzustoßen? es ist immer etwas blöd wenn man gegossen hast und dann 4 stundne warten muss bis die werte aktualisiert werden. würde gerne nen button einfügen mit dem ich quasi sagen kann "Blumen wurden gegossen" und dann soll er die werte aktualisieren.

                      Danke, grüße Tom

                      Kommentar

                      • Michael M.
                        LoxBus Spammer
                        • 23.03.2016
                        • 237

                        #104
                        Kopier dir den Link des "Poll Now" Buttons - dort muss du noch vorne an die URL username + passwort packen, dann kannst du es von Loxone aus triggern. (Habs aber selbst noch nicht probiert)

                        Kommentar

                      • Gast

                        #105
                        Hallo,

                        Ich habe das folgende Problem:

                        1 Sensor funktioniert gut, aber wenn ein zweiter hinzugefügt wird. gibt es ein Problem?



                        loxberry@loxberry-bleu:~ $ /opt/loxberry/bin/plugins/xiaomi-miflora/miflora.py
                        25.05.2020 15:21:11 INFO Scanning for Xiaomi MiFlora devices (takes up to 10 seconds)
                        25.05.2020 15:21:21 INFO Found 2 devices:
                        25.05.2020 15:21:21 INFO Polling device: C4:7C:8D:67:AC:B9
                        25.05.2020 15:21:23 INFO C47C8D67ACB9.Name=Flower care
                        25.05.2020 15:21:23 INFO C47C8D67ACB9.PollTime=359652083
                        25.05.2020 15:21:23 INFO C47C8D67ACB9.PollTimeString=25.05.2020 15:21:23
                        25.05.2020 15:21:24 INFO C47C8D67ACB9.Firmware=3.2.2
                        25.05.2020 15:21:24 INFO C47C8D67ACB9.Temperature=28.9
                        25.05.2020 15:21:24 INFO C47C8D67ACB9.Moisture=25
                        25.05.2020 15:21:24 INFO C47C8D67ACB9.Light=3181
                        25.05.2020 15:21:24 INFO C47C8D67ACB9.Conductivity=0
                        25.05.2020 15:21:24 INFO C47C8D67ACB9.Battery=86
                        25.05.2020 15:21:24 INFO -------------------------------------------------
                        25.05.2020 15:21:24 INFO Polling device: C4:7C:8D:67:95:FA
                        Traceback (most recent call last):
                        File "/usr/local/lib/python3.7/dist-packages/btlewrap/bluepy.py", line 27, in _func_wrapper
                        return func(*args, **kwargs)
                        File "/usr/local/lib/python3.7/dist-packages/btlewrap/bluepy.py", line 56, in connect
                        self._peripheral = Peripheral(mac, iface=iface, addrType=self.address_type)
                        File "/usr/local/lib/python3.7/dist-packages/bluepy/btle.py", line 391, in __init__
                        self._connect(deviceAddr, addrType, iface)
                        File "/usr/local/lib/python3.7/dist-packages/bluepy/btle.py", line 439, in _connect
                        raise BTLEDisconnectError("Failed to connect to peripheral %s, addr type: %s" % (addr, addrType), rsp)
                        bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral C4:7C:8D:67:95:FA, addr type: public

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

                        Traceback (most recent call last):
                        File "/opt/loxberry/bin/plugins/xiaomi-miflora/miflora.py", line 305, in <module>
                        main()
                        File "/opt/loxberry/bin/plugins/xiaomi-miflora/miflora.py", line 103, in main
                        value = "{0}.{1}={2}".format(devicemac, "Name", poller.name())
                        File "/opt/loxberry/bin/plugins/xiaomi-miflora/miflora/miflora_poller.py", line 50, in name
                        with self._bt_interface.connect(self._mac) as connection:
                        File "/usr/local/lib/python3.7/dist-packages/btlewrap/base.py", line 47, in __enter__
                        self._backend.connect(self._mac)
                        File "/usr/local/lib/python3.7/dist-packages/btlewrap/bluepy.py", line 33, in _func_wrapper
                        raise BluetoothBackendException() from last_error
                        btlewrap.base.BluetoothBackendException
                        loxberry@loxberry-bleu:~ $ pip3 list
                        Package Version
                        ------------------- ----------
                        bluepy 1.3.0
                        btlewrap 0.0.9
                        certifi 2018.8.24
                        chardet 3.0.4
                        distro-info 0.21
                        idna 2.6
                        pip 19.3.1
                        PyGObject 3.30.4
                        python-apt 1.8.4
                        pyxattr 0.6.1
                        requests 2.21.0
                        setuptools 46.4.0
                        six 1.12.0
                        typing 3.7.4.1
                        unattended-upgrades 0.1
                        urllib3 1.24.1
                        youtube-dl 2019.10.16
                        WARNING: You are using pip version 19.3.1; however, version 20.1.1 is available.
                        You should consider upgrading via the 'pip install --upgrade pip' command.
                        loxberry@loxberry-bleu:~ $



                        Kommentar

                        Lädt...