Announcement

Collapse
No announcement yet.

possibilty to stop reading when greater becomes?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    possibilty to stop reading when greater becomes?

    I'm currently using a virtual device for when its "sunny/cloudy". Where i use "greater than". The only "problem" i have that i can see is that in the log it keep switching to "sunny" many times. Because once the "lux" is over 150 its on. but if it gets 180, 240 500+ etc it keeps turning it on.

    Is there a way to make it stop changing after its greater than 150 so it don't jam up the log with this and maybe also let the system run more easy?

    And same goes with cloudy "less than".

    Is there a "becomes greater than" in a way? Cause if i use "become" it as to be exactly 150lux before it goes on/off right?

    As you see the log is filed with this. And i guess that you want the log to stay calm and not have stuff repeating right?
    In this case i was out so nothing happened. maybe i should also set only to work when im home? cause i have a virtual device that goes on GPS saying if im home or not. That will at least stop the jamming when im away but will still be a problem when im home.

    If this repeating process is not a problem i could make another virtual device and hide this from the log. but that would not do any good anyway other than not showing in the log. "hiding" the problem.
    Attached Files
    Last edited by U5tabil; January 21, 2015, 11:32 AM.
    Certified installer for HomeSeer, Control4, KNX and Eaton/xComfort

    #2
    IF lux is greater than 150
    AND IF sunny/cloudy virtual device is OFF

    THEN set sunny/cloudy virtual device ON.

    This way it will only fire the event once to change the device status.

    This is the "set the trigger as a condition" problem. A trigger is ONLY A SINGLE INSTANT. Of course the light level can be greater than 150 for more than on second, so setting that as a trigger is just asking for the event to fire every second until the light level drops below 150. After it drops below 150 the event turning the virtual device off will fire every second.
    Originally posted by rprade
    There is no rhyme or reason to the anarchy a defective Z-Wave device can cause

    Comment


      #3
      Just put a condition after each IF / OR IF trigger that is based upon the switches status.

      IF Light Sensor 1 is less than 150 Lux
      AND IF Virtual Device Status Sunny/Cloudy is not equal to Cloudy

      OR IF Light Sensor 2 is less than 150 Lux
      AND IF Virtual Device Status Sunny/Cloudy is not equal to Cloudy

      THEN Set Virtual Device Status Sunny/Cloudy to Cloudy

      That would prevent the event from triggering again once the Virtual Device is set.
      HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

      Comment


        #4
        Originally posted by S-F View Post
        IF lux is greater than 150
        AND IF sunny/cloudy virtual device is OFF

        THEN set sunny/cloudy virtual device ON.

        This way it will only fire the event once to change the device status.

        This is the "set the trigger as a condition" problem. A trigger is ONLY A SINGLE INSTANT. Of course the light level can be greater than 150 for more than on second, so setting that as a trigger is just asking for the event to fire every second until the light level drops below 150. After it drops below 150 the event turning the virtual device off will fire every second.
        So having 1 virtual device with 2 buttons sunny and cloudy is not good? i should have 1 for sunny on/off and 1 for cloudy on/off. Is that what you mean?

        Originally posted by rprade View Post
        Just put a condition after each IF / OR IF trigger that is based upon the switches status.

        IF Light Sensor 1 is less than 150 Lux
        AND IF Virtual Device Status Sunny/Cloudy is not equal to Cloudy

        OR IF Light Sensor 2 is less than 150 Lux
        AND IF Virtual Device Status Sunny/Cloudy is not equal to Cloudy

        THEN Set Virtual Device Status Sunny/Cloudy to Cloudy

        That would prevent the event from triggering again once the Virtual Device is set.
        Yeah that could actually work. i will try this.

        Both of you have different way of doing this :P
        Certified installer for HomeSeer, Control4, KNX and Eaton/xComfort

        Comment


          #5
          We meant the same thing exactly.
          Originally posted by rprade
          There is no rhyme or reason to the anarchy a defective Z-Wave device can cause

          Comment


            #6
            I actually see that now. im sorry.

            But yeah lets hope this sorts it out Would be great not to have a bunch of stuff running all the time. i felt that the other day when you showed me the things with virtual device for time of day. suddenly my motion sensors works faster for some reason.
            Certified installer for HomeSeer, Control4, KNX and Eaton/xComfort

            Comment


              #7
              Originally posted by U5tabil View Post
              So having 1 virtual device with 2 buttons sunny and cloudy is not good? i should have 1 for sunny on/off and 1 for cloudy on/off. Is that what you mean?



              Yeah that could actually work. i will try this.

              Both of you have different way of doing this :P
              As S-F said we were both showing you exactly the same thing. He was using generic terms and I was attempting to use your specific terms. In its basic function a Virtual Device is Off/On or 0/1 in values. You edited your virtual devices status text to be Sunny/Cloudy, but it is still an Off/On or 0/1 device.

              The point we were both making is crucial to prevent events with non-specific trigger from continually triggering - you must include some condition in your event that is based upon a change of status in a device controlled by the event.

              When I use the term non-specific trigger I mean any trigger that can be true each time the event is evaluated. In your event once the Lux is below 150 it will trigger each time the event is evaluated. For the purposes of discussion it is safe to assume that HS3 will evaluate the entirety of your events once a second. If a trigger is true and there is no condition to stop an event from running, it will run once a second until the trigger is no longer true.

              The way to prevent that is to have a condition within the event based upon a device that is changed by the event. The easiest way to prevent "run away" triggering is to make sure the event will not fire if the device you are controlling is already set to the value you intend to set it to.

              IF "Trigger"
              AND IF Device 1 is not equal to XXX

              THEN Set Device 1 to XXX


              As your events get more complex, you still must come up with some additional conditions to limit how often the event will run. If your action is to run another event or script and you cannot find any way to use a condition to limit the event from running, then you should use the advanced options at the bottom "Cannot Re-Run For:"




              In my opinion this should be a choice of last resort and only be used when you cannot find a more suitable trigger or conditions that would limit a non-specific trigger. The Cannot Re-Run will allow an event to only run within the time frame defined, but it will run EVERY time the defined time has elapsed.
              HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

              Comment


                #8
                Thank you both for this information. It really helps me getting the events to work properly. And while your at it with this "Cannot re-run for".

                I have been using this in my heating event.

                The reason for this is that my current heater is very powerfull, its either 0w or 3300w. And when i only use the limit of 21 celcius the netatmo module measuring this is not fast enough to update. Resulting it to become 22-23 degrees once it updates and then turn the heater off. So i found that by running the heater on for maximum 7 minutes where it would not run again before at least 10 min has gone the degrees has been more stable now with only 0,5 degree off in difference.

                But is this a good way to do this or is there another way to do this better?
                Attached Files
                Certified installer for HomeSeer, Control4, KNX and Eaton/xComfort

                Comment


                  #9
                  The one problem I see is that the first trigger in the first event and the first two triggers in the second event are not "one shot" or specific moment in time triggers, so the events will continually trigger when the temperature is above 21 or below 20.5 respectively. You might want to add an "AND IF" of your heating systems status to each trigger, so that the OFF event will only trigger when the heat is ON and the ON event will only trigger when the heat is OFF.
                  HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

                  Comment


                    #10
                    So i should make a virtual device of this also?
                    Certified installer for HomeSeer, Control4, KNX and Eaton/xComfort

                    Comment


                      #11
                      Originally posted by U5tabil View Post
                      So i should make a virtual device of this also?
                      No. Just use the status of your heater as a condition. The condition would be if the device below has a value equal to On in the OFF event and the reverse in the ON event.
                      Attached Files
                      HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

                      Comment


                        #12
                        Ok so i the first there i can put
                        And if device not equal value to off

                        then off.

                        meaning it will only trigger once?
                        Certified installer for HomeSeer, Control4, KNX and Eaton/xComfort

                        Comment


                          #13
                          Originally posted by U5tabil View Post
                          Ok so i the first there i can put
                          And if device not equal value to off

                          then off.

                          meaning it will only trigger once?
                          Yes. it would need to be added as a condition at least to the first trigger in the first event and to the first two triggers in the second event.
                          HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

                          Comment


                            #14
                            Ok i get it. and rule of tumb would then be if i use "greater" or "less" than in an event i should have something else stopping the trigger from repeating in an endless cycle?
                            Certified installer for HomeSeer, Control4, KNX and Eaton/xComfort

                            Comment


                              #15
                              Correct! If you look at triggers 2-5 in your first event and trigger 3 in your second event, they are based upon the change in value of a device or a specific elapsed time, all of which can only happen at a specific "moment in time" and will not repeatedly trigger. I also prefer to evaluate an event as running or not - meaning: and event can trigger very frequently, but proper uses of conditions will prevent it from "running". You can have an event that is set with a recurring trigger of once every second, with conditions to prevent it from running. An event only runs when the trigger and all of the conditions are met (or TRUE). An event triggering has no impact on the system, it is only when the event runs and causes ACTION(S) to occur that there is an impact on the system.
                              HS4 Pro, 4.2.19.0 Windows 10 pro, Supermicro LP Xeon

                              Comment

                              Working...
                              X