Announcement

Collapse
No announcement yet.

Sprinkler Freeze Protection

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

    Sprinkler Freeze Protection

    Ok, Another Question... Been busy the last couple of days working on the system.

    I have my sprinklers tied into the system. Thats been working great. Had some recent freezes here in Florida. I am looking into setting it up so that if the temperature outside drops below 33, the sprinklers come on to protect the plants.

    I have been using weatherXML scripts to get the local temp. I am trying to set an even that uses a condition.

    Condition - Device: Weather Temperature value is in the range FROM 0 TO 34

    Action - run a script that runs each sprinkler zone for 3 mins. Then repeat.

    Anyways,
    When I run the event, it is always launching the 2nd event. Even when the weather is higher than 34.

    Any Ideas of what I might be doing wrong?

    Thanks,
    Dave

    #2
    Have you tried to see exactly what is stored in the deivces value by using &msgbox(hs.deviceValue("A1")) via the control button - Immediate Script Command?
    💁‍♂️ Support & Customer Service 🙋‍♂️ Sales Questions 🛒 Shop HomeSeer Products

    Comment


      #3
      When I do that, a message box pops up with a value which is the current temperature right now.

      65

      I have done some futher tests, and the problem seems to be in the condition.

      I re wrote the condition as a test. Instead of from...to I said that it had to be equal to 32 in order for the condition to be true and fire the action. On running the event, it still runs the action as if it were a true statement. Even if the the value in the device was text, or a different number, it does not equal 32, and shouldnt run...


      Currently set conditions:

      Group 1
      Device: Sprinklers Freeze Flag is OFF AND
      Device: Weather Weather Temperature value equals 32


      Now I am even more lost.

      Thanks for the Help Rupp

      Comment


        #4
        How are you testing/triggering the event?

        Just thinking that if you explicitly run it, conditions may not be getting evaluated by HS (for condition only events). i.e. could be a bug (or a "feature", *grin*).

        Comment


          #5
          I had a similar problem and I discovered that when I retrieved the temperature from Accuweather I was sometimes getting a "space" before or after the number. I added a trim(temp) command to my script and then it worked. Not sure if this is your issue but you might want to check to make sure your temperature is really a number and not a text string.

          Steve Q
          HomeSeer Version: HS3 Pro Edition 3.0.0.368, Operating System: Microsoft Windows 10 - Home, Number of Devices: 373, Number of Events: 666, Enabled Plug-Ins
          2.0.83.0: BLRF, 2.0.10.0: BLUSBUIRT, 3.0.0.75: HSTouch Server, 3.0.0.58: mcsXap, 3.0.0.11: NetCAM, 3.0.0.36: X10, 3.0.1.25: Z-Wave,Alexa,HomeKit

          Comment


            #6
            Originally posted by raptorsss View Post
            When I run the event, it is always launching the 2nd event. Even when the weather is higher than 34.

            Any Ideas of what I might be doing wrong?

            Thanks,
            Dave
            If you are manually pressing the "RUN" button while in the Event view, the script will always run regardless of the conditions applied!

            Steve Q
            HomeSeer Version: HS3 Pro Edition 3.0.0.368, Operating System: Microsoft Windows 10 - Home, Number of Devices: 373, Number of Events: 666, Enabled Plug-Ins
            2.0.83.0: BLRF, 2.0.10.0: BLUSBUIRT, 3.0.0.75: HSTouch Server, 3.0.0.58: mcsXap, 3.0.0.11: NetCAM, 3.0.0.36: X10, 3.0.1.25: Z-Wave,Alexa,HomeKit

            Comment


              #7
              Originally posted by Steve Q View Post
              If you are manually pressing the "RUN" button while in the Event view, the script will always run regardless of the conditions applied!

              Steve Q
              I knew it. A *feature* like I said

              Comment


                #8
                Thanks Fuego and Steve.

                From testing that does appear to be true. Since I created this event after the last freeze, and we havent had one since I wasnt able to test without manually testing.

                Through some other testing, I do know that it is reading the temperature as a value. ie, if the temperature is 60degrees out, and I set the event to run if it is "equal to" 61 degrees out, it works.

                But I still cannot get the range condition to work. Since it is currently 61 degrees out, I have been using "from 60 to 65" also tried "from60to65"

                Thanks

                Comment


                  #9
                  Originally posted by raptorsss View Post
                  Thanks Fuego and Steve.

                  From testing that does appear to be true. Since I created this event after the last freeze, and we havent had one since I wasnt able to test without manually testing.

                  Through some other testing, I do know that it is reading the temperature as a value. ie, if the temperature is 60degrees out, and I set the event to run if it is "equal to" 61 degrees out, it works.

                  But I still cannot get the range condition to work. Since it is currently 61 degrees out, I have been using "from 60 to 65" also tried "from60to65"

                  Thanks
                  If I remember correctly, when I used Range it needed a change to trigger it. i.e. in your example, until your temperature changes from 61 to something else that is in the range 60 to 65 you won't see it trigger.

                  You could test for sure by using a virtual device that increments when you set it on and decrements when you turn it off, to confirm, rather than wait for a temp change, or needing to go down and blow on the sensor

                  Comment


                    #10
                    I havnt tested that yet, but from all other tests, that does seem to be the case.

                    I have changeded my strategy. I am no longer using the range condition. I now have a one even with 66 conditions. if temperature does not equal 35, if temperature does not equal 36, etc, etc all the way to 100. script runs every 2 minutes, and will set a flag device to on if the temperature is below 34.. or above 100. Then the sprinkler feeze script looks for that flag to be set before turning on the pump.

                    seems to work...

                    Thanks for your help in determining how the range condition works.

                    Comment

                    Working...
                    X