TPLink Kasa 110 einbinden

  • Irgendwie bin ich zu blöd meinen TP Link Kasa 110 (der mit Energymonitoring) einzubinden. Ich nutze dafür das Plugin homebridge-tplink-smarthome: https://www.npmjs.com/package/homebridge-tplink-smarthome


    Meine config:


    Ich habe mal testweise bei deviceTypes "plug" geschrieben, geht aber auch nicht. Macht also erstmal keinen Unterschied ob es drin steht oder nicht. "Plug" steht deswegen da drin, weil ich das der Anleitung entnommen habe: https://www.npmjs.com/package/…-tplink-smarthome#homekit (siehe HS110)

    Ich kriege auch keine Fehlermeldung. Es sieht so aus, als wäre es sauber eingebunden. Nur finde ich es weder in Homekit noch in der Eve App. An die Leute, die das erfolgreich hinbekommen haben: Als was ist es bei euch unter welchem Namen aufgetaucht? Eigentlich sollte ja ein neues Gerät "TplinkSmarthome" mit der Kennzeichnung "Plug" auftauchen. Ich finde nichts dergleichen.


    Der HS110 ist in der Steckdose und blinkt orange. Muss da noch was gemacht werden?

  • Also ich habs so in der config stehen (und funzt):


    ... sind also 3 Steckdosen (2x HS100 und 1x HS110) mit static-IP (in der Kasa-App definiert)

    ... und Energymonitoring nur unter Eve!!

  • Was soll ich sagen. Kasa App geladen, eingerichtet, IP aus der Fritze rausgefischt und mit "host" eingerichtet. Geht alles. Besten Dank!

  • Aber weißt du zufällig noch, wie man in der Eve App eine Abfrage ala „Wenn Verbrauch über 1 Watt, dann“ macht? Ich seh neue die Möglichkeit zu prüfen ob der Verbrauch EXAKT (=) 1 Watt ist, aber nichts > oder <


    Bzw. noch interessanter, die Kassa App zeigt W an, aber keine kWh, die eve App dagegen will einen exakten kWh Wert haben.

  • Nö, weiß ich nicht. Aber Versuchs doch mal.

    Habs gerade mal angeschaut und geht doch recht einfach...


    Regeln

    .. hinzufügen (runterscrollen) - Auslöser - ... hinzufügen - Anderer Wert - runter zu Typen - Strom - HS110 auswählen - Hinzufügen

    Weiter

    Wert-Bedingung - runter zu Typen - Verbrauch (oder Gesamtverb.) - HS110 auswählen - aktivieren - Verbrauch wählen

    Weiter

    dann eine Szene auswählen (mußt du halt vorher noch definieren..

    Fertisch!!



    ... noch einfacher mit "Controller" :)

  • Und das läuft so bei dir? Ich hab das genauso gemacht (nun kann ich auch als Wert-Bedingung >= wählen), aber das will nicht.

    Laut Kasa App steigt der Verbrauch bei Verwendung auf 5W und höher an. Dann soll halt bspw das Licht ausgehen. Aber irgendwie will die automation nicht so wie ich will. Es tut sich einfach nichts, auch wenn laut kasa App der Verbrauch höher ist als 1W. Was meinst du eigentlich mit „Controller“?

  • Hab nur geschaut wie man's machen könnte - kein Beleg für Sinnhaftigkeit und Funktionalität :)

    Ich frage da selbst nichts ab zwecks Verbrauch oder aktuelle Watt oder....

  • Fehler konnte eingegrenzt werden und ist wohl auf der Seite des Plugins zu suchen. In meinen Log-Files war mehrmals folgender Fehler

    Code
    [9/2/2019, 4:31:30 PM] [TplinkSmarthome] Error: TCP Timeout
    at Timeout.setTimeout [as _onTimeout] (/usr/local/lib/node_modules/homebridge-tplink-smarthome/node_modules/tplink-smarthome-api/lib/client.js:228:20)
    at ontimeout (timers.js:436:11)
    at tryOnTimeout (timers.js:300:5)
    at listOnTimeout (timers.js:263:5)
    at Timer.processTimers (timers.js:223:10)

    bisschen googlen ergab, dass einige das Problem hatten. Unter anderem wurde dazu geraden ein Downgrade auf Version 3.13.0 zu machen. Hab ich getan und nun sieht mein Log folgendermaßen beim starten der Homebridge aus

    Code
    [9/2/2019, 4:37:58 PM] [TplinkSmarthome] Configuring cached accessory: [TP-LINK_Smart Plug_CDCB] undefined XXX-XXX-XXX-99XXX-XXX
    [9/2/2019, 4:37:58 PM] [TplinkSmarthome] New Device Online: [HS110] plug [XXX] 192.168.178.25 9999
    [9/2/2019, 4:37:58 PM] [TplinkSmarthome] Adding: [HS110] plug [XXX]
    [9/2/2019, 4:37:58 PM] [TplinkSmarthome] [HS110] Correcting Accessory Category from: SWITCH to: OUTLET
    HAP Warning: Characteristic E863F10A-079E-48FF-8F27-9C2605A29F52 not in required or optional characteristics for service 00000047-0000-1000-8000-0026BB765291. Adding anyway.
    HAP Warning: Characteristic E863F126-079E-48FF-8F27-9C2605A29F52 not in required or optional characteristics for service 00000047-0000-1000-8000-0026BB765291. Adding anyway.
    HAP Warning: Characteristic E863F10D-079E-48FF-8F27-9C2605A29F52 not in required or optional characteristics for service 00000047-0000-1000-8000-0026BB765291. Adding anyway.
    HAP Warning: Characteristic E863F110-079E-48FF-8F27-9C2605A29F52 not in required or optional characteristics for service 00000047-0000-1000-8000-0026BB765291. Adding anyway.
    HAP Warning: Characteristic E863F10C-079E-48FF-8F27-9C2605A29F52 not in required or optional characteristics for service 00000047-0000-1000-8000-0026BB765291. Adding anyway.
    HAP Warning: Characteristic 00000053-0000-1000-8000-0026BB765291 not in required or optional characteristics for service 0000003E-0000-1000-8000-0026BB765291. Adding anyway.

    Nach einiger Zeit kommt aber wieder der Timeout:


    Code
    [9/2/2019, 4:45:03 PM] [TplinkSmarthome.API] TCP Timeout
    [9/2/2019, 4:45:03 PM] [TplinkSmarthome.API] [HS110] device.send() Error: TCP Timeout
    [9/2/2019, 4:45:03 PM] [TplinkSmarthome] [HS110] emeter.getRealtime()
    [9/2/2019, 4:45:03 PM] [TplinkSmarthome] Error: TCP Timeout
    at Timeout.setTimeout [as _onTimeout] (/usr/local/lib/node_modules/homebridge-tplink-smarthome/node_modules/tplink-smarthome-api/lib/client.js:228:20)
    at ontimeout (timers.js:436:11)
    at tryOnTimeout (timers.js:300:5)
    at listOnTimeout (timers.js:263:5)
    at Timer.processTimers (timers.js:223:10)


    Nun wird es richtig interessant. Der HS110 taucht aber in Homekit und in der Eve App auf. Ich kann den sogar in Homekit ein- und ausschalten. Wenn ich das tu, tut sich aber nichts im Log (sinngemäß "HS110 activated"), im Gegensatz wenn ich zB mein Licht einschalte:

    Code
    [9/2/2019, 4:42:13 PM] [Hue] LED-Stripe: homekit on changed from 0 to 1


    Auch wenn ich was an dem Adapterr lade, taucht in den Logs nichts auf. Irgendwo hier wird der Fehler liegen nur habe ich keine Ahnung wie der Timeout zustande kommt?

  • Um es merkwürdiger als ohnehin zu machen:


    Ich kann in Eve bei dem Gerät sehen wie der aktuelle Verbrauch in Echtzeit ist, die Daten werden trotz komischer Logfiles durchgereicht.

    Ich erstelle nun eine Regel:

    Auslöser: Licht an / Wert-Bedingung: Verbrauch >= 1 W / Szene: Licht aus

    Wenn der Verbrauch nun also größer gleich als 1 W ist, soll das Licht ausgeschalten werden. Geht nicht.


    Nun erstelle ich eine neue Regel:

    Auslöser: Licht an / Wert-Bedingung: Verbrauch <= 1 W / Szene: Licht aus

    Abfrage ob der Verbrauch kleiner gleich 1 W ist.


    Hier sollte man nun erwarten, dass einfach garnichts passiert, da ja bereits die erste Szene (trotz durchgereichter Daten!) nichts gemacht hat. Ich speicherte alles, schalte das Licht ein und es geht schlagartig wieder aus. Diese Regel geht also. Es wurd egeprüft ob das Licht an ist (ist es) , der Verbrauch <= 1 W ist (ist es, weil nichts dran hing) und dann: Licht aus. Anders herum geht es aber nicht, ich komme locker auf einen Wert von 4-6 Watt im Verbrauch.


    Machen wies nochnoch merkwürdiger. Ich habe das mit meinem Ventilator getestet, 24 W im Verbrauch. Alles gleich, als Test habe ich meine Hue Iris einfach einschalten lassen sobald der Verbrauch >= 5 W ist. Da passiert nichts, soweit "normal" (jedenfalls anscheinend bei mir), nun mache ich die Abfrage <= 5 W und trotz Verbrauch von 24 W durch den Ventilator geht die Lampe auf einmal an.


    Nachtrag aus dem Jahr 2020: Falls das hier jemand liest und die gleichen Probleme hat: In der Eve App darf der Auslöser nicht "Licht an" sein, sondern "Wenn TP Link Kasa 110 in Verwendung". Wenn "Licht an" gewählt wurde, wird die Routine nur getriggert wenn der Kasa 110 in benutzt wird (also zB ein Gerät darüber Strom zieht) und DANACH die Lampe angestellt wird. Wenn die Lampe bereits vorher aktiv war, dann wird die Routine nicht getriggert. Wenn man nun als Auslöser "...in Verwendung" wählt, wird die Routine tatsächlich nur dann ausgelöst, wenn der Kasa 110 benutzt wird UNABHÄNGIG wann die Lampe angestellt wurde.