Ankündigung

Einklappen
Keine Ankündigung bisher.

WLAN Steckdose mit KNX schalten

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • frankthegreat
    antwortet
    So richtig weiß ich nicht was geht oder was nicht geht oder wo dein Problem genau ist

    Aber gefühlt würde ich die 4/1/10 und die 4/1/11 mal tauschen, dann sollte schonmal Schalten und Status funktionieren.
    Viel Erfolg.

    Einen Kommentar schreiben:


  • rok123
    antwortet
    Ich habe auch ein Problem mit meinem Sonoff TH10 möchte gerne die Temp. und die Schaltfunktion ins KNX einbinden.



    ets.PNG tasmota.PNG
    Angehängte Dateien

    Einen Kommentar schreiben:


  • martiko
    antwortet
    Zitat von woda Beitrag anzeigen
    Idee für eine Rule:

    on System#Boot do var1 0 endon on tele-Energy#Power do var1 %value% endon on event#knxrx_req1 do knxtx_val1 %var1% endon

    Damit wird die Variable im unter Teleperiod eingestellten Intervall mit dem Power Wert gefüllt und bei einem Request mit dem Wert in der Variable geantwortet.
    Hi,
    hat leider weder mit noch ohne tele- funktioniert... Verstehe ich irgendwie nicht. Aber so eilig ist es mir nicht, ich hoffe mal, dass es mit einem der nächsten Update ohne Rule funktioniert. Das Update von Heute (Tasmpta 8.5.0) hat es leider noch nicht beinhaltet...

    Einen Kommentar schreiben:


  • martiko
    antwortet
    woda
    Danke, ich schaue mir das als Übergangslösung morgen noch mal an.

    Generell zur Info: Also es ist kein Bug sondern einfach für Power (noch) nicht implementiert, hier die offizielle Antwort:
    Hi,

    Thanks for reporting. Your settings are ok but what is happening is that Tasmota will answer a KNX read request only for relays, temperature and humidity. It is not implemented for POWER. I will add it. Tagging this issue as a Enhancement.

    Until it is implemented, if you want, you can use a rule to answer that read request.

    Just a reminder for anyone reaching this issue (I have to add this also to the docs)

    Tasmota answer the state when a read request arrives to the "group address
    to receive data".


    Tasmota is not listening the "group address to send data"
    DerKNXDude
    Das ist natürlich auch eine interessante Möglichkeit und wenn man keine IP-Router hat sicher auch eine gute Lösung.
    Aber mir war eine richtige KNX-Integration (auch für potentielle andere Devices mit Tasmota) die 240€ für den IP-Router wert.

    Einen Kommentar schreiben:


  • DerKNXDude
    antwortet
    Ich misch mich mal kurz ein um eine Lösung zu bieten für alle die so wie ich gedacht haben der Gira X1 hätte eine IP Router funktion und dann nachher rausfinden das dieser diese doch nicht hat.
    Da mir das ganze Geraffel mit Knxd usw nur für ein paar Steckdosen zu schalten zu kompliziert war, habe ich einfach eine kleine Logik im X1 angelegt um eine Tasmota Steckdose zu Schalten.

    Dazu wird einfach über je einen HTTP Request Baustein hier aus dem Forum mit den Parametern
    http://192.168.XXX.XX/cm?cmnd=Power%20ON für An und
    http://192.168.XXX.XX/cm?cmnd=Power%20OFF für Aus
    verwendet und der Status kann auch über ein Objekt abgefragt werden, allerdings ist das Format dann leider nur ein Text mit den Parametern
    {"POWER":"On"} bzw {"POWER":"OFF"}, habe noch keine Lösung gefunden die Rückmeldung als Binär wieder umzuwandeln.

    Vielleicht hilft es ja dem ein oder anderem weiter.
    Angehängte Dateien

    Einen Kommentar schreiben:


  • woda
    antwortet
    Verstehe. Nein ich bin da kein Profi, musste mich nur schon intensiv damit beschäftigen.

    ​​​​​​​Wenn du das tele- weg lässt, müsste immer der aktuelle Wert in der Variable landen.

    Einen Kommentar schreiben:


  • martiko
    antwortet
    woda
    Wow, ich merke Du bist echt fit, was die Konfiguration/Programmierung von Tasmota angeht...

    Aber ich möchte da eigentlich ungern "herumbastel", zumal dann beim Read ja gar nicht der wirklich aktuelle Wert sondern ein ggf. einige Minuten alter Wert zurückgeliefert wird.

    Daher habe ich jetzt mal mein Problem bei Tasmota auf Github gepostet und hoffe, es gibt eine andere "Standard" Lösung (ggf. in einer neuen Tasmota-KNX Firmware):
    https://github.com/arendst/Tasmota/issues/9236

    Wenn es da keine Lösung gibt, komme ich aber auf Deinen Tipp zurück. Es ist in jedem Fall besser, dass auf ein Read ein (etwas) älterer Wert zurück geliefert wird, als gar keiner...

    Einen Kommentar schreiben:


  • woda
    antwortet
    Idee für eine Rule:

    on System#Boot do var1 0 endon on tele-Energy#Power do var1 %value% endon on event#knxrx_req1 do knxtx_val1 %var1% endon

    Damit wird die Variable im unter Teleperiod eingestellten Intervall mit dem Power Wert gefüllt und bei einem Request mit dem Wert in der Variable geantwortet.

    Einen Kommentar schreiben:


  • martiko
    antwortet
    Zitat von woda Beitrag anzeigen
    woda
    Danke, dass Du Dir da so viele Mühe machst! Leider steht in dem Artikel eigentlich nichts drin, was ich falsch mache, ausser, dass es sogar ohne Rules funktionieren müssten. Aber das tut es nicht (darum habe ich ja überhaupt mit Rules angefangen).
    Wie gesagt, beim "Output1" (das ist der Schaltzustand 0 oder 1) funktioniert es wie dort beschrieben, mit der folgenden Configuration:
    Bei Sent: Output 1 -> 1 / 2 / 80
    Bei Receive: 1 / 1 / 80 -> Output 1 UND 1 / 2 / 80 -> Output 1
    Damit kann ich über die 1/1/80 schalten und über 1/2/80 den Status abfragen.

    Für Power habe ich es fast identisch (ausser dass es natürlich keine Adresse gibt um Power zu setzen):
    Bei Sent: Power -> 1 / 3 / 80
    Bei Receive: 1 / 3 / 80 -> Reply Power

    Die Variable heisst ja sogar Reply Power (ist damit für mich sogar eindeutiger als bei Output 1, aber es kommt eben leider keine Antwort.

    Vielleicht sollte ich aber mit meinem Problem mal im Tasmota Wiki (vielleicht sogar dem von Dir verlinkten Thread) aktiv werden...

    Einen Kommentar schreiben:


  • woda
    antwortet
    martiko , es geht auch ohne Rules:

    https://github.com/arendst/Tasmota/issues/3165

    Einen Kommentar schreiben:


  • woda
    antwortet
    Du bist nicht der erste, das hatte ich schon am laufen, aber wieder auf zyklisch, mit Zyklusdauer abhängig von der Last umgestellt.
    Bei Last < 2W ist der Zyklus 1 Minute, darüber 30 Sekunden.

    Rule:
    on Energy#Power<2 do backlog teleperiod 60 endon on Energy#Power>=2 do backlog teleperiod 30 endon

    Einen Kommentar schreiben:


  • martiko
    antwortet
    Ich habe schon %ENERGY_POWER%, %ENERGY_CURRENT%, %ENERGY%, %POWER% probiert... liefert leider alles nur 0...

    Bin ich wirklich der erste, der so einen Plug mit Strommessung hat und versuch den per Read abzufragen?

    Prinzipiell ist es zwar nicht soooo wichtig weil der Wert ja nach meiner Änderung alle 2 Minuten gesehen wird, aber irgendwie hat mich da schon der Ehrgeiz gepackt und für mich gehört eigentlich zu einer "sauberen" Installation, dass sich so ein Messwert auch mit einem Read abfragen lässt.

    Einen Kommentar schreiben:


  • woda
    antwortet
    In der Anleitung steht ENERGY_POWER, damit mal versuchen.

    Einen Kommentar schreiben:


  • martiko
    antwortet
    Hallo Wolfgang woda
    danke dass Du noch mal geantwortet hast. Ich habe mir das durchgelesen und dachte eigentlich, ich hätte alles soweit gemacht,
    also ich habe:
    In der KNX-Konfiguration
    1/3/80 bei TX1 für send requests eingetragen, also: KNX TX 1 -> 1 / 3 / 80
    1/3/80 bei TX1 auch für receive requests eingetragen, also 1 / 3 / 80 -> KNX RX 1

    Dann habe ich als Rule folgendes eingetragen:
    Code:
    rule on event#knxrx_req1 do knxtx_val1 %var3% endon
    die Zeile hatte ich aus dem Beispiel.

    doch da kommt dann als Antwort in der Console:
    Code:
    RUL: Stored uncompressed, would compress from 46 to 40 (-13%)
    RSL: RESULT = {"Rule1":"ON","Once":"OFF","StopOnError":"OFF","Le ngth":46,"Free":465,"Rules":"on event#knxrx_req1 do knxtx_val1 %var3% endon"}
    Also ein Beispiel wo mal komplett zu sehen ist, was man Eintragen muss um einen bestimmten Wert als Antwort auf ein Read zu senden, habe ich nicht gefunden, und bei dem Beispiel mache ich offensichtlich einen Fehler :-(

    Gruß
    Martin

    PS: Ich habe jetzt mal mit
    Code:
    rule on event#knxrx_req1 do knxtx_val1 %POWER% endon
    probiert, da kommt dann immerhin keine Fehlermeldung... und auf ein Read-Request kommt sogar eine Antwort, aber die ist immer 0. D.h. prinzipiell funktioniert es wohl, aber %POWER% ist wohl falsch... Was muss ich denn da eintragen, dass der aktuelle Stromverbrauch geantwortet wird?
    In der Console sieht das dann so aus, wenn ein Read-Request angekommen ist:
    Code:
    16:01:26 RUL: EVENT#KNXRX_REQ1 performs "knxtx_val1 %POWER%"
    16:01:26 KNX: KNX TX 1 = 0.00 sent to 1.3.80
    16:01:26 RSL: RESULT = {"KnxTx_Val1":"0.00"}
    PPS: Wenn der Wert Zyklisch (korrekt) an KNX gesendet wird, steht in der Tasmota Console nur:
    Code:
    16:23:08 KNX: Power sent to 1.3.80
    Und er Wert kommt auch korrekt in KNX an, zeige ich mir über X1 in der App an.
    Zuletzt geändert von martiko; 04.09.2020, 16:27.

    Einen Kommentar schreiben:


  • woda
    antwortet
    Hallo martiko , beim Macher der KNX Anbindung für Tasmota ist unter den Beispielen auch ein Read Request Beispiel https://github.com/ascillato/Tasmota_KNX.
    In der KNX Konfiguration kannst du die hörenden Adressen unter KNX. RX1 - 5, und die sendenden Adressen unter KNX TX1 - 5 anlegen.
    Diese lassen sich dann in den Rules verwenden.

    Wichtig: Rules müssen aktiviert werden und können zyklisch oder jeweils einmalig, bei erreichen einer Bedingung laufen.

    Gruß,
    Wolfgang

    Einen Kommentar schreiben:

Lädt...
X