Beiträge von sschuste

    Ich wüsste nicht, wie ich ihn dazu bringen kann, das zu korrigieren und woher der Fehler überhaupt kommt. Eine Idee?

    Leider nicht. Damit kenne ich mich überhaupt nicht aus. Ich weiß nicht, ob es hilfreich ist, aber die Klammer kann ja an den verschiedensten Stellen verloren gehen. Für mein MQTT verwende ich MQTT.fx, damit kann man ganz bequem den MQTT-Server beobachten.


    Oh. Ich sehe gerade, dass das inzwischen Geld kostet. Aber immerhin kann man es drei Monate testen.


    Da ist es: http://www.jensd.de/apps/mqttfx/1.7.1/

    {

    "Time": "2021-04-11T18:23:39",

    "Switch1": "ON",

    "AM2301": {

    "Temperature": 12.3,

    "Humidity": 56.6,

    "DewPoint": 3.9

    },

    "SML": {

    "Total_in": 234.5124,

    "Power_curr": 52.6,

    "Meter_number": "0a01445a4700039954f6",

    "Curr_p1": 0.000,

    "TempUnit": "C"

    }

    }


    Am Ende des JSON-Strings, den du da auswerten willst, fehlt eine schließende Klammer, die ich jetzt mal in rot dazu gesetzt habe. Der JSON-String ist also nicht vollständig und das führt zu SyntaxError: Unexpected end of JSON input.

    kannst du mal beschreiben, wie du das machst? Das wäre auch was für mich.

    Grundsätzlich geht das so: ich mache ein Backup diverser Geschichten auf meinem Raspi. Dieses Backup kopiere per scp auf meinen Mac in das Verzeichnis "/Users/sschuste/Library/Mobile Documents/com~apple~CloudDocs/" (das ist ein Leerzeichen in Mobile Documents).


    Du hast auch so ein Verzeichnis in deinem Homeverzeichnis, das bei mir auf dem Mac sschuste heißt. Bei dir heißt das natürlich nicht sschuste. Legst du irgendwas in das Verzeichnis hinein, wird es automatisch in die iCloud geschoben.

    Welche Lösungen habt ihr am Start?

    Für mich galt die Frage: wie lange darf meine Homebridge und mein Node Red-Krempel ausfallen? 10 Sekunden? Zehn Minuten? Zehn Stunden? Daraus entwickelte sich gleich die nächste Frage: wie lange brauche ich, um alles neu aufzusetzen?


    Ich schätze, dass ich etwa drei Stunden brauche, bis ich einen neuen Raspi komplett auf den Stand des alten gebracht habe. Drei Stunden ist ätzend viel und lästig, aber im Gegensatz zum Aufwand, den ich treiben müsste, um das System redundant aufzubauen, relativ wenig.


    Meine Lösung ist also nur ein leerer unbeschäftigter Raspi, der hier irgendwo herumliegt.

    Backup wird regelmäßig auf ein USB-Drive gemacht

    Meine Backups werden nach iCloud gemacht. Wenn hier meine Bude abbrennt und das gesamte Smarthome-Geraffel eine zusammengeschmolzener Haufen Plastik ist, dann habe immer noch meine config.json.

    und der Pi einmal in der Nacht per Cron-Job durchgestartet.

    Was soll das bringen?

    Eine Frage an die Profis, mein Raspi hat nach Neuinstallation und neuer HB im Moment sowohl LAN als auch WLAN Anschluss, ist also über 2 IPS zu erreichen. Kann das Probleme bereiten?

    Vielleicht. Ich würde die Homebridge dazu bringen wollen, eine bestimmte Netzwerkkarte zu verwenden. Deine Möglichkeiten sind wlan0 (WLAN-Netzwerkkarte) und eth0 (Ethernet-Nertzwerkkarte). Das kannst du möglicherweise einstellen in homebridge-config-ui-x unter 3-Punkte-Menü oben rechts -> Homebridge-Einstellungen -> Netzwerk.


    Oder du erweiterst in config.json deine Bridge-Konfiguration durch "bind": ["wlan0"] :

    Die Installation über die UI wird (zumindest bei mir) als User homebridge ausgeführt und alle Pakete landen in "/usr/local/node_modules/", wo sie scheinbar auch hingehören.

    Das wird bei der Installation von node und npm festgelegt und sollte eigentlich immer gleich sein. Das glaube ich zumindest - ein Verständnis von node ist dann doch eher dürftig.


    Siehe hier: https://docs.npmjs.com/cli/v7/commands/npm-prefix

    npm prefix -g ergibt bei mir /usr/local und meine Plugins liegen in /usr/local/lib/node_modules.


    Und siehe hier: https://docs.npmjs.com/cli/v7/commands/npm-config

    Mit npm config kann man offenbar die Parameter einstellen. Hab ich noch nie gemacht.

    Irgendwas Beunruhigendes?

    Wer weiß? Diese Warnungen richten sich eher an den Entwickler des Plugins. Der muss zusehen, dass er neuere Versionen von debug und class-transformer verwendet. Ich habe keine Ahnung, wozu debug und class-transformer benötigt werden, aber es eigentlich auch egal - solange es nur Warnungen sind: ignorieren. Irgendein Update wird es irgendwann richten.

    Da ich den Build gerne testen würde, frage ich mich jetzt allerdings, wie ich das Teil an die richtige Stelle ('/usr/local/lib/node_modules/') installiert bekomme und die bereits installierte Version des Plugins überschreibe.

    Theoretisch sollte es völlig ausreichen, wenn du das alte Plugin löschst und das neue an die richtige Stelle verschiebst.


    Altes Plugin löschen:

    sudo rm -rf /usr/local/lib/node_modules/homebridge-esphome-ts


    Neues Plugin verschieben:

    sudo mv /usr/lib/node_modules/homebridge-esphome-ts /usr/local/lib/node_modules


    Homebridge neu starten.

    Du bist auf dem richtigen Weg.

    kann mir jemand helfen, wie ich das Ding komplett gelöscht bekomme?

    Per Terminal auf den Raspi einloggen und dann:

    sudo rm -rf /usr/local/lib/node_modules/homebridge-weather-plus


    Danke für den Screenshot, der es mir erlaubte, den Löschbefehl zu 80% abtippen zu dürfen. Trotzdem möchte ich darauf hinweisen, dass

    • deine Geräte copy & paste sogar von Text können
    • das Konzept copy & paste seit fast 40 Jahren durchaus erfolgreich eingesetzt wird und man es ohne jede Furcht verwenden kann
    • Screenshots von Logs Zahnfäule erzeugen und Pickel machen, und zwar bei denen, die Screenshots von Logs machen. Wissenschaftliche Studien haben das mehr als einmal nachgewiesen und ich würde da an deiner Stelle zukünftig vorsichtiger sein.

    Kann es sein, dass eine Treshold von 1 vielleicht Probleme dabei macht?

    Ich würde sagen: ja. Ich habe bei mir 20 Minuten eingestellt.


    Mit dem threshold stellst du ein, wie lange ein Gerät nicht erreichbar sein kann und dabei trotzdem angenommen wird, es sei noch da. Smartphones sparen Strom, wo sie nur können. Das heißt, sie schalten auch gelegentlich ihr WLAN ab, sobald der Screen dunkel ist. Wenn sie das tun, dann kann homebridge-people-pro die Geräte nicht mehr erreichen und nimmt an, die sind nicht mehr vor Ort. In deinem Fall wartet homebridge-people-pro noch eine Minute und schaltet dann den Sensor. In meinem Fall wartet das Plugin 20 Minuten.


    Wenn das bislang bei dir funktioniert hat, dann nur, weil entweder Nicis oder Fabians Smartphone immer erreichbar war. Das scheint sich wohl irgendwie geändert zu haben.


    Damit mein iPhone sich wenigstens ab und zu meldet, habe ich eingestellt, das meine Mail alle 15 Minuten gecheckt werden soll. In diesem Fall aktiviert das iPhone sein WLAN ja wieder. Die 20 Minuten threshold sind auch ganz brauchbar, wenn ich abends noch mal kurz um die Ecke einkaufen will. Dann fährt die Automation nicht gleich die ganze Bude runter, nur weil ich mit der Flasche Bier am langen Arm die Straße runtertrödele.


    Mir passiert ab und zu der umgekehrte Fall. Dann wache ich morgens auf und meine Wohnung ist beleuchtet - da hat sich dann nachts das iPhone aus dem Netz geschlichen und ist nicht innerhalb der 20 Minuten wieder aufgetaucht, sondern irgendwann später. Warum auch immer, aber es steht akkurat im Homebridge-Log.


    Aber bringt das nicht automatisch mit sich, dass eine Logik mittels "Kommt jemand an" dann sehr stark verzögert funktionieren würde und somit dann eigentlich gar nicht wirklich nutzbar wäre?

    Nein. Es geht nur darum, wie lange ein Gerät nicht erreichbar sein darf, bevor es als nicht erreichbar angesehen wird. Das verzögert nur die Ausschaltautomatik.

    Ich mache an solchen Dingen nichts und daher vermute ich, dass es automatisch vergeben wird.....

    Dein Router vergibt die Adressen. Beispielsweise hat dein Raspi mit der Homebridge vom Router eine Adresse bekommen, nämlich 192.168.178.39. Router, wie wir sie haben, vergeben Adressen nur aus kleinen Bereichen. Bei dir wird es mit 99,9999%iger Wahrscheinlichkeit der Bereich sein zwischen 192.168.178.0 und 192.168.178.255. Noch wahrscheinlicher ist es, dass dein Router niemals die Adresse 192.168.1.233 an den Staubsauger vergeben hat.


    Dein Netz ist das mit der 192.168.einhundertachtundsiebzig und der Staubsauger befindet sich in 192.168.eins. Die Homebridge hat null Probleme mit der Staubsaugeradresse - sie stellt fest, dass sich der Staubsauger nicht im gleichen Netz befindet und übergibt die Sache aufwandsneutral an deine Fritzbox. Die stellt fest, dass die Staubsaugeradresse nicht zu ihrem Netz gehört und schickt den Krempel weiter an deinen Provider. Der sieht sich das nicht lange an und schmeißt die Homebridge-Anfrage an den Staubsauger in die nächste Datentonne.


    Das Problem ist also die Netzwerkkonfiguration des Staubsaugers. Nimm die dazugehörige App und untersuche das. Dort muss stehen, dass sich der Staubsauger eine Adresse per DHCP holen soll.