Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Logic Fensterkontakt

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

    - √ - Logic Fensterkontakt

    Hallo, ich möchte mir eine Alarmanlage mit KNX basteln und den Zustand aller Fensterkontakte im Haus (MDT-Glastaster) anzeigten lassen.

    Nun habe ich folgendes in die Logic geschrieben, es wird aber nicht am Glastaster angezeigt (per roter und weisser LED Taste)

    logic.conf:
    PHP-Code:
    [Fensterkontakt_eg_logic]
      
    filename fensterkontakt_aufzu_EG.py
      watch_item 
    EG.Essplatz.door_essplatz EG.Buero.door_buero EG.Kueche.door_kueche 
    fensterkontakte_aufzu_EG.py
    Code:
    if (sh.EG.Essplatz.door_essplatz() or sh.EG.Buero.door_buero() or sh.EG.Kueche.door_kueche()) == 1
          sh.EG.status_fensterkontakt_eg(1)
       
    else:
        sh.EG.status_fensterkontakt_eg(0)
    Bitte um Hilfe

    #2
    mit einem Fenster habe ich es bereits hinbekommen aber bei 3 habe ich vermutlich einen Fehler.

    Code:
    if sh.EG.Essplatz.door_essplatz() == 1 or sh.EG.Buero.door_buero() == 1 or sh.EG.Kueche.door_kueche() == 1:
          sh.EG.status_fensterkontakt_eg(1)
       
    else:
        sh.EG.status_fensterkontakt_eg(0)
    Code:
    [Fensterkontakt_eg_logic]
      filename = fensterkontakt_aufzu_EG.py
      watch_item = EG.Essplatz.door_essplatz | EG.Buero.door_buero | EG.Kueche.door_kueche

    Kommentar


      #3
      Hallo,
      Im ersten Beispiel fehlt zumindest ein : hinter dem if.

      Michael

      Kommentar


        #4
        Hier mal nachlesen.

        Kommentar


          #5
          Hallo,

          da braucht es nicht mal eine extra Logik für.

          Code:
          [EG]
              [[status_fensterkontakt_eg]]
                  type = bool
                  eval = or
                  eval_trigger =  EG.*.door_*
          Bis bald

          Marcus

          Kommentar


            #6
            Danke, möchte auch an die ETS senden mit diesem Code funktioniert es aber nicht. (Habe die Itemnamen gekürzt)

            Code:
            [EG]
            [[status_fensterkontakt_eg]]
                    type = bool
                    eval = or
                    eval_trigger =  EG.door_*
                    knx_send = 4/0/5

            Kommentar


              #7
              vieleicht ein
              Code:
              visu_acl = rw
              knx_dpt = 1
              hm.... mich würde aber auch interessieren warum Deine 2te Logik nicht geht bzw. ging.

              Kommentar


                #8
                Hi ich schaff es einfach nicht weder mit einer Logik noch mit eval_trigger.
                Die Logik wird gar nicht angezeigt und der Trigger arbeitet falsch. D.h. wenn ich ein Fenster öffne funktioniert es aber das 2te wird ignoriert.



                eval_trigger:
                Code:
                 
                [EG]
                [[door_wz]]
                    type = bool
                    visu_acl = rw
                    knx_dpt = 1
                    knx_listen = 4/0/2
                    knx_init = 4/0/2
                            
                     
                  [[status_fensterkontakt_egog]]
                        type = bool
                        knx_dpt = 1
                        eval = or
                        eval_trigger =  *.door_*
                             visu_acl = rw
                              knx_send = 4/0/19
                        knx_init = 4/0/19
                        
                        
                [[status_fensterkontakt_all]]
                        type = bool
                              visu_acl = rw
                              knx_dpt = 1
                              knx_listen = 4/0/5
                              knx_init = 4/0/5
                        knx_send = 4/0/5
                HTML-Code:
                  {{ basic.symbol('s2', 'EG.status_fensterkontakt_egog', 'Fenster zu', icon1~'light_light.png', 1)  }}
                              {{ basic.symbol('s3', 'EG.status_fensterkontakt_egog', 'Fenster auf', icon1~'light_light.png', 0) }}
                              {{ basic.symbol('s22', 'EG.status_fensterkontakt_all', 'Fenster zutest', icon1~'light_light.png', 1)  }}
                              {{ basic.symbol('s33', 'EG.status_fensterkontakt_all', 'Fenster auftest', icon1~'light_light.png', 0) }}
                logic:

                Code:
                if sh.EG.door_vorraum_status() == 1 or sh.EG.door_buero() == 1 or sh.EG.door_gaestewc() == 1 or sh.EG.door_kueche() == 1 or sh.EG.door_essplatz() == 1 or sh.EG.door_wz() == 1 or sh.OG.door_kind_ost_tuer() == 1 or sh.OG.door_kind_ost_fenster() == 1 or sh.OG.door_kind_west_tuer() == 1 or sh.OG.door_kind_west_fenster() == 1 or sh.OG.door_gang_og_stiege() == 1 or sh.OG.door_gang_og_rechts() == 1 or sh.OG.door_gang_og_links() == 1 or sh.OG.door_bad() == 1 or sh.OG.door_schlafen() == 1 or sh.OG.door_schrankraum() == 1:
                sh.EG.status_fensterkontakt_all(1)
                   
                else:
                sh.EG.status_fensterkontakt_all(0)
                Code:
                [fensterstatusegog]
                  filename = fensterstatus.py
                  watch_item = EG.door_vorraum_status | EG.door_buero | EG.door_gaestewc | EG.door_kueche | EG.door_essplatz | EG.door_wz | OG.door_kind_ost_tuer | OG.door_kind_ost_fenster | OG.door_kind_west_tuer | OG.door_kind_west_fenster | OG.door_gang_og_stiege | OG.door_gang_og_rechts | OG.OG.door_bad | OG.door_schlafen | OG.door_schrankraum

                Kommentar


                  #9
                  Hi Roland,

                  hast Du Dir mal die Mühe gemacht, Dich per SSH (Putty, Kitty o.ä.) auf den Smarthome auf die Konsole einzuloggen?

                  Du könntest dort einfach mal smarthome.py suchen ps ax | grep smarthome) und beenden (kill Prozess ID) oder alternativ ./smarthome.py -s

                  Danach im Debug Modus wieder starten und mal schauen, was Du so alles an Fehlern gemeldet bekommst. Wenn Du die weghast, dann schlage ich ein "wiederlesen" vor. Ansonsten poste bitte mal die relevanten Auszüge.

                  Natürlich kannst Du auch ohne smarthome.py zu beenden mal ins log schauen.

                  Ohne hilfreiche Infos zum Fehler sehen wir hier leider nur in die Kugel ...

                  Gruß,
                  Bernd

                  Kommentar


                    #10
                    eval_trigger funktioniert doch.

                    Es war nur in der Konfiguration der Cache auf "on"

                    Nach neustart der smarthome.py hat es dann geklappt.

                    Danke für Eure Hilfe

                    Kommentar

                    Lädt...
                    X