Ankündigung

Einklappen
Keine Ankündigung bisher.

Why is this logic element executed?

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

    HS/FS Why is this logic element executed?

    Hello all,

    I 've been experimenting with the logic module of Gira Homeserver lately. The only conclusion I've reached so far is that it's impossible to debug, and that its behaviour is very erratic. What is really driving me mad is the following:

    I have created a single logic application, outlined below. The logic itself is not very meaningful, it has reached this configuration following numerous attempts at trying to make something useful out of it:

    http://picpaste.com/pics/logic-YVLo2vz3.1362499039.png

    Now one thing I cannot possible understand it the fact that this code is executed even when a telegram unrelated to these group addresses is sent on the bus. For example, I transfer the project to the homeserver, homeserver restarts, and then I send a single telegram from within the ETS4 group monitor (e.g. "1" to 0/0/12). Even though this address is not part of the "Input box" above, the code runs!

    Does this make any sense to anyone? Thanks.

    #2
    Th efirst debugging possibility you have is to setup a EIB-Monitor in th earchives. This will record the packets received and sent from the EIB. Further you can assign "illegal" (illegal for KNX since they are pure internal objects, i.e. 100/x/y...) group addresses to internal COs (which can be done automatically vie the menu) so that these are recorded as well.

    Unfortunately ther eis nothing about the CO configuration. Is one of them "remanent" (not sure how they call it in english) or scanned from th ebus at startup ?

    Kommentar


      #3
      Ok found the problem (I guess):

      Some function modules are executed at startup (documented in the modul help), among these is the "AND" gate. You have both AND gates preset to "1" so it will output a "1" and trigger the following modules.

      Setting both inputs to "0" should avoid the execution at startup.

      Kommentar


        #4
        Zitat von Gaston Beitrag anzeigen
        Unfortunately ther eis nothing about the CO configuration. Is one of them "remanent" (not sure how they call it in english) or scanned from th ebus at startup ?
        Hello Gaston,

        Thanks for the reply. The only property set for the communication objects is the "Transfer Flag", which is the default when importing from an ETS4 project.

        Note that the code is not executed following a restart. It is executed upon sending a telegram at an arbitrary group address (such as 0/0/12), which is what is really baffling me.

        Kommentar


          #5
          Unrelated? No . Right-klick on the address 0/0/12 and check the links ('Verweise'). Somewhere in another logic you will find 0/0/12 in an inputbox and 0/0/2 or 0/7/0 in an outputbox. If not, you may have implemented a logic e.g. in an actuator that reacts to 0/0/12 and sends 0/0/2 or 0/7/0.

          And be careful: maybe your modules blocks loops, I didn't check, but the same addresses as in the input- as in the outputbox (0/0/2, 0/7/0) may cause loops and slow down your system.
          Gruß, Rainer

          Kommentar


            #6
            Zitat von Gaston Beitrag anzeigen
            Ok found the problem (I guess):

            Some function modules are executed at startup (documented in the modul help), among these is the "AND" gate. You have both AND gates preset to "1" so it will output a "1" and trigger the following modules.

            Setting both inputs to "0" should avoid the execution at startup.
            Aha, that makes sense. However, it is still a mystery why the code is executed at all. I mean, I would expect your explanation to be sufficient if the code was executed on start up, but it is a foreign group address (0/0/12) which triggers this code, whereas this group address is not present in the "Input box" and so the code shouldn't be triggered at all.

            Regarding the preset values, I didn't configure them to be set at 1. I don't know what these values represent, but normally, when I manually assign a value to an input, the background colour of the object turns yellow (this is the case with input E2 of the "Less than" module for example). So I haven't exactly set them to "1", and I'm not sure what that value represents there. Maybe thats supposed to represent what the uninitialized value of the object is before the code is fed with data for the first time?

            Kommentar


              #7
              Zitat von Taxus Beitrag anzeigen
              Unrelated? No . Right-klick on the address 0/0/12 and check the links ('Verweise'). Somewhere in another logic you will find 0/0/12 in an inputbox and 0/0/2 or 0/7/0 in an outputbox. If not, you may have implemented a logic e.g. in an actuator that reacts to 0/0/12 and sends 0/0/2 or 0/7/0.

              And be careful: maybe your modules blocks loops, I didn't check, but the same addresses as in the input- as in the outputbox (0/0/2, 0/7/0) may cause loops and slow down your system.
              Hello Taxus. Thanks for joining this thread.

              Well maybe that would make sense, but there is only one reference to that address:

              PicPaste - refs-YoYGGpqe.png

              Moreover, as I said I am actively monitoring the bus as I send the telegram to 0/0/12. There are no other communication objects involved in the process, other than a few status objects that are in no way referenced in this logic (e.g. 0/6/12). During monitoring, the only subscriber that references 0/0/2 or 0/7/0 is the homeserver.

              Kommentar


                #8
                Zitat von gedia Beitrag anzeigen
                ...other than a few status objects that are in no way referenced in this logic (e.g. 0/6/12).
                Not in this logic, but in another one? So 0/6/12 would be the next object to check for references - and what about the references of 0/7/0 and 0/0/2 (in an out box)?
                Gruß, Rainer

                Kommentar

                Lädt...
                X