Ankündigung

Einklappen
Keine Ankündigung bisher.

enOcean via fhem und HS auf KNX

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

    KNX/EIB enOcean via fhem und HS auf KNX

    Hallo,

    Hoppe SecuSignal Fenstergriffe habe ich mittels RasperryPi, fhem, einem HS gateway und einem HS auf KNX gebracht. Da ich gefragt wurde, wie das ginge, hier dieser Post, damit evtl. auch andere davon profitieren können...

    Hier der Link zu dem HS-Gateway:
    hsd | Free Communications software downloads at SourceForge.net

    Und hier ein fhem Konfigurationsbesipiel:
    fhem_sample_cfg.txt

    #2
    Danke das war genau das was ich gesucht habe

    Vielen Dank

    Kommentar


      #3
      Habe noch ein kleine Ergänzung:
      Für den HS habe ich einen Logikbaustein, der den Rolladen des Fensters in Abhängigkeit vom Status des Fenstergriffs steuert:
      https://knx-user-forum.de/downloads.php?do=file&id=524

      Kommentar


        #4
        Klasse probiere ich gleich mal aus

        Kommentar


          #5
          Achtung! FHEM wird von der Fritzbox demnächst nicht mehr unterstützt!

          Fritzbox-Update hängt Bastler ab | heise online

          Kommentar


            #6
            Zitat von En3rGy Beitrag anzeigen
            Hallo,

            Hoppe SecuSignal Fenstergriffe habe ich mittels RasperryPi, fhem, einem HS gateway und einem HS auf KNX gebracht. Da ich gefragt wurde, wie das ginge, hier dieser Post, damit evtl. auch andere davon profitieren können...
            ...Gibt es auch ein Beispiel um ein Temperatursensor, Schalter oder andere Geräte in KNX Telegramme zu wandeln?

            Mit dem Fenstergriff funktioniert schon mal !!!

            Kommentar


              #7
              Ist die Frage an die Konfiguration solcher Sensoren in FHEM (1) oder an die Fähigkeiten von eibd (2) gerichtet?

              Für (1) würde ich mal in einem fhem Forum suchen
              Für (2) kann ich sagen, dass im Moment Zahlen zwischen 0 und (ich meine) 255 über eibd und einen HS auf KNX gebracht werden können. D.h. jeder sensor, der das liefert kann bedient werden. Schalter sind somit überhaupt kein Problem, Zustände (wie beim Fenstergriff) auch nicht. Alles andere klappt vermutlich nicht so einfach, müsste man aber mal ausprobieren...

              Kommentar


                #8
                Also mein enocean Magnetkontakt funktioniert dank Deines Beispiels sehr gut.

                Deinen Code habe ich an mein System angepasst und schaltet eine KNX Gruppenadresse an und aus, 0 und 1.

                Mein Temperatursensor liefert mir im Augenblick einen Wert von 242

                und mein 2-fach Taster A0, A1, B0, B1, also Wippe 1 und Wippe 2 jeweils die Schaltzustände. Nur wie parse ich diese Werte ???

                Hast Du evtl. einen fertigen und funktionierenden Code???

                Kommentar


                  #9
                  Fertigen Code habe ich keinen. Bin aber überrascht, das sich das Schema nicht 1:1 anwenden lässt.
                  Für die Wippen müsste doch das gleiche klappen:
                  define set.WippeA notify SchalterMitWippe { if ( "%" eq "A0" ) { fhem "set KNX.WippeA value 00" }}
                  usw.

                  Beim Temperatursensor könnte sogar das einfache notify funktionieren, einfach mal Google bemühen, wie es geht. Und dann die Lösung hier Posten

                  Kommentar


                    #10
                    So, Zwei Wippen- Schalter funktioniert auch...hier mal mein Code.

                    Code:
                    ### Enocean
                    define Schalter EnOcean 00100B45
                    attr Schalter IODev TCM310_0
                    attr Schalter room EnOcean
                    attr Schalter subType Schalter
                    define KNX.WippeA EIB 1/0/0
                    attr KNX.WippeA IODev KNX
                    attr KNX.WippeA eventMap 00:A0 01:AI
                    ### KNX
                    define KNX.WippeB EIB 1/1/0
                    attr KNX.WippeB IODev KNX
                    attr KNX.WippeB eventMap 00:B0 01:BI
                    ### Parsen
                    define set.WippeA0 notify Schalter { if ( "%" eq "A0" ) { fhem "set KNX.WippeA value 00" }}
                    define set.WippeAI notify Schalter { if ( "%" eq "AI" ) { fhem "set KNX.WippeA value 01" }}
                    define set.WippeB0 notify Schalter { if ( "%" eq "B0" ) { fhem "set KNX.WippeB value 00" }}
                    define set.WippeBI notify Schalter { if ( "%" eq "BI" ) { fhem "set KNX.WippeB value 01" }}
                    Jetzt fehlt nur noch der Temperatursensor. Wie bekomme ich nur den Wert auf dem KNX Bus ???

                    Kommentar


                      #11
                      Wie gesagt, hast du mal Google bemüht?

                      http://fhem.de/commandref.html#notify

                      Mit
                      define tempNotif notify enOcean.temp set knx.temp $EVENT

                      Sollte der Wert des Sensors auf die GA geschrieben werden. Kann aber sein, dass hsd das nicht vollständig unterstützt. Was kommt denn auf der GA an?

                      Kommentar


                        #12
                        Zitat von daniel.duese Beitrag anzeigen
                        Jetzt fehlt nur noch der Temperatursensor. Wie bekomme ich nur den Wert auf dem KNX Bus ???
                        Solltest du hsd benutzen, habe ich gerade eine neue Version hochgeladen (v0.4.8), die auch Temperaturen überträgt:
                        https://sourceforge.net/projects/knxhsd/files/

                        Meine Konfiguration zur Übertragung der Temperatur sieht dann so aus (für eine FBDECT Steckdose):
                        Code:
                        define set.TEMP notify FBDECT.Temp { \
                          my ($val, undef) = split(/ /, ReadingsVal( "FBDECT.Temp", "temperature", 0));; \
                          if ( $val ne Value( "AUSSEN.TEMPERATUR.KNX" ) ) {\
                            fhem ("set AUSSEN.TEMPERATUR.KNX value $val") \
                          } \
                        }

                        Kommentar


                          #13
                          Hi,

                          nachdem ich nun 2 std vieles probiert habe frage ich dann doch einmal nach:

                          Ich hape sowohl einen Hoppe Enocean Fenstergriff als auch eine Doppelwippe hier. Beide übertragen an FHEM korrekt ihre Werte. Auch kann ich notify nutzen, um z.B. beim Einschalten eines KNX Aktorkanals einen zweiten mit einzuschalten. Konnektivität von FHEM und KMX sowie Enocean zu FHEM ist also gegeben.

                          Setze ich aber die obigen Codebeispiele zu Fenstergriff oder der Wippe um, bekomme ich es nicht hin, dass etwas auf den KNX Bus gesendet wird. Klicke ich im Webfront auf den KNX Schalter geht etwas raus auf dem Bus, aber eine Änderung der Enocean-Schalterstellungen bewirkt nichts. Muss noch etwas weiteres aktiviert werden?


                          Code:
                          define EnO.FENSTER EnOcean 0197E548
                          attr EnO.FENSTER IODev TCM_ESP3_0
                          attr EnO.FENSTER room EnOcean
                          attr EnO.FENSTER subType windowHandle
                          
                          
                          #Enocean-KNX
                          define KNX.FENSTER EIB 8/1/0
                          attr KNX.FENSTER IODev KNX
                          attr KNX.FENSTER room EIB
                          attr KNX.FENSTER eventMap 00:closed 01:open 02:tilted
                          
                          
                          #### Notifies
                          
                          define set.Fenster.offen notify EnO.FENSTER { if ( "%" eq "open" ) { fhem "set KNX.FENSTER value 01" }}
                          
                          define set.Fenster.closed notify EnO.FENSTER { if ( "%" eq "closed" ) { fhem "set KNX.FENSTER value 00" }}
                          
                          define set.Fenster.tilted1 notify EnO.FENSTER { if ( "%" eq "tilted" ) { fhem "set KNX.FENSTER value 02" }}
                          
                          define set.Fenster.tilted2 notify EnO.FENSTER { if ( "%" eq "open_from_tilted" ) { fhem "set KNX.FENSTER value 01" }}

                          Kommentar


                            #14
                            Hallo, die notifiys habe ich etwas vereinfacht aber sonst sieht es bei mir genauso aus. Man kann bei FHEM das Debug-Level hochsetzen (einfach mal googlen). Dann kann man in der Logdatei ganz gut sehen, wo das Signal hängen bleibt...

                            Code:
                            define EG.FENSTER.WC.KNX EIB 1234
                            attr EG.FENSTER.WC.KNX IODev KNX
                            attr EG.FENSTER.WC.KNX eventMap 00:closed 01:open 02:tilted
                            attr EG.FENSTER.WC.KNX room EIB,EG
                            attr EG.FENSTER.WC.KNX webCmd raw closed:raw open:raw tilted
                            
                            define EnO.EG.FENSTER.WC EnOcean 00000001
                            attr EnO.EG.FENSTER.WC IODev TCM310
                            attr EnO.EG.FENSTER.WC room EnOcean,EG
                            attr EnO.EG.FENSTER.WC subType windowHandle
                            
                            define set.EG.Fenster.WC.offen notify EnO.EG.FENSTER.WC:open set EG.FENSTER.WC.KNX value 01
                            define set.EG.Fenster.WC.closed notify EnO.EG.FENSTER.WC:closed set EG.FENSTER.WC.KNX value 00
                            define set.EG.Fenster.WC.tilted1 notify EnO.EG.FENSTER.WC:tilted set EG.FENSTER.WC.KNX value 02
                            define set.EG.Fenster.WC.tilted2 notify EnO.EG.FENSTER.WC { if ( "%" eq "open from tilted" ) { fhem "set EG.FENSTER.WC.KNX value 01" }}

                            Kommentar


                              #15
                              Danke sehr, aber ich erkenne auch keinen Unterschied im Code... Werde mal nach dem Debug-Modus googlen...

                              Kann es an KNXD liegen? Die To-Do's stammen ja häufig noch aus der EIBD Zeit. Aber wie gesagt, der set-Befehl geht ja wenn ich den notify auf eine KNX Adresse horchen lasse.

                              Kommentar

                              Lädt...
                              X