When a DMX Trigger is set to the Act on Changes type, any time the incoming DMX value changes, a CueScript action is executed.

This type of trigger is best used to create custom actions that take the input value of a DMX channel and perform some kind of operation upon it. For example, a trigger of this type can output a string via a serial port or by UDP messages that passes the DMX channel value to another device. Another example would be to control a group of channels from the input of a single channel.

When editing an Act on Changes trigger, the editor panel will appear similar to this example:

The following properties can be set for an Act on Changes trigger:

  • Properties
    • Number – The numerical order of the trigger in the list. This number can be changed to replace an existing trigger or to organize triggers numerically.
    • Name – A name for the trigger. This field can be freely set to any text.
  • Trigger
    • Channel – The channel that is being observed for the trigger. A value from 1 to 16384 may be entered into this field. The channel number corresponds to the global channel number within CueServer, not a local channel number in a single universe.
    • Type – The type of the DMX Trigger. Set to Act on Changes for this type of trigger.
    • Action – A CueScript action that is executed each time the input DMX value changes. See below for examples.
    • Delay – Each time this trigger is activated by a change in DMX value, this delay temporarily disarms the trigger from firing again. After the delay expires, the trigger is re-armed and will fire again if the channel value has changed since the previous triggering. This is particularly useful when using this trigger type to send serial strings to external devices that cannot handle updates as fast as DMX in coming into the CueServer (approximately 40Hz).


Controlling Groups
To create a scenario where a group of channels in CueServer is controlled by an input DMX channel, string substitution can be used. First assign a variable to the DMX value, and then use that variable to adjust the level of the group. The CueScript action would be:

"level" = "#\#l"; Group 1 at `level`

Controlling Window Blinds
Popular window blind systems use a RS-232 serial protocol to communicate with the motors. To create a DMX trigger that takes the value of a DMX channel and passes it to the window blind controller, a string such as "FCF0FF<group-address><motor-id>FB<position>FFFF<checksum>" must be sent out the serial port. To do this, the CueScript action would be: