Ankündigung

Einklappen
Keine Ankündigung bisher.

Siemens LOGO reagiert nur auf knx tickets, sonst nichts

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

    Siemens LOGO reagiert nur auf knx tickets, sonst nichts

    Hi,

    ich habe eine Siemens LOGO 0BA8 im Keller welche für 3min eine Pumpe laufen lässt.
    generell funktioniert die kommunikation mit der logo problemlos.
    auch pakete aus dem KNX bus werden wie erwartet an die logo weitergeleitet.
    nur wenn ich über telnet 2323 ein "up xxx=True" mache, wird es nicht an die logo weitergeleitet.
    auch reagiert die logo nicht auf input aus der website... (smartvisu)


    hier meine items yaml:
    Code:
    pumpe_status:
       typ: bool
       logo_read@logo1: Q1
       knx_dpt: 1
       knx_send: 0/2/11
    pumpe_set:
       name: pumpe_set
       typ: bool
       autotimer: 5s = False
       knx_dpt: 1
       knx_listen: 0/2/10
       enforce_updates: true
       logo_write@logo1: M3
       visu_acl: rw
       sv_widget: "{{ basic.button('kp1', 'item', 'On') }}"
    könnt ihr mir helfen?


    #2
    Das Item pumpe_set kann so nur vom knx lesen. Erst mit knx_send werden auch Werte geschrieben...?
    Zuletzt geändert von bmx; 25.03.2020, 12:29. Grund: blöde autokorrektur am mobiltel.

    Kommentar


      #3
      .
      Viele Grüße
      Martin

      There is no cloud. It's only someone else's computer.

      Kommentar


        #4
        Hi,

        ja, pumpe_set ist dazu da um die pumpe einzuschalten... über knx funktionierts, aber vom web frontend nicht.... das ist mein problem...

        Kommentar


          #5
          Ohne Attribut knx_send wird das aber nix von Seiten SmartHomeNG
          Zuletzt geändert von bmx; 26.03.2020, 21:39.

          Kommentar


            #6
            okay, das verstehe ich jetz zwar nicht, aber wenn ich den knx_send setze, dann funktionierts....! danke!
            ich möchte ja nur am knx bus "hören" und/oder übers smartvisu den nen befehlt richtung logo schicken der "write" soll ja zur logo und nicht in den knx bus... naja, egal....

            jetzt habe ich aber noch entdeckt dass das logo plugin den cpu auf 100% durchgehend auslastet... ist das so gewollt oder ein bug?

            habe mir mal den quellcode angeschaut und bin auf folgendes gestoßen:
            da läuft der write_read_loop.... dieser ballert gnadenlos und macht den cpu zu 100% dicht... ich hab den time.sleep( 1 ) eingefügt, jetzt sieht es cpu mäßig gut aus...
            ich bin nicht der experte ob das so ok ist oder ob man das auch eleganter lösen kann...?

            Code:
            def _write_read_loop(self):
               threading.currentThread().name = self.get_instance_name() + 'cycle' #'logo_cycle'
               self.logger.debug('{0}: Starting write-read cycle'.format(self.get_instance_name()))
               while self.alive:
                 time.sleep( 1 )
                 start = time.time()
                 t = start - self.threadLastRead
                 if len(self.writes) > 0: # beim Schreiben sofort schreiben
                    self._write_cycle()
                    self._read_cycle()
                    cycletime = time.time() - start
                    #self.logger.debug("{0}: logo_cycle takes {1} seconds".format(self.get_instance_name(), cycletime))
                    self.threadLastRead = time.time()
                 elif t > self._io_wait: # erneutes Lesen erst wenn Zeit um ist
                    self._read_cycle()
                    cycletime = time.time() - start
                    #self.logger.debug("{0}: logo_cycle takes {1} seconds. Last read: {2}".format(self.get_instance_name(), cycletime, t))
                    self.threadLastRead = time.time()

            Kommentar


              #7
              Hi nochmal,

              es funktioniert doch nicht.... hab das knx_send mit eingebaut, es wird beim klick in smartvisu zwar ein knx ticket in den bus geschickt, aber das bringt ja nichts, er soll ja über die IP verbindung zur LOGO das start kommando schicken. (logo_write@logo1: M3)

              Code:
              pumpe_set:
                 name: pumpe_set
                 typ: bool
                 knx_dpt: 1
                 knx_listen: 0/2/10
                 knx_send: 0/2/10
                 enforce_updates: true
                 logo_write@logo1: M3
                 visu_acl: rw
                 sv_widget: "{{ basic.button('kp1', 'item', 'On') }}"

              Kommentar


                #8
                Ok, dann hatte ich das oben falsch verstanden. Hast Du im Plugin mal die Debug Meldungen aktiviert und lässt das mitloggen?

                Den Thread hier kennst Du vermutlich. Ansonsten kann dir wohl am ehesten der Pluginersteller helfen ...
                Zuletzt geändert von bmx; 27.03.2020, 11:29.

                Kommentar


                  #9
                  Zitat von knxvenom Beitrag anzeigen
                  etzt habe ich aber noch entdeckt dass das logo plugin den cpu auf 100% durchgehend auslastet... ist das so gewollt oder ein bug?
                  was hast du im plugin.yaml bei "cycle" für die logo eingestellt?

                  Gruß Ivan

                  Kommentar


                    #10
                    Es gibt ne Methode, die aufgerufen wird wenn sich ein Plugin Item ändert.. wir wissen ja nicht wie die Methode _write_read_loop() aufgerufen wird

                    Kommentar

                    Lädt...
                    X