Active TopicsActive Topics  Display List of Forum MembersMemberlist  Search The ForumSearch  HelpHelp
  RegisterRegister  LoginLogin
PowerHome Programming
 PowerHome Messageboard : PowerHome Programming
Subject Topic: programming help Post ReplyPost New Topic
Author
Message << Prev Topic | Next Topic >>
npavkov
Groupie
Groupie


Joined: February 29 2004
Location: United States
Online Status: Offline
Posts: 91
Posted: July 20 2007 at 21:18 | IP Logged Quote npavkov

Not sure if this can be done, but my tests show that it should be possible. I have a palmcontroller cr12a, I would like to be able to hit 3 or 4 "on" buttons in succession to form a kind-of security code entry. On the powerhome status screen I can see that when I hit 4 "on" buttons as above, powerhome does see all 4 signals (4 "on or off" signals). I would like to create a trigger that when the "right" 4 buttons are hit correctly that a macro gets executed (to bypass a alarm sequence), but if the wrong sequence of buttons are hit, then nothing happens. How could I accomplish this using powerhome. I am setting the cr12a to it's own housecode. Anybody have any Ideas???? Dave or anyone else's input would be appreciated..... Thanks....Nick

Edited by npavkov - July 20 2007 at 21:19
Back to Top View npavkov's Profile Search for other posts by npavkov
 
TonyNo
Moderator Group
Moderator Group
Avatar

Joined: December 05 2001
Location: United States
Online Status: Offline
Posts: 2889
Posted: July 21 2007 at 11:56 | IP Logged Quote TonyNo

PH's Multi-X is designed just for this purpose.
Back to Top View TonyNo's Profile Search for other posts by TonyNo Visit TonyNo's Homepage
 
npavkov
Groupie
Groupie


Joined: February 29 2004
Location: United States
Online Status: Offline
Posts: 91
Posted: July 26 2007 at 15:45 | IP Logged Quote npavkov

Tony, Thanks. Can you or Dave offer a example on how to use the multix command in this senerio????
Back to Top View npavkov's Profile Search for other posts by npavkov
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4447
Posted: July 26 2007 at 17:44 | IP Logged Quote dhoward

Nick,

The first thing to do would be to decide upon the housecode and then the exact sequence. For the example below, my housecode is "K" and my sequence will be K1 On, K3 Off, K2 Off, K4 On. In Multi-X terms, this would appear as:
Code:
K0402K0203K0303K0102

You can see 4 multix codes in reverse order. The code to the left is the last code entered, in this case K4 On.

A multi-x sequence is the housecode, the unitcode (2 digits) and the x10 code (2 digits...2 is on, 3 is off).

To set this up, create a trigger that fires on X10 in (or X10 RF In if using a W800 or similar) for K 4 On. In the Boolean field of this trigger, use the following formula:
Code:
if(ph_multix("K",1,4) = "K0402K0203K0303K0102",1,0)

That's it! Have the action of the trigger perform whatever you want to happen when this sequence is entered.

The way it works is quite simple. You only need to check the trigger on the ending sequence, in this case K4 On. When you get that particular value, you just check the last 4 multi-x entries against your matchine multi-x string. If they're equal, you've got the sequence and return a 1 meaning execute the trigger. If they're not equal, return a 0 and don't execute the trigger.

I would also make sure that the "Previous X-10 Incoming Timeout" under Setup|X-10 Settings is set to something like 3. What this does is make sure that each button press of the sequence must be within 3 seconds of one another (not all button presses within 3 seconds). If you press the first 3 buttons within 3 seconds of one another, set the remote down for an hour, and then come back and finish the sequence, it's probably not what you wanted to do. This parameter will insert 0's into the multi-x sequence if a button press is not received within 3 seconds of the previous button press and cause the comparison to not match.

HTH,

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 
npavkov
Groupie
Groupie


Joined: February 29 2004
Location: United States
Online Status: Offline
Posts: 91
Posted: July 26 2007 at 21:46 | IP Logged Quote npavkov

thanks again Dave, I was doing it backwards, I was checking for the first key hit, not the last. I do have a question though. What happens if a x10 device on another HC sends a signal somewhere in between the seq I define for multix, will that effect the multix sequence or will the multi x ONLY capture the specified housecode?

Also when I reinitialize PH by clicking the Icon at top of the screen, I am getting a error occurred while creating the script server -3 error, what do I do with that??
Back to Top View npavkov's Profile Search for other posts by npavkov
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4447
Posted: August 05 2007 at 21:43 | IP Logged Quote dhoward

Nick,

There are multiple multi-x buffers, a global that tracks all incoming regardless of housecode, an extended, and 1 for each housecode. The multi-x example I outlined above is looking at just the "K" housecode so signals on other housecodes will not interfere.

To fix the script server problem, go to the File menu and select the "Register ActiveX" option. This should register all of the PowerHome activex controls including the Script Server.

HTH,

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 
npavkov
Groupie
Groupie


Joined: February 29 2004
Location: United States
Online Status: Offline
Posts: 91
Posted: August 08 2007 at 21:01 | IP Logged Quote npavkov

Dave, After registering activex from file menu *as suggested), I am still getting "error occurred while creating script server -3" error on initialize or reinitialize???
Back to Top View npavkov's Profile Search for other posts by npavkov
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4447
Posted: August 14 2007 at 16:43 | IP Logged Quote dhoward

Nick,

Check in your PowerHome directory (default c:\program files\powerhome) for a file names phscr.reg. Open this file in notepad. At the very end of the file (next to last line), you should see:
Code:

[HKEY_CLASSES_ROOT\CLSID\{BCA03350-93FF-420E-8206-7480BC20B767}\PowerBuilder\LibraryList]
@="c:\\program files\\powerhome\\phscr.pbd"


Make sure that the path points to your PowerHome directory and that the phscr.pbd file exists in that path (should be your PowerHome directory). If it's not correct, make the necessary changes and save the file. Make sure that you use the double backslash instead of a single backslash. Once saved, right-click the file and select "Merge" from the pop-up menu. Reinit PowerHome and see if the problem is fixed.

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 
npavkov
Groupie
Groupie


Joined: February 29 2004
Location: United States
Online Status: Offline
Posts: 91
Posted: August 15 2007 at 16:18 | IP Logged Quote npavkov

Thanks again Dave, As usual, you fixed it again, thanks for all your help....Nick
Back to Top View npavkov's Profile Search for other posts by npavkov
 

If you wish to post a reply to this topic you must first login
If you are not already registered you must first register

  Post ReplyPost New Topic
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum