Xiaomi Mi Flora / Flower Care - Smarter Pflanzensensor homebridge-mi-flower-care

  • Vielen Dank! Verstehe ich soweit! Hab mich gestern schonmal in die Config von dem Script eingelesen und das scheint ja eigentlich alles straightforward zu sein.


    Könnte ich auch einem Sensor in Mqttthing mehrere Topics Zuordnen ?
    Ich weiß nicht ob du Ios13 schon nutzt aber da werden ja mehrere Messdaten eines Sensors automatisch in einer „Kachel“ in Home zusammengefasst. Was am Ende dann deutlich aufgeräumter und platzsparender wirkt.
    Aber hierfür müsste Home ja wissen, dass die Daten von einem einzigen Sensor kommen?
    Vielleicht weißt du da ja mehr dazu ?


    Aber auf jeden Fall schonmal danke!





    Gesendet von iPhone mit Community

  • Vielleicht weißt du da ja mehr dazu ?

    Dazu weiß ich nix.

  • Ob dir meine config.ini hilft? Als ich noch keine Verschlüsselung und kein Password eingesetzt habe, habe ich unten einfach nur die Sensoren angehängt. Ich habe keine weitere IP eingetragen, weil alles auf dem gleichen Raspi läuft. Außer den Sensoren habe ich an der config nichts verändert.


    Jetzt sieht meine config so aus wie unten, aber vorher waren username, password, tls und tls_ca_cert ebenfalls auskommentiert. Was für einen Broker nutzt du denn?


    ich nutze Mosquitto über die Synology, funktioniert mit anderen Geräten super.

    Ich probiere gerade deinen Workaround ohne MQTT aber es klappt einfach nicht. Ich kriege im Homebridge LOG immer noch folgenden Error:

    (Ich hab alles wie von dir Beschrieben 1:1 kopiert, das "man beachte den ./" soll man auch so übernehmen oder?)


    [2019-9-3 20:43:46] ERROR LOADING PLUGIN homebridge-mi-flower-care:

    [2019-9-3 20:43:46] Error: Cannot find module '@abandonware/bluetooth-hci-socket'

    Require stack:

    - /usr/local/lib/node_modules/@abandonware/noble/lib/hci-socket/hci.js

    - /usr/local/lib/node_modules/@abandonware/noble/lib/hci-socket/bindings.js

    - /usr/local/lib/node_modules/@abandonware/noble/lib/resolve-bindings.js

    - /usr/local/lib/node_modules/@abandonware/noble/index.js

    - /usr/local/lib/node_modules/homebridge-mi-flower-care/node_modules/node-mi-flora/index.js

    - /usr/local/lib/node_modules/homebridge-mi-flower-care/index.js

    - /usr/local/lib/node_modules/homebridge/lib/plugin.js

    - /usr/local/lib/node_modules/homebridge/lib/server.js

    - /usr/local/lib/node_modules/homebridge/lib/cli.js

    - /usr/local/lib/node_modules/homebridge/bin/homebridge

    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:772:15)

    at Function.Module._load (internal/modules/cjs/loader.js:677:27)

    at Module.require (internal/modules/cjs/loader.js:830:19)

    at require (internal/modules/cjs/helpers.js:68:18)

    at Object.<anonymous> (/usr/local/lib/node_modules/@abandonware/noble/lib/hci-socket/hci.js:6:26)

    at Module._compile (internal/modules/cjs/loader.js:936:30)

    at Object.Module._extensions..js (internal/modules/cjs/loader.js:947:10)

    at Module.load (internal/modules/cjs/loader.js:790:32)

    at Function.Module._load (internal/modules/cjs/loader.js:703:12)

    at Module.require (internal/modules/cjs/loader.js:830:19)

    at require (internal/modules/cjs/helpers.js:68:18)

    at Object.<anonymous> (/usr/local/lib/node_modules/@abandonware/noble/lib/hci-socket/bindings.js:9:11)

    at Module._compile (internal/modules/cjs/loader.js:936:30)

    at Object.Module._extensions..js (internal/modules/cjs/loader.js:947:10)

    at Module.load (internal/modules/cjs/loader.js:790:32)

    at Function.Module._load (internal/modules/cjs/loader.js:703:12)

    at Module.require (internal/modules/cjs/loader.js:830:19)

    at require (internal/modules/cjs/helpers.js:68:18)

    at module.exports (/usr/local/lib/node_modules/@abandonware/noble/lib/resolve-bindings.js:13:12)

    at Object.<anonymous> (/usr/local/lib/node_modules/@abandonware/noble/index.js:2:49)

    at Module._compile (internal/modules/cjs/loader.js:936:30)

    at Object.Module._extensions..js (internal/modules/cjs/loader.js:947:10)

  • sudo npm uninstall -g homebridge-mi-flower-care

    sudo rm -rf /usr/local/lib/node_modules/homebridge-mi-flower-care

  • hab mir grad mein ganzes system zerschossen :D zum glück hatte ich ein Backup. Ich probiers jetzt nochmal


    achso sag mal unter node 12 hast du das auch schon testen können? meinst da geht des auch?

  • leider selbes spiel. beim ersten kommt folgende Meldung:

    pi@homebridge-Pi4:~ $ sudo npm uninstall -g homebridge-mi-flower-care

    npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/homebridge-mi-flower-care/node_modules/bluetooth-hci-socket

    npm ERR! code ENOENT

    npm ERR! syscall access

    npm ERR! path /usr/local/lib/node_modules/homebridge-mi-flower-care/node_modules/bluetooth-hci-socket

    npm ERR! errno -2

    npm ERR! enoent ENOENT: no such file or directory, access '/usr/local/lib/node_modules/homebridge-mi-flower-care/node_modules/bluetooth-hci-socket'

    npm ERR! enoent This is related to npm not being able to find a file.

    npm ERR! enoent


    npm ERR! A complete log of this run can be found in:

    npm ERR! /root/.npm/_logs/2019-09-03T23_50_47_177Z-debug.log


    und wenn ich im Anschluss die Homebridge starte kommt folgende Meldung:


    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: [2019-9-4 1:52:37] Error: The requested accessory 'mi-flower-care' was not registered by any plugin.

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at API.accessory (/usr/local/lib/node_modules/homebridge/lib/api.js:64:13)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at Server._loadAccessories (/usr/local/lib/node_modules/homebridge/lib/server.js:297:42)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:91:38)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:59:10)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at Module._compile (internal/modules/cjs/loader.js:936:30)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:947:10)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at Module.load (internal/modules/cjs/loader.js:790:32)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at Function.Module._load (internal/modules/cjs/loader.js:703:12)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at Function.Module.runMain (internal/modules/cjs/loader.js:999:10)

    Sep 04 01:52:37 homebridge-Pi4 homebridge[10130]: at internal/main/run_main_module.js:17:11

  • Und dann:

    sudo rm -rf /usr/local/lib/node_modules/homebridge-mi-flower-care


    Und nicht vergessen: nimm die Konfiguration von homebridge-mi-flower-care aus der config.json.

  • Und dann:

    sudo rm -rf /usr/local/lib/node_modules/homebridge-mi-flower-care


    Und nicht vergessen: nimm die Konfiguration von homebridge-mi-flower-care aus der config.json.

    Moin,

    das gibts doch nicht, ich glaub ich bin echt zu dämlich dafür. Ich habe deine Befehle nochmal ausgeführt, sobald ich aber den letzten eingebe kommt wieder die Meldung:

    ep 04 09:45:56 homebridge-Pi4 homebridge[27537]: [2019-9-4 9:45:56] Error: The requested accessory 'mi-flower-care' was not registered by any plugin.

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at API.accessory (/usr/local/lib/node_modules/homebridge/lib/api.js:64:13)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at Server._loadAccessories (/usr/local/lib/node_modules/homebridge/lib/server.js:297:42)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:91:38)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:59:10)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at Module._compile (internal/modules/cjs/loader.js:936:30)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:947:10)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at Module.load (internal/modules/cjs/loader.js:790:32)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at Function.Module._load (internal/modules/cjs/loader.js:703:12)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at Function.Module.runMain (internal/modules/cjs/loader.js:999:10)

    Sep 04 09:45:56 homebridge-Pi4 homebridge[27537]: at internal/main/run_main_module.js:17:11


    durch das löschen kann der ja in der Config.json das accessory nicht mehr zuordnen. Eingefügt in der Homebridge Config.json habe ich folgende:


    Code
    {  "accessory": "mi-flower-care",  
    "name": "Golden cane palm",  
    "deviceId": "AA:BB:CC:DD:EE:FF",  
    "interval": 300
    }
    natürlich entsprechend meiner Device ID angepasst.

    ich lande immer bei dem selben Fehler mit dem zuordnen und ich verstehe nicht was ich falsch mache.

    Ich verstehe das doch richtig, das Plugin muss unter Homebridge angezeigt werden und ich ergänze bzw. bearbeite die Config davon wie immer oder nicht?


    Sorry das ich mich grad so dämlich anstelle aber ich möchte unbedingt die Flower Geräte in meinem Homekit haben =)

    Mit den MQTT komme ich in dem Fall leider überhaupt nicht zurecht :/


    Ich danke Dir

  • Entweder über MQTT oder über das Plugin.


    Die Fehlermeldung besagt, dass du eine Konfiguration für das Plugin homebridge-mi-flower-care hast, das Plugin aber nicht installiert ist. Dann installiere es. Ich habe hier beschrieben, wie das unter node >9 zu machen ist: Xiaomi Mi Flora / Flower Care - Smarter Pflanzensensor homebridge-mi-hygrothermograph


    Stefan

  • Genauso installiere ich es ja..

    Kann es vielleicht sein das gyp und HCI was damit zu tun hat? Ich kriege nämlich folgende Meldung bei der Installation


    gyp ERR! build error

    gyp ERR! stack Error: `make` failed with exit code: 2

    gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:196:23)

    gyp ERR! stack at ChildProcess.emit (events.js:209:13)

    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)

    gyp ERR! System Linux 4.19.66-v7l+

    gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket/lib/binding/binding.node" "--module_name=binding" "--module_path=/usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket/lib/binding" "--napi_version=4" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v72"

    gyp ERR! cwd /usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket

    gyp ERR! node -v v12.9.1

    gyp ERR! node-gyp -v v5.0.3

    gyp ERR! not ok

    node-pre-gyp ERR! build error

    node-pre-gyp ERR! stack Error: Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket/lib/binding/binding.node --module_name=binding --module_path=/usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket/lib/binding --napi_version=4 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v72' (1)

    node-pre-gyp ERR! stack at ChildProcess.<anonymous> (/usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket/node_modules/node-pre-gyp/lib/util/compile.js:83:29)

    node-pre-gyp ERR! stack at ChildProcess.emit (events.js:209:13)

    node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:1021:16)

    node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)

    node-pre-gyp ERR! System Linux 4.19.66-v7l+

    node-pre-gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"

    node-pre-gyp ERR! cwd /usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket

    node-pre-gyp ERR! node -v v12.9.1

    node-pre-gyp ERR! node-pre-gyp -v v0.12.0

    node-pre-gyp ERR! not ok

    Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket/lib/binding/binding.node --module_name=binding --module_path=/usr/local/lib/node_modules/@abandonware/bluetooth-hci-socket/lib/binding --napi_version=4 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v72' (1)

    npm ERR! code ELIFECYCLE

    npm ERR! errno 1

    npm ERR! @abandonware/[email protected] install: `node-pre-gyp install --fallback-to-build`

    npm ERR! Exit status 1

    npm ERR!

    npm ERR! Failed at the @abandonware/[email protected] install script.

    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.


    npm ERR! A complete log of this run can be found in:

    npm ERR! /root/.npm/_logs/2019-09-04T09_48_50_861Z-debug.log


    und sehe da nix das es installiert ist.


    Zudem kommt folgende Meldung wenn ich die HP neustarte:


    ERROR LOADING PLUGIN homebridge-mi-flower-care:

    [2019-9-4 11:56:03] Error: Cannot find module '@abandonware/bluetooth-hci-socket'

    Require stack:

    - /usr/local/lib/node_modules/@abandonware/noble/lib/hci-socket/hci.js

    - /usr/local/lib/node_modules/@abandonware/noble/lib/hci-socket/bindings.js

    - /usr/local/lib/node_modules/@abandonware/noble/lib/resolve-bindings.js

    - /usr/local/lib/node_modules/@abandonware/noble/index.js

    - /usr/local/lib/node_modules/homebridge-mi-flower-care/node_modules/node-mi-flora/index.js

    - /usr/local/lib/node_modules/homebridge-mi-flower-care/index.js

    - /usr/local/lib/node_modules/homebridge/lib/plugin.js

    - /usr/local/lib/node_modules/homebridge/lib/server.js

    - /usr/local/lib/node_modules/homebridge/lib/cli.js

    - /usr/local/lib/node_modules/homebridge/bin/homebridge

    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:772:15)

    at Function.Module._load (internal/modules/cjs/loader.js:677:27)

    at Module.require (internal/modules/cjs/loader.js:830:19)

    at require (internal/modules/cjs/helpers.js:68:18)

    Einmal editiert, zuletzt von clipse ()

  • Hallo, wie verhalten sich die Sensoren bei einer nutzung im Garten ohne schutz vor Regen? In der Wohung brauche ich diese nicht aber für mein Bewässerungsprojekt nächstes Jahr könnten diese im Garten gut helfen. Oder kennt jemand Alternativen?

  • Hallo, wie verhalten sich die Sensoren bei einer nutzung im Garten ohne schutz vor Regen?

    Meine zwei Sensoren verhielten sich extrem gut, bis ich dann offenbar mal die Pflanzen gegossen habe. Ein Sensor hielt fünf Wochen, der andere sieben.


    Eigentlich sollten die Dinger wasserdicht sein, und zur Not hilft ein bestimmt Plastiktütchen, dass man darüber stülpt. Aber wie gesagt: zwei Sensoren, beide innerhalb kürzester Zeit hinüber, und ich sie sicherlich nicht abgeduscht.

  • Ich habe das "Projekt" mit den Xiaomi Sensoren und dem Eve Aqua aufgegeben, obwohl es mir extrem gut gefallen hat diesen Sommer.


    Zum einem bin ich trotz kleinen Garten mit der Bluetooth Reichweite vor und hinten nicht hingekommen. Sehr oft wurde der Sensor nicht abgefragt obwohl nur eine Wand (mit großen Fenster) und ca. 5 Meter dazwischen lagen. Ich habe den Pi an allen möglichen Stellen plaziert, besser wurde es kaum.


    Zum anderen (der Hauptgrund zum aufgeben) hat sich meine Homebridge sporadisch runtergefahren. Einmal als ich für ein paar Tage weg war und das war wirklich unschön weil ich einige interessante Steuermöglichkeiten dann verliere. Schuste hatte mir geholfen das Problem näher einzukreisen. Nachdem ich mit meinen Mitteln das nicht lösen konnte und mir die Installation des Xiaomi Plug-in mit node LTS 12 nicht zutraue habe ich es eingedampft.


    Passend dazu kam aber auch, da der Xiaomi Sensor tot war. Endweder bin ich beim Unkrautjäten draufgetreten ;-= oder es war dann doch zuviel Regen, oder der Sensor hatte auch keine Lust mehr auf mich.


    Interessant ist, das seit dem löschen vom Plug-in und dem saubren manuellen (!) de-installieren bei mir wieder alles stabil läuft. Weiß nicht, wann das letzte Mal die Bridge abgestürtz bzw. runtergefahren ist (September?) aber seit dem ist Ruhe. Bei mir war wirklich das Plug-in schuld.


    Ich suche jetzt auch einen Sensor für den Boden, gerne nicht von Xiaomi den ich in Homekit oder Homebridge einbinden kann. Wenn jemand eine Alternative kennt, bitte melden!


    Ich hoffe solange auf Aqara. Die Sensoren / Homekit Konstellation läuft bei mir perfekt. Leider nur kein Aussensensor bzw. Bodensensor :(


    Gruß

  • Ich habe eine Frage, vielleicht kann mir jemand helfen.


    Bei mir ist der Sensor in der Homeapp nicht erreichbar, bzw. zeigt in der Eve-App 0 Grad / 0% an.


    Der Sensor liegt aktuell 20cm neben dem Raspi.