🖥️ActiveHome Pro > Software Problems & Bugs

"Looping" Macros revisited

<< < (2/3) > >>

Brian H:
Polite Transmitters. Are modules that hold power line transmitting if there is a X10 power line transgression in progress.
The RR501 and PAT01 are polite transceivers. TM751 and PAT02 with no power line receivers in them are not. They will stomp on a power line signal in progress.
I believe the CM15A and security consoles also are polite

dhouston:
Polite Transmitter Protocol

--- Quote ---When a transmitter has a message it wishes to transmit, it must wait for access to the powerline for either 8, 9, or 10 half mains cycles - during which the line must have been continuously clear of data '1' bits. If a '1'bit is detected, it must restart it's access timing and wait for another 8, 9, or 10 cycles.
 
After line access has been achieved, the transmitter must check the line during the transmission of a '0' bit (no carrier) to see that no other transmitter is transmitting. If a collision occurs, the transmitter must abort its transmission immediately and again go though the line access procedure. 
 
The choice of 8, 9, or 10 half cycles is chosen randomly for each line access attempt.
--- End quote ---
The CM11A, CM15A, RR501, PAT01 and most, if not all, security consoles are polite. The TM751/PAT02 are not polite as they do not listen to the powerline.

The PL513/TW523 (and PSC04/PSC05) are not polite and third party controllers that use them cannot be polite, nor detect/avoid collisions, as their report of powerline activity is delayed for 11 cycles of the powerline.

Tuicemen:
stevenR posted an example of a looping macro and how to exit it here:
http://forums.x10.com/index.php?topic=14912.0

dave w:

--- Quote from: LAF on August 31, 2017, 08:20:16 PM ---I still don't see why an exit is a necessity -

--- End quote ---
Exit stops the looping, otherwise the loop continues and the powerline is flooded with non stop PLC. In your first post you create a 2 second window between macros which is the only time an X10 command can get back to the CM15A to stop the loop. The reason yours does not stop reliably "(but not always if only one command is received, sometimes two or three are required i.e. it seems kind of random in that respect)."

The "randomness" is because if the X10 command does not hit that 2 second window, it does not get received and only corrupts the PLC being transmitted.

LAF:
Dave et al, thank you for the info re impolite devices transmitting on the power line.  I see now what the problem is.

In any case, what if you want the loop to go continuously (there are programming instances where you might want to do that)?  And, the fast looping I set up as a test was only done that way to try to see if there was a max number of iterations the loop could make without breaking something (I ran it up to about 3,000 iterations without a stoppage in one try).  In real life, I would expect the looping to maybe take place much more slowly, so the power-line isn't burdened unduly, but I would want it to run non-stop.  Even so, AHP needs a way of internally triggering a macro by another macro (or by itself) so the power-line is not involved (or so it seems to me).

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version