Ankündigung

Einklappen
Keine Ankündigung bisher.

Bug in Logik - where?

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

    HS/FS Bug in Logik - where?

    Hello,

    I wrote a simple piece of Logic for Gira and I've tested it with the LogicDebugger that's available in the download section of this forum and it works great. I've also imported it in Expert with no problem, but when I try to do a transfer to the HS, it gives me this error: "The definition for the logic module is faulty", with no additional information!

    The code is this one:
    Code:
    5000|"Heating-Ventilation-Air Conditioning\Status - Feller EDIZIOdue to QC"|0|1|"E1 (status Feller)"|1|"A1 (QC status 1-13)"|"v1.1"
    # Take the Feller EDIZIOdue status code and re-shape it for the Heizung template 1-13
    
    5001|1|1|0|0|1|0
    
    5002|1|0|0
    
    5004|1|0|0|2|0
    
    5012|0|"(int(EN[1]) & 1) <> 0"|"1"|""|1|0|0|0
    5012|0|"(int(EN[1]) & 2) <> 0"|"3"|""|1|0|0|0
    5012|0|"(int(EN[1]) & 4) <> 0"|"2"|""|1|0|0|0
    5012|0|"(int(EN[1]) & 8) <> 0"|"4"|""|1|0|0|0
    # The codes for template 1-13 are different then for the 0-series:
    # 1 == Comfort
    # 3 (and not 2) == Stand-by
    # 2 == Night
    # 4 == Anti-Freezing protection
    Any idea what's wrong?

    #2
    5000|"Heating-Ventilation-Air Conditioning\Status - Feller EDIZIOdue to QC"|0|1|"E1 (status Feller)"|1|"A1 (QC status 1-13)"|"v1.1"
    |"v1.1"

    is interpreted as second output while only one expected

    5001|1|1|0|0|1|0
    Line 5001 takes 5 arguments while yours has 6

    Cheers,
    Gaston

    Kommentar


      #3
      Gaston,

      Thanks for your reply, however I am not sure the documentation agrees

      I am reading version 1.8 of the Logik SDK and it says that the last parameter of 5000 is needed for HS>2.7. Same for 5001, the 6th parameter is indicated and says whether there is a Typ5012 encoding.

      Dropping those do not change the situation. Is there a HS log file in the expert? A debug level that can be increased?

      Thanks!

      Zitat von Gaston Beitrag anzeigen
      |"v1.1"

      is interpreted as second output while only one expected



      Line 5001 takes 5 arguments while yours has 6

      Cheers,
      Gaston

      Kommentar


        #4
        Zitat von Gaston Beitrag anzeigen
        |"v1.1"

        is interpreted as second output while only one expected
        Thats not right, since 2.7 is the last output the version string.


        Sent from my iPhone using Tapatalk

        Kommentar


          #5
          Zitat von vento66 Beitrag anzeigen
          Thats not right, since 2.7 is the last output the version string.
          Ok, my bad then, I was not aware of these changes.

          Kommentar


            #6
            This code works

            You defined 1 Memory, in line 5001, but there is no line 5003.

            Code:
            5000|"Heating-Ventilation-Air Conditioning\Status - Feller EDIZIOdue to QC"|0|1|"E1 (status Feller)"|1|"A1 (QC status 1-13)"|"v1.1"
            # Take the Feller EDIZIOdue status code and re-shape it for the Heizung template 1-13
            
            5001|1|1|0|[COLOR="Red"]0[/COLOR]|0
            
            5002|1|0|0
            
            5004|1|0|0|2|0
            
            5012|0|"(int(EN[1]) & 1) <> 0"|"1"|""|1|0|0|0
            5012|0|"(int(EN[1]) & 2) <> 0"|"3"|""|1|0|0|0
            5012|0|"(int(EN[1]) & 4) <> 0"|"2"|""|1|0|0|0
            5012|0|"(int(EN[1]) & 8) <> 0"|"4"|""|1|0|0|0
            # The codes for template 1-13 are different then for the 0-series:
            # 1 == Comfort
            # 3 (and not 2) == Stand-by
            # 2 == Night
            # 4 == Anti-Freezing protection

            Kommentar


              #7
              Vento66,

              Thanks for your reply. The bottom line is that now it works... but maybe not exactly for the reason you gave! Let me explain why...

              Initially, my row 5001 was like this:
              Code:
              5001|1|1|0|0|1|0
              And you said that this wasn't correct since I don't have a state variable defined (i.e. no row 5003). Yet, with the new SDK documentation, row 5001 seems to have one additional column and the "1" above is NOT for the state variable (this was the zero just before), but for the "Berechnung bei Initialiserung" and the next "0" for "Kodierter Formel-Block (optional).

              Yet, setting the "Berechnung bei Initiaserierung" to 0 did the trick! Why that? Does it mean that if I set this value to 1, I'd have to have at least one "EI" rule present?

              But thanks a lot Vento, you solved my problem!

              Kommentar


                #8
                Here is the documentation for the line 5001

                Maybe there is an error in the new SDK
                Angehängte Dateien

                Kommentar


                  #9
                  OK, I see. You have release 1.1.8 from Feb 2007. The current release is 1.8 from Jul 2011 and defines an additional (optional) parameter for 5001. Yet, it seems your row works best, so either there is a bug or I didn't use it appropriately.

                  Thanks!

                  Kommentar

                  Lädt...
                  X