I make extensive use of IR control to automate equipment, and I find it awkward to make use of timers to cause delays to each IR signal output.
I have a lot of logic to manage on/off, input selection, and on multiple devices, and wether different cbus buttons are pressed - so flags are also involved, and different combinations can be confusing when trying to not have timers overlap.
Is there a better way of causing a \"delay\" so I can fire off a sequence of IR commands without using timers and therefore multiple responses ? If I fire off a whole sequence most of the devices miss out and get confused as there needs to be a defined break between pulses.
You can use a Pulse Output action between IR commands
eg
IR 1 to Output 1
Pulse Output 16 for 10
IR 2 to Output 3
etc
The Pulse Output command introduces a delay while the pulse output is high, without using any timers. You can use a unused output for this. Dont use an IR output because the IR transmitters don\'t like being hit by a DC voltage for any length of time
However note that the output should be in the same Comfort main board or Slave as the IR output in order for the delay to work. If the Pulse output is on a different slave, you will not see a delay
eg
IR 1 to Output 1
Pulse Output 17 for 10
IR 2 to Output 3
The command to Pulse Output 17 to the slave will be given to the slave, and this is instantaneous, so there will be very little delay between the two IR commands. The Slave will take care of its own pulse commands
Thanks Ill give it a go.
Feature request tho please - some sort of \'IR Pause\' so when sending lots of IR commands, they dont act as a continous beam.
Feature Request duly noted
regards
For what it\'s worth, an example of how I\'ve controlled numerous X10 commands with in-between delays using only one timer and one counter - guess it should work with IR as well:
SomeActions:
If Counter Counter1 = 0 Then
Do [FirstCommand]
End If
If Counter Counter1 = 1 Then
Do [SecondCommand]
End If
If Counter Counter1 = 2 Then
Do [ThirdCommand]
End If
Increment Counter1
If Counter Counter1 < 3 Then
Do SomeActions After 2 Seconds Using Timer1
End If
Set Counter1 = 0
You should probably also do a \"Set Counter1 = 0\" in your Startup Response to ensure you always have a known value for Counter1.
If you need different delays between different commands the above can be modified quite easily but the code does become a bit messy. I\'m still using an old version of Comfigurator so am not sure whether the code can be improved with the latest version.
I use counters extensively because of CBUS, and use flags where you use counters.
Mine\'s more complicated than this with multiple timers just for IR control (because of various states I need to track)
Just tried using Output 64 - because I want to actually use a main board output, which is currently being used for a PAUSE command
As far as i can tell, and from the 2nd post above, this is not possible ?
Pulse output 64 will cause a delay for other outputs on the same Slave or Comfort outputs (including the respective LEMs)
What are the problems you face for IR commands ? You say that they will not work if you have repeated IR commands to the same device. Do you mean that your sequence is
IR device 1 ON command
IR device 1 channel 1 command
IR device 1 volume up command
to the same device which does not work unless there is a gap between each command?
If that is the problem perhaps a firmware change to introduce a short gap at the end of each IR signal may be useful
Yes and no.
I do need IR Delays between device commands - but I also need delays where i need to allow devices to startup for example - and using timers is messy because you have to start branching off to multiple responses - so your \'code\' is broken up into may places.