Ankündigung

Einklappen
Keine Ankündigung bisher.

Szenen mit Smarthome.py

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

    #16
    Super.

    Danke für die Info!

    Gruß,
    Hendrik

    Kommentar


      #17
      Szenen mit Smarthome.py

      Ich habe hierzu eine verständnisfrage:
      (Auch Selbstverständlichkeiten, zur Sicherheit)

      Ist es so, dass ich in sh.py eine GA abfangen kann die auf dem bus gesendet wird?

      Kann sh.py GA mit entsprechenden Objekten und Flags auf den Bus senden?

      Kann ich zwischen diesen zwei "ebenen" python verwenden in vollem Umfang?

      Also beispielsweise:
      GA empfangen;
      Komplexe Szenen fahren, die zeitliche, logische und oder sonstige python kompatible Abhängigkeiten haben;
      Eine oder mehrere GA senden;

      Nur mal als Gedankenspiel:
      Szene Börsenkurse:
      - Aktivieren per Taster
      - Verarbeitung in Schleife in sh.py:
      - daten holen zB von yahoo
      - daten auf farbwerte abgleichen
      - farbwert zu einer RGB GA senden
      - Deaktivierung per Taster

      Sollte doch möglich sein, oder?

      Danke und Grüße,
      Escoba

      Kommentar


        #18
        Hallo Escoba,

        ja sollte alles möglich sein.
        Hat aber eigentlich nichts mit dem Thread zu tun.

        Bei Fragen bitte neuen Thread aufmachen.

        Bis bald

        Marcus

        Kommentar


          #19
          /items/szene.conf:
          Code:
          [szene]
              [[nacht]]
                  type = scene
                  knx_dpt = 1
                  knx_send = 0/4/1
                  knx_listen = 0/4/1
                  visu = yes
          /scenes/szene.nacht:
          Code:
          1 zentral.aus off
          1 wez.pm.sperre on
          restliche items.conf (gekuerzt):
          Code:
          [zentral]
              [[aus]]
                  type = bool
                  knx_dpt = 1
                  knx_send = 0/0/5
                  visu = yes
                  enforce_updates = yes
          [wez]
              [[pm]]
                  [[[sperre]]]
                      type = bool
                      visu = yes
                      knx_dpt = 1
                      knx_cache = 6/1/150
                      knx_send = 6/1/150
                      enforce_updates = yes
          Config wird ohne Probleme eingelesen, aber 1 auf 0/4/1 führt zu:

          Code:
          2013-08-04 18:42:57,335 SmartHome.py DEBUG    knx: 1.1.254 set 0/4/1 to True -- __init__.py:parse_telegram:185
          2013-08-04 18:42:57,341 SmartHome.py DEBUG    szene.nacht = 1 via KNX 1.1.254 -- item.py:_update:219
          2013-08-04 18:42:57,352 SmartHome.py ERROR    Problem running <bound method Scenes._trigger of <lib.scene.Scenes instance at 0x6cb0d0>>: _trigger() takes exactly 4 arguments (5 given) -- item.py:_update:230
          2013-08-04 18:42:58,869 SmartHome.py DEBUG    knx: 1.1.11 set 2/7/162 to 0.582000017166 -- __init__.py:parse_telegram:185
          Ich kann da eigentlich keinen Fehler feststellen, liegt das an DPT1?

          Gruss,

          der Jan
          KNX, DMX over E1.31, DALI, 1W, OpenHAB, MQTT

          Kommentar


            #20
            Hallo Jan,

            sorry war ein Bug. Ist in develop und master gefixed.

            Bis bald

            Marcus

            Kommentar


              #21
              Hallo,

              ich versuche mich gerade daran Scenen zu implementieren.
              Leider mag mir dies nicht gelingen.


              folgende Datei hat folgenden Inhalt:

              /items/myitems.conf


              [EG]
              [[wohnen]]
              name = Wohnen
              [[[Steckdose11]]]
              type = bool
              visu_acl = rw
              knx_dpt = 1
              knx_listen = 1/4/10
              knx_send = 1/2/10
              [[[Steckdose12]]]
              type = bool
              visu_acl = rw
              knx_dpt = 1
              knx_listen = 1/4/11
              knx_send = 1/2/11
              [[[Schalter31]]]
              type = scene
              visu_acl = rw
              knx_dpt = 1


              folgende Datei halt folgenden Inhalt:

              /scenes/EG.wohnen.Schalter31.conf
              #EG.wohnen.Schalter31
              1 EG.wohnen.Steckdose11 1
              1 EG.wohnen.Steckdose12 1


              debugger liefert beim Schalten von "Schalter31" - leider nicht mehr, als würde die Datei in /scenes/ nicht gefunden werden:
              2013-11-12 19:28:09,884 DEBUG Main Item EG.wohnen.Schalter31 = 1 via Visu 192.168.222.100:56675 None -- item.py:__update:363


              Es sollte nun Steckdose11 und Steckdose12 geschalten werden, sobald Schalter31 betägigt wird.
              Im Debugger sieht man die Ausführung Schalter31, leider werden die Steckdosen nicht geschalten.
              Was mache ich falsch bzw. habe ich übersehen?

              Gruss Matse

              Kommentar


                #22
                Hallo Matse,

                es gab eine Inkonsistenz begl. Doku und Code. In der Doku stand die Dateien müssen mit .conf enden, der Code erwartete sie ohne die Endung.
                Ich habe den Code angepasst. Wird mit 1.0 (Donnerstag) funktionieren.

                Bis bald

                Marcus

                Kommentar


                  #23
                  Hallo,

                  habe nun nach langem Suchen den Fehler gefunden.

                  /scenes/EG.wohnen.Schalter31.conf
                  #EG.wohnen.Schalter31
                  1 EG.wohnen.Steckdose11 1
                  1 EG.wohnen.Steckdose12 1

                  folgende Zeile hat das Problem verursacht:
                  #EG.wohnen.Schalter31

                  d.h. bestimmt Kommentare.

                  Matse

                  Kommentar


                    #24
                    Hallo Matse,

                    danke ist in develop robuster. Es werden leere Zeilen als auch Zeilen ignoriert, die mit # anfangen.

                    bis bald

                    Marcus

                    Kommentar


                      #25
                      Hi,
                      Eigentlich funktionieren Szenen nach dem Update auf 1.0 recht ordentlich, jedoch nur direkt nach einem Neustart von sh.py. Sobald ich die Szene einmal geschalten habe bleibt der Basic Button Szene ohne Funktion!

                      Kennt ihr diese Problem schon?

                      Kommentar


                        #26
                        Hi,

                        config würde helfen Dir zu helfen. Oder vllt sogar ein Log.

                        Tippe auf enforce_updates.

                        Bis bald

                        Marcus

                        Kommentar


                          #27
                          Die Szene schaltet als Test nur ein item

                          Code:
                                  [[[Buero]]]
                                      type = bool
                                      knx_dpt = 1
                                      knx_send = 1/0/21
                                      knx_listen = 1/0/24
                                      knx_cache = 1/0/24
                                      visu_acl = rw
                          Code:
                          [Szenen]
                              [[LichtRaff]]
                                  type = scene
                                  visu_acl = rw
                                  knx_dpt = 1
                          Code:
                          15 EG.Licht.Buero 0
                          Ein Auszug aus dem Log in dem ich die Szene aktiviert habe. Danach das Licht im Buero manuell eingeschaltet habe und danach wieder die Szene aktiviert. beim ersten Mal ging das Licht aus, bei zweiten Mal nicht.
                          Code:
                          2013-11-18 20:51:26,816 DEBUG    Main         192.168.0.1:55367 sent '{"cmd":"item","id":"Szenen.LichtRaff","val":"15"}' -- __init__.py:json_parse:269
                          2013-11-18 20:51:26,821 DEBUG    Main         Item Szenen.LichtRaff = 15 via Visu 192.168.0.1:55367 None -- item.py:__update:363
                          2013-11-18 20:51:26,827 DEBUG    Main         Item EG.Licht.Buero = False via Scene Szenen.LichtRaff None -- item.py:__update:363
                          2013-11-18 20:51:26,866 DEBUG    Main         knx: 0.0.1 set 1/0/21 to 00 -- __init__.py:parse_telegram:181
                          2013-11-18 20:51:26,909 DEBUG    Main         knx: 1.1.1 set 1/0/24 to False -- __init__.py:parse_telegram:190
                          2013-11-18 20:51:26,914 DEBUG    Main         Item EG.Licht.Buero_Read = False via KNX 1.1.1 1/0/24 -- item.py:__update:363
                          2013-11-18 20:51:31,034 DEBUG    Main         192.168.0.1:55367 sent '{"cmd":"monitor","items":["EG.Licht.Buero","EG.Licht.VRWand","EG.Raff.KuecheTuere.ReadPos","EG.Raff.EZTuere.ReadPos","EG.Raff.EZFensterGross.ReadPos","EG.Raff.EZFensterKlein.ReadPos","EG.Raff.WZTuere.ReadPos","EG.Raff.WZFenster.ReadPos","OG.Raff.SZSR.ReadPos","OG.Raff.KiZiJona.ReadPos","OG.Raff.KiZiWest.ReadPos","OG.Raff.VR.ReadPos","OG.Raff.Bad.ReadPos","EG.Raff.KuecheTuere.ReadAngle","EG.Raff.EZTuere.ReadAngle","EG.Raff.EZFensterGross.ReadAngle","EG.Raff.EZFensterKlein.ReadAngle","EG.Raff.WZTuere.ReadAngle","EG.Raff.WZFenster.ReadAngle","OG.Raff.SZSR.ReadAngle","OG.Raff.KiZiJona.ReadAngle","OG.Raff.KiZiWest.ReadAngle","OG.Raff.VR.ReadAngle","OG.Raff.Bad.ReadAngle","EG.Licht.TR_Read","EG.Licht.WR_Read","EG.Licht.Buero_Read","EG.Licht.VRWand_Read","EG.Licht.VRDecke_Read","EG.Licht.BadWand_Read","EG.Licht.BadDecke_Read","EG.Licht.KuecheDecke_Read","EG.Licht.KuecheSpuele_Read","EG.Licht.EZRandzone_Read","EG.Licht.EZEsstisch_Read","EG.Licht.EZGang_Read","EG.Licht.Stiege_Read","EG.Licht.Lesebereich_Read","EG.Licht.WZDecke_Read","EG.Licht.WZWand_Read","EG.Licht.WZBoxen_Read","OG.Licht.VRWand_Read","OG.Licht.KiZiJona_Read","OG.Licht.KiZiWest_Read","OG.Licht.BadDecke_Read","OG.Licht.BadSpiegel_Read","OG.Licht.BadBox_Read","OG.Licht.BadWand_Read","OG.Licht.SR_Read","OG.Licht.SZDecke_Read","OG.Licht.SZWand_Read","AB.Licht.Eingang_Read","solar.current","solar.day"]}' -- __init__.py:json_parse:269
                          2013-11-18 20:51:32,132 DEBUG    Main         192.168.0.1:55367 sent '{"cmd":"item","id":"EG.Licht.Buero","val":1}' -- __init__.py:json_parse:269
                          2013-11-18 20:51:32,137 DEBUG    Main         Item EG.Licht.Buero = True via Visu 192.168.0.1:55367 None -- item.py:__update:363
                          2013-11-18 20:51:32,172 DEBUG    Main         knx: 0.0.1 set 1/0/21 to 01 -- __init__.py:parse_telegram:181
                          2013-11-18 20:51:32,222 DEBUG    Main         knx: 1.1.1 set 1/0/24 to True -- __init__.py:parse_telegram:190
                          2013-11-18 20:51:32,228 DEBUG    Main         Item EG.Licht.Buero_Read = True via KNX 1.1.1 1/0/24 -- item.py:__update:363
                          2013-11-18 20:51:34,633 DEBUG    Main         192.168.0.1:55367 sent '{"cmd":"monitor","items":["ZS.Raffstore.Gesamt.move","ZS.Raffstore.Gesamt.stop","Szenen.Raff","ZS.Raffstore.Sueden.move","Szenen.LichtRaff","EG.Raff.KuecheTuere.ReadPos","EG.Raff.EZTuere.ReadPos","EG.Raff.EZFensterGross.ReadPos","EG.Raff.EZFensterKlein.ReadPos","EG.Raff.WZTuere.ReadPos","EG.Raff.WZFenster.ReadPos","OG.Raff.SZSR.ReadPos","OG.Raff.KiZiJona.ReadPos","OG.Raff.KiZiWest.ReadPos","OG.Raff.VR.ReadPos","OG.Raff.Bad.ReadPos","EG.Raff.KuecheTuere.ReadAngle","EG.Raff.EZTuere.ReadAngle","EG.Raff.EZFensterGross.ReadAngle","EG.Raff.EZFensterKlein.ReadAngle","EG.Raff.WZTuere.ReadAngle","EG.Raff.WZFenster.ReadAngle","OG.Raff.SZSR.ReadAngle","OG.Raff.KiZiJona.ReadAngle","OG.Raff.KiZiWest.ReadAngle","OG.Raff.VR.ReadAngle","OG.Raff.Bad.ReadAngle","EG.Licht.TR_Read","EG.Licht.WR_Read","EG.Licht.Buero_Read","EG.Licht.VRWand_Read","EG.Licht.VRDecke_Read","EG.Licht.BadWand_Read","EG.Licht.BadDecke_Read","EG.Licht.KuecheDecke_Read","EG.Licht.KuecheSpuele_Read","EG.Licht.EZRandzone_Read","EG.Licht.EZEsstisch_Read","EG.Licht.EZGang_Read","EG.Licht.Stiege_Read","EG.Licht.Lesebereich_Read","EG.Licht.WZDecke_Read","EG.Licht.WZWand_Read","EG.Licht.WZBoxen_Read","OG.Licht.VRWand_Read","OG.Licht.KiZiJona_Read","OG.Licht.KiZiWest_Read","OG.Licht.BadDecke_Read","OG.Licht.BadSpiegel_Read","OG.Licht.BadBox_Read","OG.Licht.BadWand_Read","OG.Licht.SR_Read","OG.Licht.SZDecke_Read","OG.Licht.SZWand_Read","AB.Licht.Eingang_Read","solar.current","solar.day"]}' -- __init__.py:json_parse:269
                          2013-11-18 20:51:35,626 DEBUG    Main         192.168.0.1:55367 sent '{"cmd":"item","id":"Szenen.LichtRaff","val":"15"}' -- __init__.py:json_parse:269

                          Kommentar


                            #28
                            Jemand einen Lösungsansatz parat?

                            Gesendet von meinem GT-I9505 mit Tapatalk 4

                            Kommentar


                              #29
                              Hallo,

                              habe leider ein Problem mit Scenen:

                              die Scene ist wie folgt konfiguriert:
                              0 EG.wohnen.Steckdose11 0
                              0 EG.wohnen.Steckdose12 0
                              0 EG.wohnen.Steckdose13 0
                              0 EG.wohnen.Steckdose21 0
                              1 EG.wohnen.Steckdose11 1
                              1 EG.wohnen.Steckdose12 1
                              1 EG.wohnen.Steckdose13 1
                              1 EG.wohnen.Steckdose21 1


                              Debug zeigt wie folgt, die 4 GA sollten korrekt geschalten werden, jedoch wie in der Rückmeldeadresse zu sehen ist, werden nur
                              zwei von vier davon geschalten. 10 und 13 schalten fast immer, 11 und 12 nur manchmal, wie der Zufall will.

                              2013-11-20 12:01:21,828 DEBUG Main knx: 0.0.0 set 1/2/10 to 01 -- __init__.py: parse_telegram:181
                              2013-11-20 12:01:21,843 DEBUG Main knx: 0.0.0 set 1/2/11 to 01 -- __init__.py: parse_telegram:181
                              2013-11-20 12:01:21,848 DEBUG Main knx: 0.0.0 set 1/2/12 to 01 -- __init__.py: parse_telegram:181
                              2013-11-20 12:01:21,856 DEBUG Main knx: 0.0.0 set 1/2/13 to 01 -- __init__.py: parse_telegram:181
                              2013-11-20 12:01:21,941 DEBUG Main knx: 1.1.1 set 1/4/10 to True -- __init__.py: parse_telegram:190
                              2013-11-20 12:01:22,138 DEBUG Main knx: 1.1.1 set 1/4/13 to True -- __init__.py: parse_telegram:190

                              nächster Schaltvorgang - hier werden drei von vier geschalten:
                              2013-11-20 12:09:29,914 DEBUG Main knx: 0.0.0 set 1/2/10 to 01 -- __init__.py: parse_telegram:181
                              2013-11-20 12:09:29,928 DEBUG Main knx: 0.0.0 set 1/2/11 to 01 -- __init__.py: parse_telegram:181
                              2013-11-20 12:09:29,936 DEBUG Main knx: 0.0.0 set 1/2/12 to 01 -- __init__.py: parse_telegram:181
                              2013-11-20 12:09:29,943 DEBUG Main knx: 0.0.0 set 1/2/13 to 01 -- __init__.py: parse_telegram:181
                              2013-11-20 12:09:30,048 DEBUG Main knx: 1.1.1 set 1/4/10 to True -- __init__.py: parse_telegram:190
                              2013-11-20 12:09:30,246 DEBUG Main knx: 1.1.1 set 1/4/12 to True -- __init__.py: parse_telegram:190
                              2013-11-20 12:09:30,446 DEBUG Main knx: 1.1.1 set 1/4/13 to True -- __init__.py: parse_telegram:190

                              Wo könnte der Fehler stecken? Evt. ein Timingproblem?

                              Matse

                              Kommentar


                                #30
                                Zitat von fuxl66 Beitrag anzeigen
                                Jemand einen Lösungsansatz parat?
                                Ja:

                                Zitat von mknx Beitrag anzeigen
                                Tippe auf enforce_updates.
                                Tippe ich auch, probiere mal:

                                Code:
                                [Szenen]
                                    [[LichtRaff]]
                                        type = scene
                                        [B]enforce_updates = true[/B]
                                        visu_acl = rw
                                        knx_dpt = 1
                                Umgezogen? Ja! ... Fertig? Nein!
                                Baustelle 2.0 !

                                Kommentar

                                Lädt...
                                X