This thread is moving fast and this replay is a bit late, but I wanted to clarify something from earlier.
3FG said:
At our house, the Sony TV needs several seconds after powering up before it will accept input commands. But I don't put a pause in the Discrete On macro, and just immediately send the input command, because the TV remembers the last input we were using. And 99% of the time, our next usage requires the same input as when the TV was shut off.
To which you responded:
Hmmm. True, but my TV will not accept the source change command until it's started up.
True, but I think you missed the point of his post. Consider 2 situations: 1) You are watching the PC and while everything is on choose the "Watch Sky" activity button. 2) You are watching the PC, turn everything off and then later (much later) with everything off, you press the "Watch Sky" activity button.
You tried to program one button that always works correctly when pressed. To do that, you needed the 4 second pause to accommodate case 2 above. The downside to this approach is that in case 1 your user must keep the remote pointed at the equipment for the full 4+ seconds it takes to execute. Putting the remote down in the middle of this process causes it to fail.
The way 3FG described, and the way I use as well, is to omit this 4 second pause, but leave the input select there. Now in case 1 the macro will complete very rapidly and it will work correctly, because the discrete ON will really not power on the TV and the input select WILL work. In case 2 the input select will fire too soon and fail. His users (and mine) have been trained that after all equipment is on - if it didn't select the correct input, just press the same activity button again. Now the devices will be on as required and it behaves as case 1, it will very rapidly select the correct input.
Note that there is a case 2a and case 2b - 2a is if the activity before the power off is the same as the activity after the power on. The user will see exactly what he/she expects and although your input select failed, everything is as expected. It is only case 2b where the activity before the power off is different from the activity selected that caused the power on that the user will se that it didn't work as intended and press the same activity button a second time.
The advantages to this approach is that the macro works rapidly when all devices are on, it only appears to fail in case 2b, and you only need to program a single button to select the activity, not have some other button to do part of the process or correct when things are wrong.