JP1 Remotes Forum Index JP1 Remotes


FAQFAQ SearchSearch 7 days of topics7 Days MemberlistMemberlist UsergroupsUsergroups RegisterRegister
ProfileProfile Log in to check your private messagesLog in to check your private messages Log inLog in

X10 Extended Commands?
Goto page Previous  1, 2, 3
 
Post new topic   Reply to topic    JP1 Remotes Forum Index -> X10 and Home Automation
View previous topic :: View next topic  
Author Message
cauer29



Joined: 03 Feb 2010
Posts: 235

PostPosted: Wed Sep 22, 2010 9:39 am    Post subject: Reply with quote

The Robman wrote:
re: the preset dim function.

Assuming it even works (has it been tested) I was thinking that people could use the two EFCs to see if either of the preset dim levels are useful to them (given the house code that they have already decided to use).

I suppose that most people are not tied to a specific house code, so they could try changing it to see if they get better preset dim levels.


There isn't any question that the IR543 sends the preset dim cmds out on the wire. So, I can't see any reason why it wouldn't work, as long as you have a module that supports it. Some of the newer more sophisticated models probably do not support it, as the function codes for preset dim 0 and 1 got reassigned to extended 3 and "unused" in the more recent versions of the X10 protocol document. I'll see if I have a dimmer that responds to these cmds and try it out. I have some memory of having done that a few years ago.

I used to have an IR543 that I had modified with an X10 relay module that would change the house code whenever you sent the relay module's on/off cmd. I just put the relay contacts across the common and one of the house code selector pins. When the relay was closed, it did one housecode and when the relay was open I got a different housecode. This was a sort of poor man's IR543AH. It worked at the expense of losing one unit code dedicated to the relay module. One could expand the concept with 4 modules and get all 16 housecodes, but you sacrifice 4 unit codes. That is not to mention that 4 relay modules will set you back nearly as much as a real IR543AH. I had a relay module lying around. So, it was an easy choice. I don't think that this will help with preset dim since the cmd to turn on/off the relay (change housecode) would end up cancelling the attention of the original module you wanted to preset dim. Consider, you want send preset dim to module K4. So, you send:

K4
now K4 is listening for the next cmd.
K1
now K1 our relay module is listening.
KON
now we switched our relay module to the "on" state changing the housecode in the process, but K4 also went to the on state and stops listening to further cmds until it gets explicitly addressed again.
GPD0
the preset dim goes out on the new housecode, but our K4 isn't listening for a cmd anymore and you can't address it at this point since you've changed the housecode.

A.A.
Back to top
View user's profile Send private message
The Robman
Site Owner


Joined: 01 Aug 2003
Posts: 18515
Location: Chicago, IL

PostPosted: Wed Sep 22, 2010 10:00 am    Post subject: Reply with quote

I don't know what K4 is in your example, so I don't quite follow the example. Here's how I was thinking is could be used by people.

Let's say the user is using House Code A (which is binary 0110).

The user now has the choice of sending 00110 or 10110 as the preset dim level, given that they can't change the house code on the fly. If either of those levels are useful to the user, they might chose to use it.

If they have the option of using any house code, which I think most people would, they could experiment to find a house code that gives them the best dim options, and then set all of their gear to use the one house code.

How does that sound?
_________________
Rob
www.hifi-remote.com
Please don't PM me with remote questions, post them in the forums so all the experts can help!
Back to top
View user's profile Send private message Visit poster's website
cauer29



Joined: 03 Feb 2010
Posts: 235

PostPosted: Wed Sep 22, 2010 11:24 pm    Post subject: Reply with quote

The Robman wrote:
I don't know what K4 is in your example, so I don't quite follow the example. Here's how I was thinking is could be used by people.

Let's say the user is using House Code A (which is binary 0110).

The user now has the choice of sending 00110 or 10110 as the preset dim level, given that they can't change the house code on the fly. If either of those levels are useful to the user, they might chose to use it.

If they have the option of using any house code, which I think most people would, they could experiment to find a house code that gives them the best dim options, and then set all of their gear to use the one house code.

How does that sound?


K4 is house code K and unit code 4. It's just the basic addressing that must be sent before sending a housecode/function cmd.

At this point I don't have any dimmer modules that respond to the legacy PD0/1 cmds. So, I can't test it out. What I can say is that there is no difference on the wire between the IR543 sending out a PD1 or PD0 cmd and the Ocelot or Houslinc sending out PD1 or PD0 cmds. In my case, since I was using houscode G, that corresponds to dim levels of 32% and 83%, but since as I said, I have no modules that understand the preset dim cmds, I have no way to prove that it works.

There's an article on the hometoys website where Phil Kingery discusses the legacy preset dim cmds and also delves into extended codes:

http://www.hometoys.com/htinews/feb03/articles/kingery/kingery18.htm

Phil Kingery works at PCS a manufacturer of X10 compatible dimmers and PCS apparently did implement the PD0/PD1 cmds. So, anyone who has a PCS dimmer, can test it with the IR543 generated PD0 and PD1 cmds. I'm confident that it will work.

A.A.
Back to top
View user's profile Send private message
cauer29



Joined: 03 Feb 2010
Posts: 235

PostPosted: Thu Sep 23, 2010 10:58 pm    Post subject: IR543 preset dim verified working Reply with quote

I dug up an old Switchlinc lite dimmer that supports preset dim cmds and it works exactly as expected. I get two reasonably useful dim levels that are directly accessible by sending EFC 100 and 164 to the IR543.

Edit: Here's the table of housecode Vs. preset dim levels:



Code:

Housecode   PD1   PD0
    A       19%   71%
    B       23%   74%
    C       13%   65%
    D       16%   68%
    E       26%   77%
    F       29%   81%
    G       32%   84%
    H       35%   87%
    I       45%   97%
    J       48%  100%
    K       39%   90%
    L       42%   94%
    M        0%   52%
    N        3%   55%
    O        6%   58%
    P       10%   61%


Send PD0 via EFC 100 and PD1 via EFC 164. You must of course address the unit to which you wish to apply preset dim first. That is, press the unit number on the remote and then press whatever key to which you've assigned the PD0 or PD1 EFC. If you've chosen your housecode wisely, you'll get 2 useful preset dim levels.

A.A.
Back to top
View user's profile Send private message
cauer29



Joined: 03 Feb 2010
Posts: 235

PostPosted: Sun Sep 26, 2010 9:26 pm    Post subject: Reply with quote

I thought I'd round out this thread with some stuff I discovered along the way so that other folks will be able to find this info via search.

The IR543AH (all housecode version) does support extended commands. It does this in a slightly unexpected way though. Before I get into that, I should point out how the IR543AH and it's twin the 7243 accomplish "all housecode" operation.

On a normal IR543 non-AH version there is a small selector wheel on the top of the unit and this is used to set a single fixed housecode (A-P). All transmissions to the powerline use that single fixed housecode. There are no exceptions. An IR remote control transmits 1 of 32 possible functions to the IR543. The first 16 of these are the X10 unit codes. The second group of 16 are the function codes as detailed further up this thread. When the IR543 receives a unit code via IR, it dutifully marries that with the fixed housecode and transmits it to the powerline. Example; you have the housecode wheel set to housecode "G" and you press the "3" button on your IR remote (suitably config'd for X10 IR protocol) and the IR543 sends out a "G3" housecode/unitcode combo. Now at that point, the X10 module at address G3 begins listening attentively for a command. It will wait forever. There is no timeout.

Next you press "CH+" on your IR remote (mapped to the ON function) and the IR543 sees the "ON" function and marries that with the fixed housecode and sends out a GON. At which point, the module at G3 changes to the on state. You can of course, send out multiple unit codes and have all the modules at those addresses be waiting for a cmd. Once you do send a cmd, all modules that are waiting for a cmd, act on it. Example:

Press "1" and G1 is transmitted to the powerline
Press "5" and G5 is transmitted to the powerline
Press "7" and G7 is transmitted to the powerline
Press "CH-" and GOFF is transmitted to the powerline

At that point, all 3 modules turn off; G1, G5 and G7.

You can play tricks by sending dim cmds following multiple unitcodes and get simultaneous dimming, but it only works well if all lamps start at the same dim level.

What the IR543AH does differently, is that it lets you send an IR cmd that effectively changes the fixed housecode to one that is specified by the IR cmd. This does not get transmitted to the powerline at the time of reception, but is merely an over-ride of the fixed housecode wheel setting. It will stay in effect until the next housecode change cmd is received via IR. The IR cmd that changes housecode is formatted as follows in Makehex IRP notation:

Function=0..15

Protocol=X10AH-Housecode
Frequency=40000
Time Base=650
One=7,-7
Zero=2,-13
Form=;*,F:4,~F:4,_
Prefix=8,-8
suffix=23,-8

This is identical to the unitcode/function code format except that it's only 4 bits of function instead of 5. This is already available in upgrade form in the file section under X10-hacked.

As discussed further up this thread, the standard IR543 supports the legacy preset dim 0 and 1 cmds, but they're marginally useful since the dim level must be sent as the housecode and that's a fixed value on the IR543. You do get 2 values since preset dim 0 covers one half of the dim range and preset dim 1 covers the other. PD0 is EFC 100 and PD1 is EFC 164. There is a table in the preceeding post, that outlines what dim levels correspond to what fixed housecodes.

Now with the IR543AH since we can change housecode at will, we can access the full range of 32 preset dim levels. Don't forget to change the housecode back to the normal setting after you've used a different housecode to do some preset dimming. Also bear in mind that far from all of the X10 protocol dimmers out there, will even respond to the preset dim cmds. Most if not all Switchlinc dimmers will, as will PCS dimmers. There are probably others. There is even a line of X10 protocol HVAC thermostat controllers that make extensive use of the preset dim cmds. In any case, here's an example of using preset dim with an IR543AH:

1. Press whatever button you have programmed on your IR remote to set housecode to "G". The IR543AH switches to housecode "G".

2. Press "1" and on reception of that, the IR543AH sends out a "G1" to the powerline.

3. Press "7" and on reception of that, the IR543AH sends out a "G7" to the powerline. Now both G1 and G7 are listening attentively for a cmd.

4. Press whatever button you have programmed on your IR remote to set housecode to "K". Nothing is sent to the powerline at this point.

5. Press whatever button you have programmed on your IR remote to send "PD1". On reception of that, the IR543AH will send out a KPD1 cmd to the powerline. That's housecode "K" and preset dim 1. Since housecode "K" corresponds to 39% dim level for PD1, both modules G1 and G7 immediately go to 39% dim level.

6. Press whatever button you have programmed on your IR remote to set housecode to "G". The IR543AH switches back to housecode "G" for all the following cmds.

Now that's all well and good, but the IR543AH has another trick up it's sleeve in that it supports true extended cmds. These allow preset dimming for modules that don't support the legacy preset dim cmds. This is actually the preferred method going forward.

From the document:

ftp://ftp.x10.com/pub/manuals/xtc798.doc

we can see that the format of an extended cmd is like so:

housecode 4 bits
functioncode 5 bits (XTC)
--------------------------
unitcode 4 bits
data 8 bits
cmd 8 bits

everything above the dotted line is part of any normal X10 cmd. The stuff below the dotted line is the 20 bits of extended info.

From the X10 document above, we can see that the interesting cmd with respect to preset dimming is type 3 with cmd 1 (preset receiver). Additionally, the data byte contains 6 bits of dim level setting. That's 64 possible levels.

Now, the 64,000 dollar question is; how do we get the IR543AH to send the full 29 bits of extended cmd and data out?

The full 29 bits must be sent in one shot with no gaps. The IR543AH does that by listening for a normal X10 IR protocol XTC cmd (EFC 167) and when it receives that, it waits to receive a specially formatted 9 bit IR transmission described in Makehex IRP notation like so:

Function=49

Protocol=X10AH-Housecode
Frequency=40000
Time Base=650
One=7,-7
Zero=2,-13
First Bit=MSB
Form=;*,F:8,0:1,~F:8,1:1,_
Prefix=8,-8
suffix=23,-8

This is simply the 8 bits of extended cmd along with a '1' bit that tells the IR543AH that this is a cmd and not data. The 9 bits are also sent in complement form. In our case, we want to send cmd 0x31, which is decimal 49.

Once the IR543 receives the extended cmd byte, it waits to receive the extended data byte that specifies the desired dim level. That is sent by the IR remote using the same exact protocol as the cmd shown above, but with the '1' bit now '0', telling the IR543AH that this is data and not a cmd. Finally, the IR543AH has all the info it needs to send out the whole 29 bit mess. So, its sends the entire 29 bits of housecode, XTC function, unitcode, data byte, cmd byte in one shot with no gaps. A module properly addressed by the housecode and unitcode, will respond to the extended preset dim cmd by changing dim level to the commanded value. I should point out that although the extended data byte has 8 bits, only the least significant 6 bits are used for dim level.

To summarize, the following IR cmds must be sent to get the IR543AH to send out an extended preset dim cmd:

1. IR remote must set the desired housecode per the IR543AH housecode protocol.

2. IR remote must send X10 IR protocol XTC (EFC 167)

3. IR remote must send the extended 8 bit function cmd plus 1 bit cmd specifier per the protocol described above. For our case, that's 0x31 + the '1' bit.

4. IR remote must send the extended 8 bit data plus 0 bit data specifier per the protocol described above. Only the 6 LSBs of the data are used.

The IR543AH having received all that, will marry the current 4 bit housecode setting with the 5 bit XTC cmd and send that out, followed immediately by the 4 bit unitcode, followed immediately by the 8 bit extended data, followed immediatley by the 8 bit extended cmd. There is no specific timing requirement on the reception of the IR codes. There can be a large gap between transmissions, as the IR543AH will wait until everything has been received, before sending anything out on the powerline.

There are numerous other fancy group cmds that can be sent via the IR543AH in the same manner. Refer to the X10 doc referenced above for details of these.

A.A.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic       JP1 Remotes Forum Index -> X10 and Home Automation All times are GMT - 5 Hours
Goto page Previous  1, 2, 3
Page 3 of 3

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


 

Powered by phpBB © 2001, 2005 phpBB Group
Get Smart! the band's official homepage Rockabilly Central