NEWS
Test Alpha Homekit-Controller 0.0.x
-
@mac89muc naja matter ist erstmal ne ganz andere nimmermüde ja wird garantiert kommen. Aber erstmal müssen das die Geräte können und so …
-
für mich zum Verständnis - polling Intervall bezieht sich ja nur auf das abrufen der Daten von den verbundenen Geräten. Änderungen die ich eintrage wie z.B. die Target Temperature bei meinen Thermostaten, sollten unabhängig vom polling direkt übertragen werden, oder?
Zum Teil stehen bei mir nämlich andere Werte am Thermostat physisch vor Ort als wie im Adapter eingetragen sind..
Wenn ich z.B. um 07:00 Uhr die Heizung auf 21° C stellen möchte und das im entsprechenden Datenpunkt (Target-Temperature) eintrage, bleibt das im Datenpunkt auch drin stehen. Allerdings zeigt mir das Thermostat vor Ort noch den alten Wert von 17° C an auch um 08:00 Uhr - es handelt sich also nicht um einen kleinen zeitlichen Versatz.
Also wurde der Wert zum einen nicht vom Adapter übernommen und zum anderen im Adapter nicht überschrieben mit dem Wert der im Thermostat real als Target Temperature hinterlegt ist.
Sollte das wechselseitig so funktionieren, falls ein Thermostat mal nicht erreicht wird beim senden, dass beim nächsten Abruf dann der tatsächliche Wert vom Thermostat in den Datenpunkt geschrieben wird?
Ansonsten fällt es anhand der Anzeige ja nicht auf, dass der Wert nicht übernommen wurde, nur beim tatsächlichen überprüfen am Thermostat selbst.
Gruß
-
@mac89muc Ja Polling bezieht sich auf die Datenabfrage.
Wie setzt du den eine Zieltemperatur? WICHTIG da s ack-Flag (Bestätigt) muss dabei immer false sein!! (Ack=true ist kein Kommando und wird damit nicht umgesetzt).
Sonst gern im Log schauen. Falls ein Wert nicht gesendet werden konnte steht das da an sich drin.
An sich wird nach dem korrekten Setzen eines wertes ein paar Sekunden später dieser Wert gelesen und damit dann nochmal "mit ack flag vom Adapter bestätigt".
Polling überschreibt immer das was im Datenpunkt steht.
Bestätigte Werte zeigt der Admin grün an. Rote Werte sind unbestätigt. -
@apollon77 - So setze ich die Werte aktuell.
Bedeute aber es kann passieren, dass während eines Pollings der Wert der kurz vorher in den Datenpunkt geschrieben wurde überschrieben wird mit dem aktuellen Wert des Thermostats. Es wird also der ursprünglich im Datenpunkt geänderte Wert dann nicht mehr an das Thermostat übertragen, oder?Hast Du noch einen Tipp zum Thema Speicher für mich...? So sieht es aktuell bei mir aus - der Adapter braucht ziemlich viel..
Gruß
-
@mac89muc Wenn der Wert geschrieben wird, dann wird das ganze gesendet - und auch nach dem Senden und ok vom gerät nochmal vom Gerät 5s später oder so der dann aktuelle Wert gelesen.
Ich könnte mir nicht vorstellen wie sich das mit dem Polling so wie Du sagst Überschneiden kann.
Wenn Du genauer schauen willst starte den Adapter mal mit Loglevel Debug und poste mal das Log.
Zum RAM: Hui das ist viel ... Nein ist der erste Bericht dazu. Ist der die ganze Zeit so hoch oder steigt es über die Zeit an? Wenn es ansteigt dann wäre mal interessant zu sehen wie - am besten nimm mal History oder so und logge die RAM States unter system.adapter.homekit-controller.0 mit ... dann sieht man den zeitverlauf.
-
@apollon77 sagte in Test Alpha Homekit-Controller 0.0.x:
Zum RAM: Hui das ist viel ... Nein ist der erste Bericht dazu. Ist der die ganze Zeit so hoch oder steigt es über die Zeit an? Wenn es ansteigt dann wäre mal interessant zu sehen wie - am besten nimm mal History oder so und logge die RAM States unter system.adapter.homekit-controller.0 mit ... dann sieht man den zeitverlauf.
Ohne es jetzt genau beobachtet zu habe, steigt der m.E. nach an - liegt aktuell bei > 3GB
Habe den Adapter mal auf Info Logstufe umgestellt (lief vorher schon im Debug Modus) und neu gestartet.Welchen DP soll ich tracken?
Gruß
-
@mac89muc memRss und die beiden heap* an sich
-
Hier mal die Infos - lt. Systembericht/Aktivitätsanzeige hat der Adapter wieder >4GB Speicher in der Nutzung gehabt - nach Adapterneustart jetzt bei ca 460 MB.
Gruß
-
@mac89muc Haste bitte mal das wo man die 4GB sieht auch als Grafik?
-
@apollon77
Hab nochmal neu die Daten geholt - im Systembericht wieder knapp 2GB Arbeitsspeicher - scheint aber in den Datenpunkten nicht identisch zu sein bzw. wird mir hier mit anderen Werten angezeigt. Woran kann das liegen?Aktuelle macOS Übersicht
MemRss
MemHeapTotal
MemHeapUsed
Gruß
-
@mac89muc Tja, da ist wohl "irgendwo" ein Memory leak in irgendwas vom Adapter ... Bisher bei keinem sonst aufgefallen ... Puhh das wird interessant ... Bitte lege GitHub issue an. Ich denke "hack fix" ist einfach täglich Adapter nachts restarten (restart schedule kann du im Admin pro Instanz einstellen).
-
@apollon77
Ok, werde ich machen - Danke für Deine Mühe.Etwas Off-Topic - hast Du einen Tipp, wo ich ein paar Fragen zur Kombi von Eve Thermostaten mit Alexa über Matter stellen kann?
Möchte meine Eve Thermostate zukünftig (wenn die Thermostate das Matter Update bekommen haben und die Eve Alexa Integration möglich ist) herkömmlich über AppleTV mit Thread/Matter einbinden - aber dann auch über Alexa steuern und in iobroker einbinden können für Scripte/Automationen. Der homekit-controller fällt dann ja aus, da die Thermostate dann regulär über das ATV mit Thread/Matter eingebunden sind. Dein Alexa2 Adapter ist ja glaube ich nicht zum steuern von Smarthome Geräten gedacht bzw. ideal, oder?Gruß
-
@mac89muc geduld bitte ... Matter wird kommen bei uns ... ist in Arbeit ... dann wird es einen matter und einen matter-controller Adapter geben. Such mal im Forum bzw den Adapter Requests ... da findest DU threads ... da dran hängen. Da update ich wenn es was neues gibt.
-
Danke
-
@apollon77 Ich habe gestern mal den Adapter installiert und folgendes Problem:
Einerseits ist der Adapter nicht mit Gerät oder Dienst verbunden.
Weiterhin zeigt mir das Debug folgendes an, was mir aber nicht wirklich irgendwas sagt:2022-12-16 06:48:22.495 info IP-95:E7:B2:DB:BA:0F (Dots) found without known pairing data and already paired: ignoring homekit-controller.0 2022-12-16 06:48:22.494 debug IP-95:E7:B2:DB:BA:0F Discovered IP device: {"name":"Dots","address":"192.168.178.32","port":80,"c#":2,"ff":2,"id":"95:E7:B2:DB:BA:0F","md":"TWD060STP","pv":"1.1","s#":6,"sf":0,"ci":5,"availableToPair":false} homekit-controller.0 2022-12-16 06:48:22.493 debug Discovered IP device up: 95:E7:B2:DB:BA:0F/Dots homekit-controller.0 2022-12-16 06:48:22.409 info IP-F3:25:0D:6A:8A:9E (Philips hue - 22D00A) found without known pairing data and already paired: ignoring homekit-controller.0 2022-12-16 06:48:22.407 debug IP-F3:25:0D:6A:8A:9E Discovered IP device: {"name":"Philips hue - 22D00A","address":"192.168.178.21","port":8080,"c#":33,"ff":1,"id":"F3:25:0D:6A:8A:9E","md":"BSB002","pv":"1.1","s#":9,"sf":0,"ci":2,"availableToPair":false} homekit-controller.0 2022-12-16 06:48:22.406 debug Discovered IP device up: F3:25:0D:6A:8A:9E/Philips hue - 22D00A homekit-controller.0 2022-12-16 06:48:22.256 debug state homekit-controller.0.info.connection changed: false (ack = true) homekit-controller.0 2022-12-16 06:48:22.112 info Could not initialize Bluetooth LE, turn off. Error: The module '/opt/iobroker/node_modules/@abandonware/bluetooth-hci-socket/lib/binding/bluetooth_hci_socket.node'was compiled against a different Node.js version usingNODE_MODULE_VERSION 83. This version of Node.js requiresNODE_MODULE_VERSION 93. Please try re-compiling or re-installingthe module (for instance, using `npm rebuild` or `npm install`). homekit-controller.0 2022-12-16 06:48:21.807 info starting. Version 0.5.1 in /opt/iobroker/node_modules/iobroker.homekit-controller, node: v16.18.1, js-controller: 4.0.23 homekit-controller.0 2022-12-16 06:48:21.296 debug Plugin sentry Initialize Plugin (enabled=true) homekit-controller.0 2022-12-16 06:48:20.910 debug States connected to redis: 127.0.0.1:9000 homekit-controller.0 2022-12-16 06:48:20.744 debug States create User PubSub Client homekit-controller.0 2022-12-16 06:48:20.741 debug States create System PubSub Client homekit-controller.0 2022-12-16 06:48:20.674 debug Redis States: Use Redis connection: 127.0.0.1:9000 homekit-controller.0 2022-12-16 06:48:20.574 debug Objects connected to redis: 127.0.0.1:9001 homekit-controller.0 2022-12-16 06:48:20.565 debug Objects client initialize lua scripts homekit-controller.0 2022-12-16 06:48:20.306 debug Objects create User PubSub Client homekit-controller.0 2022-12-16 06:48:20.303 debug Objects create System PubSub Client homekit-controller.0 2022-12-16 06:48:20.284 debug Objects client ready ... initialize now homekit-controller.0 2022-12-16 06:48:20.115 debug Redis Objects: Use Redis connection: 127.0.0.1:9001 host.homebridge 2022-12-16 06:48:18.494 info instance system.adapter.homekit-controller.0 started with pid 621505 node-red.0 2022-12-16 06:48:17.513 info State value to set for "shelly.0.SHPLG-S#EA1400#1.Relay0.Switch" has to be type "boolean" but received type "number" host.homebridge 2022-12-16 06:48:15.779 info instance system.adapter.homekit-controller.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION) host.homebridge 2022-12-16 06:48:15.297 info stopInstance system.adapter.homekit-controller.0 send kill signal homekit-controller.0 2022-12-16 06:48:15.130 info Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason homekit-controller.0 2022-12-16 06:48:15.129 debug Plugin sentry destroyed homekit-controller.0 2022-12-16 06:48:15.127 info terminating homekit-controller.0 2022-12-16 06:48:15.118 info Got terminate signal TERMINATE_YOURSELF
Im Adapter selbst wir das erkannt, HueBridge und Twinkly Dons, aber Hue Lampen und Apple TV fehlt.
Die Adapter Version ist: 0.5.1
Kannst Du mir sagen, was hier falsch läuft.
-
@damrak2022 Also einmal hast Du scheinbar ein node-js Major upgrade gemaxcht ohne rebuild laufen zu lassen, damit geht kein BLE.
Und er findet zwei Geräte. Hue Lampen an sich sind normalerweise Zigbee und nicht Homebridge (oder haben die Lampen die Du meinst nativen HomeKit support?) Das heisst die werden an sich über die Hue Bridge exposed - die Findet er ja.
Ob das AppeTV selbst ein "Homekit device" ist was man pairen kann wage ich auch zu bezweifeln. Da sist eher ein Border-Router/Gateway.Und die zwei Dinge die er findet sind schon mit irgendwas (nehme an deinem Handy) gepaired, also können die nicht nochmals gepaired werden (HomeKit kann nur einen "Master").
Also was genau ist denn nicht korrekt?
-
@apollon77 Okay dann passt alles. Ich dachte ich könnte die am IPhone und im Adapter darstellen
-
@damrak2022 Sowas wird mit "Matter" als Protokoll gehen, aber HomeKit kann nur mit einer Instanz gepaired werden
-
Ich nutze Deinen HomeKit Controller für die Einbindung meiner Eve Thermostate, da ich bisher keinen anderen Weg gefunden habe die Werte der Thermos irgendwie anderweitig in ioBroker einzubinden (außer rudimentär über Automationen mit simpleAPI zumindest in Richtung ioBroker - in die andere Richtung wird es wesentlich umständlicher mit Pseudoswitches und verknüpften Szenen).
Die Eve Thermos laufen ja über BLE, im Haus habe ich dadurch leider des öfteren Connectionprobleme vom Rechner mit BLE im Erdgeschoss zu den beiden Thermos im Dachgeschoss
Bis Matter an den Start geht und die Eve Thermos unterstützt werden, geht wohl noch etwas Zeit ins Land um dann auch durch Thread eine bessere Verbindung zu bekommen und ggf. mit Matter Adapter die Werte in ioBroker zu bekommen.
Nun bin ich auf der Suche nach eine temporären Alternative und bin dabei ist mir der Eve Extend wieder eingefallen Eve Extend
Falls die Funktionsweise nicht bekannt sein sollte - der Extend wird mit HomeKit Code ins home Universum eingebunden per WLAN und kann dann zusätzlich per BLE z.B. mit den Eve Thermos kommunizieren. Die Thermos werden also nicht direkt mit dem Eve Extend gepaired sondern über die Eve App wird ausgewählt welche Thermos den Eve Extend als Repeater nutzen sollen - siehe auch Infos im Link oben.
Meine Theorie wäre jetzt also die folgende - ich paire die beiden schlecht erreichbaren Thermos direkt mit HomeKit, ebenso den Eve Extend und lege die beiden Thermos im Eve Extend an. Dann entferne ich den Eve Extend aus meinem Apple Home und binde ihn in deinem HomeKit Controller in ioBroker ein, in der Hoffnung dann auf diesem Weg an die Werte der beiden hoffentlich weiterhin im Eve Extend angelegten Thermos in iobroker zu kommen.
Kann das funktionieren, hast Du ggf. einen anderen/besseren Vorschlag?
Multihost mit zweitem BLE Stick usw würde ich gerne vermeiden - ist mit meinem iobroker macOS Setup schon kompliziert genug an einigen Stellen..
Danke & Gruß
-
@mac89muc wenn der extend die angebundenen Geräte quasi als Bridge anbietet sollte das genau so tun. Der HomeKit Adapter bekommt von dem Dann die Daten per wlan. Soweit die Annahme