Jump to content

Programmatically disable/enable motion sensor


BenForta

Recommended Posts

Posted

I am looking for a way to programmatically disable and enable an Insteon motion sensor.

 

Here's the deal ...

 

I have a scene made up of a bunch of light switches, and I have a motion sensor in the scene. All works well, and lights turn on when the sensor is activated and off after a set time of inactivity. But, I need to sometimes turn off that functionality, so that lights just stay on.

 

My initial solution was to remove the motion sensor from the scene, and instead have it call a program when turned on or off. The program then turns the scene of or off as needed. And programs are easier to disable or enable (or can contain conditional logic). But that's not clean. For example, consider this scenario: A: Motion sensor turns on so program runs and lights turn on. B: User leaves room and turns lights off manually. C: User returns to room before motion sensor timeout, so motion sensor is still on even though the lights are not, and lights don't turn back on.

 

I can't have a program that, when all lights are turned off, turns off the motion sensor, as that's a status only device. So, the ideal option would be to include the motion sensor in the scene, and just have a way to programmatically enable and disable it.

 

Thoughts?

 

--- Ben

Posted

I haven't played around with my Insteon motion sensor much, as it has been problematic to work with. That said, I thought about some of the scenarios you presented:

 

Would it be possible to have a program that is activated when the light is turned off manually, whereby the motion sensor state is turned off or reset after a few seconds (enough for the user to leave the room and not set it off)?

 

If the user leaves the room leaving the light on, the motion sensor will take care of it after the inactivity period is reached.

 

As I said, I didn't do a whole lot with my motion sensor yet. Just brainstorming here...

Posted

I tried that. But, it appears that the Insteon Motion Sensor is a status only device. You can get the status (on or off) but can't explicitly set it. And thus my hope to find a way to programmatically disable//enable it, or include/exclude it from a scene.

 

--- Ben

Posted

Hi Ben,

 

You are correct, you cannot enable or disable a motion sensor.

 

You only have one option: to use programs to catch the status of the motion sensor and then act accordingly based on other conditions.

 

With kind regards,

Michel

Posted

Michele,

 

This pretty much means that there is no way for the motion sensor to work once someone manually turns off a light, not until the on period times out and the sensor turns to off. This seems like a serious design flaw.

 

Oh well, was worth a try. Thanks for confirming.

 

--- Ben

Posted

Even if you were able to remove the Motion Sensor from the scene - how would that fix the timeout issue you are describing?

 

I may be missing something, but the problem seems to be that the Motion Sensor will not send another ON command until its timeout period of no motion (minimum 30 seconds I believe) has expired.

 

This limitation exists whether you are using the Motion Sensor in a scene or via ISY Programs.

 

What would the solution be? If I am in a room and the Motion Sensor activates and turns on a light, if I decide to manually turn the light off I wouldn't want the Motion Sensor to immediately pop back on.

 

What am I missing?

Posted

Sorry, the thread went off on a tangent. What I originally wanted was a way to easily disable the motion sensor altogether, for a period of time perhaps, disable it programmatically and then enable it later. For that I was looking for a way to programmatically disable the motion sensor altogether instead of having to use a program which, as per the rest of the thread, is not ideal.

 

--- Ben

Posted

Other than a slight delay in activation, what drawback would there be to using ISY Programs to accomplish what you want?

 

For example, consider this scenario: A: Motion sensor turns on so program runs and lights turn on. B: User leaves room and turns lights off manually. C: User returns to room before motion sensor timeout, so motion sensor is still on even though the lights are not, and lights don't turn back on.

 

Isn't this scenario the same even if the Motion Sensor is in a scene?

Posted

That is how I have it working now. A program responds to the motion sensor on and off commands and sets the scene of and off. The only gotcha is that if a user enters the room, then turns the light off manually, and then comes back in again, the motion still thinks it is on and so does not go on again. (That's how we got on that tangent). And I can't use a program on the scene off because you can't force the motion sensor to an off state.

 

--- Ben

Posted

Hi Ben,

 

You can add an AND condition to check the status of the light. Or, better yet, you can have a folder which checks the status of the light and then put your motion program in that folder.

 

With kind regards,

Michel

 

That is how I have it working now. A program responds to the motion sensor on and off commands and sets the scene of and off. The only gotcha is that if a user enters the room, then turns the light off manually, and then comes back in again, the motion still thinks it is on and so does not go on again. (That's how we got on that tangent). And I can't use a program on the scene off because you can't force the motion sensor to an off state.

 

--- Ben

Posted

Michele,

 

Add a condition to what program? The one that gets triggered by motion on? It'll never fire because the motion sensor is already in an on state.

 

--- Ben

Posted

Hi Ben,

 

There would be four permutations, the way I see it:

1. When the Light is On && motion is sensed

2. When the Light is Off && motion is sensed

3. When the Light is On && motion is triggered off

4. When the Light is Off && motion is triggered off

 

So, you can create two folders:

1. Light is On

If Status Light is not Off

 

2. Light is Off

If Status Light is Off

 

Now, in Light is On folder add the following programs

1. Motion Sensed

If

Status Motion Sensor is not Off

Then

- whatever you like to happen

 

2. Motion Not Sensed

If

Status Motion Sensor is Off

Then

- whatever you like to happen

 

Do the same for the Light is Off folder

 

With kind regards,

Miche

 

 

Michele,

 

Add a condition to what program? The one that gets triggered by motion on? It'll never fire because the motion sensor is already in an on state.

 

--- Ben

Posted
That is how I have it working now. A program responds to the motion sensor on and off commands and sets the scene of and off. The only gotcha is that if a user enters the room, then turns the light off manually, and then comes back in again, the motion still thinks it is on and so does not go on again. (That's how we got on that tangent). And I can't use a program on the scene off because you can't force the motion sensor to an off state.

 

Until the 30 second no-motion timeout period is finished, correct? If so, that is a limitation of the Motion Sensor itself - whether or not it is included in a scene.

 

You can't force the completion of that timeout period on the Motion Sensor. The Motion Sensor does not receive commands (to preserve battery life) unless it is in programming mode.

Posted

So even if the motion sensor is part of a scene, turning lights off manually does not set the sensor to off? That's a pretty serious design flaw, especially as the sensor supports intervals of up to 8.5 minutes.

 

Thanks anyway guys!

 

--- Ben

Posted

Hi Ben,

 

I think you should seriously consider taking the MS out of the scene.

 

I understand your point, however - as Mike suggested - if the MS were to respond to INSTEON commands, then the battery life would've been 1/100 of what it is now.

 

With kind regards,

Michel

 

So even if the motion sensor is part of a scene, turning lights off manually does not set the sensor to off? That's a pretty serious design flaw, especially as the sensor supports intervals of up to 8.5 minutes.

 

Thanks anyway guys!

 

--- Ben

Posted
So even if the motion sensor is part of a scene, turning lights off manually does not set the sensor to off? That's a pretty serious design flaw, especially as the sensor supports intervals of up to 8.5 minutes.

 

Correct. The Motion Sensor is not a responder.

 

Consider this scenario if it worked like you suggest - you walk into a room, the Motion Sensor kicks in and turns your scene on, you walk to the light switch and turn the switch off, which turns the scene off and let's say it turns the Motion Sensor off like you desire. What happens when you move again in that room? The second you take a step, the Motion Sensor would trip again - and your scene would turn back on!

Posted

As an example, I have the motion sensor when I enter the bathroom as follows:

 

The sensor is set to a 1 minute polling, only transmitting "ON" messages. It sends this to the ISY, and does not directly control a load.

 

Based on time of day, the ISY will turn on the bathroom lights at a preset brightness. After 2 mins of no motion, the lights will dim telling the person in the bathroom if they don't move again the lights will turn off. As long as there is motion, the timing interval to turn off keeps getting extended another 2 mins.

 

If you turn the shower light on, the timing gets extended 15 mins.

 

If you manually turn the bathroom lights off, the programs get disabled for 5 minutes, allowing you to move around in the room without triggering the lights.

 

The only drawback to this system is the slight delay when entering the bathroom to the lights triggering.

 

It is what I miss about my old setup with Powerhome, with a W800RF32 receiver and the cheap Hawkeye detectors. Those allowed instant ON, since the signal was carried over RF frequency one way to the computer.

 

I wish the ISY supported the W800RF32!

Guest
This topic is now closed to further replies.

×
×
  • Create New...