Jump to content

running a program based on a remoteLinc burron Press


barrygordon

Recommended Posts

I have a remoteLinc keypad set up as 4 scenes. The first three buttons (A for ceiling lights, B for lamp 1, C for lamp 2) control Lighting with the left side turning the light off and the right side turning the light on.

 

I want to use the bottom button (D) to control a ceiling fan controlled by a FanLinc. I want the left side to decrease the speed with each touch, and the right side to increase the speed with each touch.

 

Is there a simple way of doing this or should I use a program? If I use programs how do I get the left button press to call the decrease program and the right button press to call the increase program? Can I use a state variable to do this and if so how?

 

If I use two programs, one for increase and one for decrease, I think I know how to do it with a second program. The first program "increase" program would test if the fan is off and if off set it to medium speed. if not off it would call the second "increase program" which would test to see if the fan speed was low and if so set it to medium or else set it to high.

 

Is there a way to make an if-then-elseif-then else type construct so I would only need one program for each mode (increase vs decrease)?

 

Is there a better way of doing this?

 

Any help/assistance appreciated. Thanks in advance.

Link to comment

I do this already. Unfortunately I can't access my ISY right now, so this is from memory, and the formatting/exact syntax is not right.

 

I have 4 programs:

 

Off:

if (Control RemoteLinc.D is turned Off 
   AND Fan is Low)
   OR (Control RemoteLinc.D is turned Fast Off)
Then
 Set scene FanOff to On
Else
-none-

 

Low:

if (Control RemoteLinc.D is turned On 
   AND Fan is Off)
OR
   (Control RemoteLinc.D is turned Off 
   AND Fan is Medium)
Then
 Set scene FanLow to On
Else
-none-

 

Medium:

if (Control RemoteLinc.D is turned On 
   AND Fan is Low)
OR
   (Control RemoteLinc.D is turned Off 
   AND Fan is High)
Then
 Set scene FanMedium to On
Else
-none-

 

High:

if (Control RemoteLinc.D is turned On 
   AND Fan is Medium)
   OR (Control RemoteLinc.D is turned Fast On)
Then
 Set scene FanHigh to On
Else
-none-

Link to comment
What exactly is control remotelinc.D?

 

Like PurdueGuy said, the syntax is not exact, but when you go into the dropdown box in the programming section, and select condition, it gives you the option to choose "control". Then choose the insteon device, the choose the desired command (ON, OFF, NOT ON, etc). The reference to remotelinc.D is, I am sure, button D on the remotelinc. Exact syntax would be generated by the ISY and would look more like: Control 'button D' is switched Off

 

Can't I make the remote linc button press stat the program? Perhaps by setting a state variable?

 

The only way to set a variable in response to a remotelinc button press is via a program, so I don't see how this solves your problem if you are having trouble initiating a program from that button press. Is is possible that you are not having a programming problem, but rather the ISY is not seeing the button presses?

Link to comment

I ended up with 4 programs modeled after what oberkc suggested. Thank you oberkc.

 

In the master bedroom there is an 8 button wall keypad and the 4 scene RemoteLinc. I want the 4 top buttons on the keypad to control the Fanlinc in addition to the RemoteLinc button D controlling it.

 

I am having a bit of trouble figuring out the controller/responder configuration. I want (on the KeypadLinc) button A to be Hi speed, button B to be medium speed, Button C to be low speed, and button D to be Off.

 

I only want one of these 4 buttons to be on at a time. Pressing the appropriate button should set the fan speed motor.

 

I want the RemoteLinc, when it sets a fan speed through the program, to also cause the appropriate button to illuminate on the keypadLinc.

 

Any advice/pointers appreciated.

Link to comment

Define 4 scenes

- High

- Medium

- Low

- Off

 

Each scene will have 5 members, and *only* the appropriate button will be a Controller for a given scene, the rest are Responderes:

- Button A (Controller in "High" scene, Responder elsewhere)

- Button B (Controller in "Medium" scene, Responder elsewhere)

- Button C (Controller in "Low" scene, Responder elsewhere)

- Button D (Controller in "Off" scene, Responder elsewhere)

- Fan motor (Responder)

 

For each scene, set the fan motor as desired, and set the state of each button as desired. (So for High, the fan motor should be set to high, Button A should be On, and Buttons B-D off). Be sure to define things in the main scene, then click the additional Controller for that scene (Button A, B C, or D) and click "Copy Scene Attributes" to that the Controller programming matches the ISY programming).

 

Then use these scenes in the programs I described above, so you can call them from a Program in ISY, that is triggered via the RemoteLinc.

Link to comment
I ended up with 4 programs modeled after what oberkc suggested. Thank you oberkc.

 

Credit is due to PurdueGuy (though I would prefer it if it were OSUGuy).

 

To re-enforce one point, in each scene, the secondary responder buttons ON level should be OFF (or zero)! The idea is to create a scene such that when you press the controller button for that scene to turn the scene ON, the responder keypad buttons will actually turn OFF.

Link to comment

I have programmed the 4 scenes for High, Medium, Low and Off, as you described (I think). I say I think because they all do not seem to work. I have not added the fan motor yet until I get the keypad lights to work correctly!.

 

Here is what happens by key press at the keypad

 

A - A, B, C all come on

B - A, B come on

C - Works as it should, only C comes on

D - Works as it should, only D comes on

 

I am not sure what you mean by:

Be sure to define things in the main scene, then click the additional Controller for that scene (Button A, B C, or D) and click "Copy Scene Attributes" to that the Controller programming matches the ISY programming).

 

What do you mean by the Main scene?

 

I tried dropping power to the key pad, but that had no effect.

 

If there was some way of sending an attachment I would send my Topology report for someone to look at.

 

Any advice appreciated. This has me stumped.

Link to comment

Barry-

 

For each scene, the controller (ie the button you press for that scene) should have an on level of 100% and the remaining 3 buttons should have an on level of 0%.

 

First, add the fan motor to each scene as a responder. Might as well just get it done now. :)

 

For for the High Scene, Select the A button, set the onlevel for A to 100%, B to 0%, C to 0% and D to 0% and the Fan to High

 

Then Select the Scene for Medium, Select Button B and Set the Onlevel for A to 0%, B to 100% , C to 0% and D to 0% and the Fan to Med

 

Then Select the Scene for Low and select Button C, Set the Onlevel for A to 0%, B to 0% C to 100% and D to 0% and the Fan to Low

 

Then Select the Scene for Off, Select the D button and Set A to 0%, B to 0% C to 0% and D to either 100% or 0% depending on what you want D to do when pressed - Set the Fan to Off

 

You will want to go through these settings for each scene twice. Once with the scene name selected in the tree on the left and again with the controller (as per the list above) of the scene selected in the tree on the left. The controller is the scene member listed in red for the scene when you expand the scene in the tree. The setting for the controller define what happens when you push a KPL button to activate the scene. The settings for the scene name define what happens when the scene is initiated by the admin console or a program. I would expect you want both to be the same.

 

Hope that helps.

 

-Xathros

Link to comment

Xanthos et al,

 

I strongly suspect that the keypadLinc is defective.

First of all it sometimes reports it cannot access the keypadlinc when I am setting up the scenes.

 

If I run it strictly from the admin console all works as expected. It shows the correct states for the buttons at all times and the physical LEDs act accordingly. When I try it from the device, Buttons B, C, D all behave properly. Button A will turn on B and C in addition to A. Also when I press abutton at the device and look at the keypad device in the admin console it does not show the correct state.

 

I am going to order a new keypad linc from Smarthome and see if that helps.

Link to comment

I set up a V41 Dual Band 8 button KeypadLinc using A,B,C,D with 4.2.0. All buttons worked correctly when pressed as well as using the four ISY Scenes.

 

Suggest moving the sliders for B and C to full On doing one button at a time. Then move B and C back to 0% On, doing one button at a time waiting until each button update is done before moving the slider for the next button.

 

What ISY firmware and UI is being used?

Link to comment

First of all I want to express my thanks to all who have provided advice and assistance.

 

ISY firmware and UI are the same: Insteon_UD994.v.4.1.2(2014-01-13-23:20:00)

 

I did the on level slider moves as LeeG directed. No change in the operation. The A button still turns on LED's A, B, C.

 

Getting "Cannot Communicate with Device" dialog, always associated with button A. There is nothing wrong connection wise. The keypad is in a dual gang J-box next to a dual band Switchlinc Dimmer.

 

I kept doing the above and finally after several tries I got a set with no communications error dialogs. The keypad works properly now, it least the lights are correct. When I look in the Admin Console for this keypad entry, the current state does not reflect the state of the corresponding LED on the keypad; shouldn't it.

 

The next step will be to add the Fan motor as a responder to each of the four scenes to see if each button does what it is supposed to do.

 

I will keep this interesting tale going

Link to comment

I just added the fan motor and all is well! The keypad now works just the way it is supposed to.

 

The final step will be to change the four programs from directly controlling the fan motor to run the appropriate scene instead so the keypad LEDs will match the fan state when the state is changed by the remote.

 

I also need to get some new keypad keys that have the fan nomenclature on them!

 

Once again thanks to all who helped.

 

PS I still think it is a marginal KeypadLinc due to all the connection messages. I believe the final success secret was setting up a scene and getting no communications error dialogs.

Link to comment

Glad you got it working!

 

I have had more intermittent communications issues with the newer dual-band KPLs than I ever did my non-dual-band.

The dual-band mostly works, then occasionally don't for a bit, then work again. I haven't been able to narrow down specifics (certain lights, refrigerator, etc). I have added some FilterLincs and it helped, but not completely. The older ones either didn't work and I remedied it (either moving an access point, new another device in between, etc), and they they would be flawless.

 

I'm working to relocate ISY for both Insteon and Z-Wave range, hoping that will improve things. I simply haven't had a chance lately.

Link to comment
PS I still think it is a marginal KeypadLinc due to all the connection messages. I believe the final success secret was setting up a scene and getting no communications error dialogs.

 

Rather than a marginal Keypadlinc, I suggest you consider the possibility that communication between the PLM and Keypad is somehow being disrupted...most likely by other electronic devices on the circuit powering the PLM. What other devices are on this circuit? Lots of computer stuff?

Link to comment

I will consider that, but I do not think that is the problem. I have not seen any communictions errors on any other device as far back as I can remember, except for some old single band outletLinc devices. I got rid of all of them and went to a micromodule and have never had additional issues.

Link to comment

Archived

This topic is now archived and is closed to further replies.


×
×
  • Create New...