Your Universal Remote Control Center
RemoteCentral.com
RTI Control Systems Forum - View Post
Up level
Up level
The following page was printed from RemoteCentral.com:

Login:
Pass:
 
 

Original thread:
Post 3 made on Friday August 3, 2007 at 06:16
vbcodep
Long Time Member
Joined:
Posts:
July 2007
36
This leads to another question. Are system macros thread safe meaning that they can not be pre-empted by another system macro. In another words does it just execute one macro at time or can it process multiple macros. The only exception I could see if when a system macro calls another but pre-emption is voluntary is this case. If macros are not thread safe then the operating system would have to manage the I/O ports and interrupt on completion. If this is the case then the flags would have to be managed using some type of synchronization mechanism such as a Mutex but I can't image the RP-6 is that complicated. I am guessing the RP-6 is queuing up trigger codes/system macros that come in then processing macros one at a time. Perhaps they are using some type of small shared memory buffer. I would love to see a schematic of the system. If you are using trigger codes these are basically just generating "hidden" system macros that are being indexed seperately. For some reason it distingushes RF from IR trigger codes and I am not sure why the real difference is here. It would seem that once the RF hits the antenna is would be converted to an IR trigger code but this is not the case. Perhaps something with the envelope is a bit different. I good question for RTI tech support. Do any of the RTI guys read this forum. I would love an hour with one the engineers. I have a list of questions for them.

If the RP-6 is thread safe then you should not need any delays to set or test flags as each flag should be safe. I can not image any other design especially in this scenario.

I would assume it is single threaded in which case you should not need any delay for setting flags because each macro is thread safe and can not be preempted by another macro.

When I have experience timing issues it is usually due to the fact that when a remote/touchscreen device calls a system macro it continues processing and has no method to wait for the macro to complete. You have to make a reasonable assumption about a side effect. Usually a delay by the caller of the system macro would provide enough time for the macro to complete.


Hosting Services by ipHouse