Jump to content

Leak Sensor Question [Cookbook Item 11.6.1.3 Setup - Core Components]


epete

Recommended Posts

Posted

I implemented the Leak Sensor Program in the ISY Cookbook.  It has been working fine for quite some time until recently I had some water under my kitchen sink.  I reset the Sensor but now I get email notifications on just the Leak Sensor that was under the Kitchen Sink stating 

"1 = Heartbeat OK (normal status)"

Questions.  What is the point of the Normal Status?  When operating normal I don't want to be notified.  Why is this in the program at all?  Why didn't I get this notification before the Leak Sensor detected water and why do all of my other Leak Sensors operate normally and do not send me this message?

Am I doing something wrong?  I thought I understood the logic of this program until now and am a bit confused.

Thanks

http://www.universal-devices.com/docs/production/The+ISY994+Home+Automation+Cookbook.pdf 

Posted

I don't use this type of heartbeat program, but I took a look at the cookbook programs, and I can't see where it would send normal status.   What is the value of the state variable for that leak sensor?  If it's 1 then I suspect the program that looks like the one below is missing a "NOT" for that sensor.

image.png.b1e9dc6b72eb44fee5314f86912821d1.png

 

I prefer a much simpler single program per sensor for Insteon Wireless device heartbeats.

Posted
1 hour ago, epete said:

Questions.  What is the point of the Normal Status? 

I suspect that a "Normal" status is just a placeholder, needed because of the use of a "state" variable.  In the example posted by @MrBill above, the variable $sLeakKitchenSink is set to a value of "1" if a heartbeat is received within a 25 hour period, meaning no program is triggered by the changing of the state variable.  If a heartbeat is not received, then $sLeakKitchenSink value is set to "2" which triggers off the notification program.

1 hour ago, epete said:

I reset the Sensor but now I get email notifications on just the Leak Sensor that was under the Kitchen Sink stating 

"1 = Heartbeat OK (normal status)"

I'm not sure what's going on there.  Is the value of your heartbeat variable actually "1"?

Posted
35 minutes ago, Bumbershoot said:

I suspect that a "Normal" status is just a placeholder, needed because of the use of a "state" variable.  In the example posted by @MrBill above, the variable $sLeakKitchenSink is set to a value of "1" if a heartbeat is received within a 25 hour period, meaning no program is triggered by the changing of the state variable.  If a heartbeat is not received, then $sLeakKitchenSink value is set to "2" which triggers off the notification program.

I'm not sure what's going on there.  Is the value of your heartbeat variable actually "1"?

What I posted was the example from the ISY Cookbook that epete said he was using.  I suspect the program as entered in his ISY is missing a "not"

Posted

ok, Sensor Status

Kitchen Sink Leak-Dry=On

Kitchen Sink Leak Heartbeat=On

Kitchen Sink Leak-Wet=Off

 

And my program has the "is not 1" statements, so maybe it is an issue with one of my other two sensors.  The other two leak sensors do not say "1" for their status so maybe their Null status is initiating the emails.

A problem has been detected with a leak sensor. Details below:

Kitchen Sink: 1

Laundry Room:

HVAC Room:

 

---Status Key---

1 = Heartbeat OK (normal status)

2 = Heartbeat missed

3 = Heartbeat check program not running

9 = Leak detected

Posted

@epete Post your actual programs, too much is lost in the translation here.  If they are all in a folder, right click the folder and pick copy folder to clipboard (the last entry).. then paste into a forum message.

  • Like 1
Posted

I didn't know you could copy the code so easily.  Thanks

 

===================================================================================
Leak Sensors - [ID 0038][Parent 0001]

Folder Conditions for 'Leak Sensors'

If
   - No Conditions - (To add one, press 'Schedule' or 'Condition')
 
Then
   Allow the programs in this folder to run.
 

-----------------------------------------------------------------------------------
HVAC - Variable Control 1 - [ID 003A][Parent 0038]

If
        'HVAC-Dry / HVAC-Wet' Status is On
 
Then
        $sLeakHVAC  = 9
 
Else
        Wait  10 seconds
        $sLeakHVAC  = 1
 

-----------------------------------------------------------------------------------
HVAC - Variable Control 3 - [ID 003E][Parent 0038]

If
        $sLeakHVAC is 1
    And Time is Last Run Time for <Not Specified> + 26 hours 
 
Then
        Wait  5 seconds
        $sLeakHVAC  = 3
 
Else
   - No Actions - (To add one, press 'Action')
 

-----------------------------------------------------------------------------------
HVAC- Variable Control 2 - [ID 003C][Parent 0038]

If
        'HVAC-Dry / HVAC-Heartbeat' is switched On
     Or 'HVAC-Dry / HVAC-Heartbeat' is switched Off
 
Then
        Wait  25 hours and 10 seconds
        $sLeakHVAC  = 2
 
Else
   - No Actions - (To add one, press 'Action')
 

-----------------------------------------------------------------------------------
KitchenSink - Variable Control 1 - [ID 0035][Parent 0038]

If
        'Kitchen Sink Leak-Dry / Kitchen Sink Leak-Wet' Status is On
 
Then
        $sLeakKitchenSink  = 9
 
Else
        Wait  10 seconds
        $sLeakKitchenSink  = 1
 

-----------------------------------------------------------------------------------
KitchenSink - Variable Control 2 - [ID 0036][Parent 0038]

If
        'Kitchen Sink Leak-Dry / Kitchen Sink Leak Heartbeat' is switched On
     Or 'Kitchen Sink Leak-Dry / Kitchen Sink Leak Heartbeat' is switched Off
 
Then
        Wait  25 hours and 10 seconds
        $sLeakKitchenSink  = 2
 
Else
   - No Actions - (To add one, press 'Action')
 

-----------------------------------------------------------------------------------
KitchenSink - Variable Control 3 - [ID 0037][Parent 0038]

If
        $sLeakKitchenSink is 1
    And Time is Last Run Time for <Not Specified> + 26 hours 
 
Then
        Wait  5 seconds
        $sLeakKitchenSink  = 3
 
Else
   - No Actions - (To add one, press 'Action')
 

-----------------------------------------------------------------------------------
Laundry - Variable Control 1 - [ID 0039][Parent 0038]

If
        'Laundry Sink-Dry / Laundry Sink-Wet' Status is On
 
Then
        $sLeakLaundry  = 9
 
Else
        Wait  10 seconds
        $sLeakLaundry  = 1
 

-----------------------------------------------------------------------------------
Laundry - Variable Control 2 - [ID 003B][Parent 0038]

If
        'Laundry Sink-Dry / Laundry Sink-Heartbeat' is switched On
     Or 'Laundry Sink-Dry / Laundry Sink-Heartbeat' is switched Off
 
Then
        Wait  25 hours and 10 seconds
        $sLeakLaundry  = 2
 
Else
   - No Actions - (To add one, press 'Action')
 

-----------------------------------------------------------------------------------
Laundry - Variable Control 3 - [ID 003D][Parent 0038]

If
        $sLeakLaundry is 1
    And Time is Last Run Time for <Not Specified> + 26 hours 
 
Then
        Wait  5 seconds
        $sLeakLaundry  = 3
 
Else
   - No Actions - (To add one, press 'Action')
 

-----------------------------------------------------------------------------------
Leak Sensor Activation - [ID 0040][Parent 0038]

If
        $sLeakKitchenSink is 9
     Or $sLeakLaundry is 9
     Or $sLeakHVAC is 9
 
Then
        Send Notification to 'Default' content 'Leak Sensor Activation'
 
Else
   - No Actions - (To add one, press 'Action')
 

-----------------------------------------------------------------------------------
Leak Sensor Problem - [ID 0041][Parent 0038]

If
        (
             Time is  9:00:00AM
          Or Time is  6:00:00PM
        )
    And (
             $sLeakHVAC is not 1
          Or $sLeakKitchenSink is not 1
          Or $sLeakLaundry is not 1
        )
 
Then
        Send Notification to 'Default' content 'Leak Sensor Problem'
 
Else
   - No Actions - (To add one, press 'Action')
 

-----------------------------------------------------------------------------------
Leak Startup - [ID 003F][Parent 0038][Run At Startup]

If
        $iStartUp is 0
 
Then
        Run Program <Not Specified> (Then Path)
        Run Program <Not Specified> (Then Path)
        Run Program <Not Specified> (Then Path)
        Wait  5 seconds
        $iStartUp  = 1
 
Else
   - No Actions - (To add one, press 'Action')
 

Posted

Thoughout several programs there are <not specified> errors.  I think that is causing programs to not run correctly.  Those should all have a program name in place of them.

  • Like 1
Posted

Thank you for pointing this out.  I have no idea how that happened.  Everything was configured when I first set this up.  I should check my last back-up copy.  Thanks again.  

Posted
1 minute ago, epete said:

Thank you for pointing this out.  I have no idea how that happened.  Everything was configured when I first set this up.  I should check my last back-up copy.  Thanks again.  

That was nagging at me last night... that is how those got orphaned.   I suspect they don't restore correctly when a backup is restored, but that's only a wild guess.

Posted

ok, it was a fast fix.  Made the updates and saved changes.  I guess I will find out at 6:00 PM is it is working again.

Posted
14 minutes ago, MrBill said:

That was nagging at me last night... that is how those got orphaned.   I suspect they don't restore correctly when a backup is restored, but that's only a wild guess.

oh, I did update the ISY firmware recently and did a backup and restore.  I should probably check all of my programs.

Posted
46 minutes ago, epete said:

oh, I did update the ISY firmware recently and did a backup and restore.  I should probably check all of my programs.

Is there a reason you restore after a firmware update?  It shouldn't be required.  I think I've only used restore once after a corrupt SD card.

Posted

There was no reason.  So I guess not only a wasted step, but one that potentially introduced problems.

Posted

... I I just noticed I still got the error

 

A problem has been detected with a leak sensor. Details below:

Kitchen Sink: 1

Laundry Room:

HVAC Room:

 

---Status Key---

1 = Heartbeat OK (normal status)

2 = Heartbeat missed

3 = Heartbeat check program not running

9 = Leak detected

 

After you receive an alert on your mobile device, reset the Leak Sensor by tapping the set button and return the Leak Sensor to its location.

Maybe time to reboot the ISY, then see if the programs saved or corrupted again

Posted

@epete There's only two programs above that contain the text "Send Notification".   Both appear to be written correctly.

What is the value of the 3 variables?

  •  $sLeakHVAC
  •  $sLeakKitchenSink
  •  $sLeakLaundry

I note that the report you are receiving is only showing the Value for 2 of the 3.

I suspect that Laundry room or HVAC room is not 1 and that there is also something wrong with the email template, preventing it from showing those two values.

Posted
3 hours ago, epete said:

Shows they are 1 below.  Strange that they display as blank in the email.

image.png.f21361f6d5d51a158116dfa2acb5d189.png

The only remaining idea I have is to re-save the program with the "not 1" that sends the notifications.  Pick a line and hit update then save.  no actual  change required just pick one of the lines and hit update then save. 

As far as the not print goes you might want to view the template and see if it's all there and intact.

Posted

I appreciate all of the guidance.  Thanks.  I will give that a try, if it doesn't work, I am sure I can delete and re-enter.  It was working for quite some time before this, so it is something I can do.

  • Like 1
  • 3 weeks later...
Posted

I went on vacation after my 19 May Post.  It is strange that this issue just went away on its own.  I no longer get these emails.  Checked the battery in the sensor and everything is working.  System is still up and running.  I should probably get the sensor wet and see if I get the alert.  

Posted
30 minutes ago, epete said:

I went on vacation after my 19 May Post.  It is strange that this issue just went away on its own.  I no longer get these emails.  Checked the battery in the sensor and everything is working.  System is still up and running.  I should probably get the sensor wet and see if I get the alert.  

Interesting.  I have no explanation.

Check Program > Summary tab and see if all 3 of the Variable Control 2 programs like this one:

HVAC- Variable Control 2 - [ID 003C][Parent 0038]

If
        'HVAC-Dry / HVAC-Heartbeat' is switched On
     Or 'HVAC-Dry / HVAC-Heartbeat' is switched Off

Show as Running Then in the Activity column image.png.89d8c1ef66973f6dc5b0bcc394c1eb3d.png.

 

  • Like 1
Guest
This topic is now closed to further replies.

×
×
  • Create New...