Interactive Technologies CS-810, CS-840, CS-900 Users Manual

CueServer™ User’s Manual
Software Version 4.1
Interactive Technologies, Inc.
5040 Magnolia Creek Drive Cumming, GA 30028 USA Phone: 678-455-9019 Fax: 678-455-9071
Email: info@interactive-online.com
support@interactive-online.com
Web: http://www.interactive-online.com/
CueServer, CueScript and the Interactive Technologies logo are trademarks of Interactive Technologies, Inc. Apple, iPod and iPhone are registered trademarks of Apple, Inc. All other trade­marks referenced in this document are the property of their respective owners.
The CueServer rmware, design and documentation are copyrighted by Interactive Technologies, Inc. The rmware used in CueServer embodies valuable trade secrets proprietary to Interactive Technologies, Inc. and is licensed, not sold, and may not be duplicated in any way.
Specications subject to change without notice.
Copyright © 2003-2010 Interactive Technologies, Inc. All rights reserved worldwide.
Printed in the United States of America.
Revised 2/18/2010
Table of Contents
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
A Tour of CueServer’s Main Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Web Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
CueScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Hardware Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
LCD Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Function Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
DMX-512 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Serial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
MIDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Contact Closure Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Digital Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
CueServer on Mobile Web Browsers (iPhone® and iPod® Touch) . . . . . . . . . . . . . . . . . . . . . 7
Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
An Overview of Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Recording Basic Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Playing Back Basic Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Where To Go From Here . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Cue Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Normal Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Streaming Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Working with Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Viewing Cues in the Cue List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Recording Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Adding Cues Using the Cue List Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Adding Cues Using CueScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Recording Only Selected Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Recording An Empty Cue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Recording a Streaming Cue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Playing Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Manual Cue Playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Automated Cue Playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Viewing Cue Playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Editing Cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Creating Loops and Chases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
CueServer User’s Manual
Table of Contents | i
Playback Faders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
Playback Fader Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Cue Playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Manual Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Independent Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Split Fade Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Disabling Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Advanced Playback Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Combine Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Merge Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Override Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Scale Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Playback Submasters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Channel Enable Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
An Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Uses for Channel Disabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Channel Parking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Uses for Channel Parking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Input Disabling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
Button Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
CueScript Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
CueScript (State-Driven) Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Toggle Channel Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Toggle Preset Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Contact Closure Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Timer Event Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Timecode Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Timecode Playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Internal Timecode Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
DMX Input Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Event Ranges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Submaster Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
System Event Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
CueScript Command Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Using CueScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Executing Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Automation with Events and Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
CueScript Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Command Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
ii | Table of Contents
CueServer User’s Manual
Command Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Percentage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Decimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Hexadecimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Binary (On/Off) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Assigning and Using Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
System Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
System Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
CueScript Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
At . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
At (with array value) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78
At (with relative value) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79
At Cue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
At Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
At Playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Break . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Cue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Fade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Fixture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Follow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Follow Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Go . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
HTP (depreciated) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97
IF … THEN … [ELSE …] ENDIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Input [Enable | Disable] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Input Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Link . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
LTP (depreciated) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
CueServer User’s Manual
Table of Contents | iii
Macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
On . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Override . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Park . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Playback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Previous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Record Cue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Record Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Record Stop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Record Stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Self . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
SMPTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Station . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Stop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Toggle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Unjoin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Unpark . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Update Cue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Wait . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
+ (and) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126
- (except) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126
> (through) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127
* (wildcard) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127
“ ” * (command broadcast) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .128
“ ”~ (string store) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129
“ ” = (variable assignment) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .131
{{ }} (variable substitution) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132
; (semicolon) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .133
DMX-512 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
DMX Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
DMX Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
iv | Table of Contents
CueServer User’s Manual
Contact Closure Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Contact Closure Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Contact Closure Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Binary Cue Select Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
About the Binary Cue Select Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Enabling the Binary Cue Select Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Digital Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Controlling the Low-Voltage Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Low-Voltage Output Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Serial Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Serial Port Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Receiving Commands via the Serial Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Sending Serial Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .153
Receiving Messages via UDP Packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Sending Messages via UDP Packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
MIDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
MIDI Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
MIDI Timecode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Programming Timecode Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
MIDI Reset Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
CueServer System Exclusive Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Note On Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Note Off Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
MIDI Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Sending MIDI Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Appendix A: CueScript Command Summary . . . . . . . . . . . . . . . . . . . . . . 163
Appendix B: System Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Appendix C: System Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .173
Appendix D: Warranty Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
CueServer User’s Manual
Table of Contents | v
vi | Table of Contents
CueServer User’s Manual
Introduction
CueServer is an advanced lighting control interface and playback device that leverages the power and ease-of-use of web-based operation and setup with robust show control features and a full complement of connections to external devices.
Use CueServer to play back a simple programmed show to DMX controlled lighting xtures or set up CueServer to orchestrate a complex system of lighting playback, button inputs, wireless tablet controls, timers, astronomical events, MIDI controls, timecode triggering, serial devices, relay outputs and much more. CueServer easily scales from simple tasks to complex requirements without making CueServer difcult to understand, program or operate.
At the core of CueServer is the extremely exible CueScript scripting language. This is the glue that ties together all of the functional units of the CueServer hardware, web server, cue database and event model.
Using the highly exible model of Events and Actions, CueServer may be congured in nearly limit­less ways, allowing the programmer to fully customize the function of CueServer and it’s various I/O modules. For example, make buttons recall lighting sequences, have the LCD display the system’s status, integrate with RS-232 controlled devices, synchronize timecode and other sequencers via MIDI, allow external PCs to trigger events via web pages, provide emergency backup lighting logic, have shows start at sunset, perform different tasks on different days -- do as much or as little as a project requires.
Hardware
Ethernet
DMX-512
Serial (RS-232)
MIDI
Digital I/O
LCD Display
Function Buttons
CueServer System Architecture
Web Server
CueScript
Processing
Engine
Cue Database
Event Model
Cue Events
I/O Events
Real Time Events
Astronomical Events
Timecode Events
User Events
System Events
CueServer User’s Manual
Introduction | 1
A Tour of CueServer’s Main Components
Web Server
CueServer incorporates an “embedded” web server. This means that nearly any Windows PC or Mac OS computer with a web browser (and even iPhones, touchscreen iPods, some PDAs and cell phones) can connect to CueServer and view it’s internally generated web pages.
CueServer uses it’s web pages to perform a variety of tasks:
System Programming Use dynamic web pages to set up lighting cues, I/O logic, timing, events and much more.
Playback Monitoring See what’s going on. View the live stage outputs and console controls.
User Input Create a user-interface for the end-user via web pages.
CueServer’s internal web pages are highly dynamic, using the latest in web technologies, to provide “live” information updating without requiring the pages to reload.
2 | Introduction
CueServer User’s Manual
Cues
CueServer runs cues. A cue is an object that may contain lighting levels, timing information, and automation tasks. When a cue is executed, CueServer outputs the lighting levels and performs any actions associated with the cue.
Cues are further divided into two types. CueServer handles Normal cues and Streaming cues. Both cue types contain timing information and automation tasks, but they differ in the type of DMX lighting levels they contain.
Normal cues contain a snapshot of a lighting look that is to be applied to the lighting output of CueServer, combined with fade and follow times. When the cue is executed, the lighting output transitions to the recorded look. Fade times, follow times and links can also be specied for normal cues to build transitions, chases and loops.
Streaming cues contain a streamed recording of the lighting data from another console or control­ler. For this type of cue, CueServer stores every piece of incoming data from a console for playback later, allowing an external device to be used to compose a complex light show and then capture it into CueServer. When a streaming cue is executed, CueServer will replay the captured light show segment. This segment can be as simple as a slow rainbow effect for multiple xtures or as complex as a moving-light “rock-and-roll” show. Streaming cues and normal cues may be combined in the same Cue List to produce a complete show.
CueServer has four separate playback faders that coordinate the execution of cues from a central Cue List database. This allows for as many a four separate time lines playing at once, either affecting the same lights and I/O devices or affecting separate groups of lights and devices.
CueScript
The most central part of CueServer is it’s CueScript command language. All of CueServer’s auto­mation capabilities come from the application of CueScript commands to a wide range of available events in the CueServer system.
Simple light show setups need very little CueScript coding (if at all) to make CueServer perform its tasks. As the need for automation and/or integration into other systems expands, CueScript is the language that ties together all of CueServer’s hardware modules and events.
In brief, CueScript commands are very similar to those found on many lighting consoles. For example, “Channel 1 At 50%”, “Cue 7 Go”, “Button 3 Enable”, “Group 2 Release”, etc. CueServer makes many extensions to this familiar lighting control language to be able to handle some more advanced system automation tasks.
CueScript is used in two distinct ways while programming and operating CueServer, either as live commands, or as event actions.
When CueScript is being used live, the operator is typing commands into the CueServer command line and hitting Enter. For instance, if the operator wants to run a cue, they might type “Cue 34 Go” on the command line. These commands are typically entered on the command line eld of many of
CueServer User’s Manual
Introduction | 3
CueServer’s web pages, but they may also be sent to CueServer through CueServer’s serial port, Ethernet port or MIDI port. Since CueServer is always listening for CueScript commands on all of it’s external I/O ports, it’s easy to allow other external devices to remotely control CueServer.
When CueScript is being used as an event action, this means that the system programmer has provided a series of CueScript commands that CueServer should execute when a specic event occurs in the system. Many user-denable events exist in CueServer, such as when a cue executes or when a button is pressed, or a contact closed, or the unit is powered on, or a specic time of the day occurs, etc. For instance, the programmer might choose to instruct CueServer to start running a show, starting with Cue 100, when CueServer turns on. The programmer would enter “Cue 100 Go” in the eld for the System Startup Event.
Hardware Interfaces
CueServer has a wide complement of interfaces that connect CueServer to the outside world. These include an LCD Display, Function Buttons, Ethernet, DMX, Serial, MIDI, Contact Closure Inputs and Digital Outputs. Depending on the model of CueServer you have, some of the following features may not be present.
LCD Display
CueServer May 1, 2006 1:42:53 PM TC: 00:01:23.45 IP:192.168.123.4
The rack mounted CueServer Pro (CS-800) has a large 80-character LCD display that serves two primary functions. This display provides status information about the current operation of CueServer and it is part of a Menu system that allows the user to make adjustments to several of CueServer’s parameters.
In it’s normal mode, the LCD Display is showing the current running status of CueServer. It typically shows the unit’s name, the current date and time and the unit’s IP Address. Which status information is displayed and where is completely congurable.
Also, through the use of CueScript commands, CueServer can write custom messages and labels to the LCD display, allowing the system programmer to customize the display for specic applications and make CueServer easier to use for the end-user:
System Ready May 1, 2006 1:42:53 PM Backup Mode Enabled - Press 1 to Disable
4 | Introduction
CueServer User’s Manual
In the Menu mode (accessible from CueServer’s front-panel menu buttons), the LCD Display is used to allow the end-user to modify several of CueServer’s parameters, including the Date, Time, Network settings, and more.
Function Buttons
On the front-panel of the rack mounted CueServer Pro are 8 user-denable function buttons, each with its own LED indicator. Each of these buttons may be congured with its own CueScript action or other pre-dened behavior, allowing the buttons to perform nearly any action possible on CueServer. The buttons may start shows, run cues, send commands to external devices, modify the LCD Display, toggle loads or presets and more. The indicator LEDs can be congured as well, allow­ing very exible feedback options for each button.
Additional buttons (up to 512 in total) can be added to CueServer via the CueStation Network Hub, which can be attached to CueServer by either it’s Ethernet or Serial port.
Ethernet
The Ethernet port on all CueServers are used for several important tasks. Most importantly, the primary way of communicating with CueServer is via its built-in web server. Use a computer with a web browser to connect to CueServer and view the dynamic web pages used to control, program and monitor all of CueServer’s operations.
The Ethernet port can also be used in a network environment to allow external devices to send CueScript commands to CueServer, and CueServer can send arbitrary messages to other external network devices, allowing for complete Ethernet-based integration of CueServer with other systems.
CueServer responds to HTTP, TCP, UDP, XML, Telnet and several other protocols for a wide variety of system integration options.
DMX-512
DMX-512 is a lighting control protocol used for professional stage, studio and entertainment lighting xtures. CueServer has extensive roots in it’s ability to send and receive DMX signals. CueServer supports static, fading and streaming cues that can control nearly any DMX-based lighting xture available. CueServer’s DMX input port can pass data through to it’s output, capture looks or stream­ing data and automatically provide backup scenarios -- all completely controlled by CueScript events and actions.
CueServer User’s Manual
Introduction | 5
Serial
CueServer provides a standard RS-232 port for communicating with external devices, such as video playback systems, home automation systems, security panels, HVAC controls, building automation packages and much more. Some CueServer models have two serial ports. External devices may send CueScript commands to CueServer, and CueServer can send any arbitrary data out to control external devices.
Using the serial port, CueServer can be used as an intelligent bridge between a home automation system and DMX compatible lighting xtures (such as color-changing LED lamps), or CueServer may take it’s commands from a show control system or security panel. CueServer’s simple to understand commands make it easy to integrate with a wide variety of other devices with serial ports.
MIDI
The rack mounted CueServer Pro (CS-800) has three MIDI ports (input, output and through) for interfacing with MIDI equipment and/or for receiving Timecode.
CueServer responds to many of the standard MIDI messages, allowing external devices to easily control many aspects of CueServer. Also, external devices may send special System Exclusive mes­sages to CueServer that contain CueScript commands - allowing external devices to exert full remote control of CueServer.
CueServer can send nearly any MIDI command out to external MIDI devices in response to any internal event action, allowing very exible control of external devices.
Timecode can be received into CueServer by way of MIDI-Timecode (MTC) to allow CueServer playback to be perfectly synchronized with an external video or audio program. SMPTE Timecode may be connected to CueServer by using a third-party SMPTE-to-MTC converter (such as the J.L. Cooper PPS-2).
Contact Closure Inputs
All CueServer models provide 8 separate contact closure inputs, which can trigger CueScript events. These inputs allow a wide array of external switch-type devices to be connected to CueServer and which can trigger all types of events.
Button stations, motion detectors, keyswitches, oor-sensors, photocells and much more can be attached to CueServer, allowing these devices to control or modify the behavior of CueServer.
Digital Outputs
All CueServer models provide 8 separate low-voltage digital outputs, which can be completely con­trolled by CueScript commands. Relays, LEDs, sounders and more can be directly connected to CueServer’s digital outputs to allow CueServer to coordinate the operation of these devices with a show running in CueServer.
6 | Introduction
CueServer User’s Manual
CueServer on Mobile Web Browsers (iPhone® and iPod® Touch)
An exciting feature of CueServer is that it is fully operational from advanced wireless web brows­ing devices (such as the Apple® iPhone® and the Apple® iPod Touch®).
Because of CueServer’s strong roots with open­standards and web-based architecture, most any mobile device that contains a “real” web browser can effortlessly connect to CueServer and view its user-interface as if it were a world-class application running natively on that platform.
Use CueServer as the engine that can provide advanced lighting control to your iPhone or touch­screen iPod. These handheld devices can be used for wireless remote focus, macro triggering, DMX troubleshooting, and virtually any other lighting control task. CueServer acts as a complete web-based lighting console -- and now you can bring all of these features to your favorite handheld device.
CueServer User’s Manual
Introduction | 7
8 | Introduction
CueServer User’s Manual
Cues
Central to CueServer’s design is the Cue. A cue is an object that may contain lighting levels, timing information, and/or automation tasks. When a cue is executed (or run), CueServer outputs the light­ing levels stored in the cue and performs any additional automation actions that the cue may specify.
When programming CueServer, one can think of running a cue when something needs to change. For instance, a cue might turn on the lights on a stage or studio, or a cue might begin to slowly change the color of the front of a building to a combination of Red and Orange, or a cue might play back a sequence of complex moving light operations, or a cue might close the curtains in a board­room and turn on a projector. If a cue contains DMX lighting levels, those levels will be sent to the lighting xtures and if a cue contains CueScript actions for other automation tasks, those actions will be taken.
Cues are assigned Cue Numbers and are always referenced by their cue number when playing cues, looping to other cues, recording cues or editing cues. Cues may be assigned any number from 0.1 to 6499.9.
Cues are divided into two main types. CueServer handles Normal cues and Streaming cues. Both cue types contain timing information and automation tasks, but they differ in the type of DMX lighting levels they contain.
CueServer has up to four separate Playback Faders (depending on model) that coordinate the execution of cues from a central Cue List database. This allows for as many a four separate time lines playing at once, either affecting the same lights and I/O devices or affecting separate groups of lights and devices. The database of cues in a show can be viewed and edited via the Cue List web page. The state and operation of the playback faders can be viewed using the Console web page. For additional features and description of Playback Faders, see the Playback Faders chapter.
Cues can be executed manually by entering a CueScript command on many of CueServer’s web pages such as “Cue 1 Go”. CueServer can also execute cues when any of CueServer’s event­based objects (buttons, timers, contact closures, other cues, etc.) are activated after they have been programmed with a CueScript action (such as “Cue 1 Go”). Also, cues may be executed automati­cally by the auto-follow and linking mechanisms in the Cue List.
Cues may be recorded in many ways, including the built-in web interface or by CueScript com­mands, by manually entering DMX levels, by taking a snapshot of the DMX input, or by recording an entire stream of changing DMX input levels.
All of these features and concepts are described in greater detail in the following sections.
CueServer User’s Manual
Cues | 9
An Overview of Cues
This section will provide a quick introduction to using cues in CueServer. We will build a couple of cues and play them back. The sections that follow this brief introduction will describe all of the details of using cues in greater detail.
Recording Basic Cues
Start by viewing the Stage View web page (the view of CueServer’s lighting output channels) by click­ing on the Stage button in the navigation bar:
Turn on some lights by setting channel levels. Do this by entering the command:
Channel 1>5 At FL
Next, we will record this look as a cue.
Change to the Cue List web page by clicking on the Cue List button in the navigation bar. If you are starting with an empty CueServer, it should not contain any cues yet:
To record the current lighting look as a cue, click on the Add New Cue button. The New Cue web page will appear:
10 | Cues
CueServer User’s Manual
Use this web page to assign the new cue a cue number, name, fade and follow times, a link and a CueScript action.
For now, we will only assign a name and a fade time. Enter a name like “My First Cue” and a fade time of 5 seconds:
When nished entering the information, click on the Record Cue button.
CueServer will return to the Cue List page, displaying the newly recorded cue:
CueServer User’s Manual
Cues | 11
Next, return to the Stage View web page so we can change the levels to make a new scene:
Change the lighting levels by entering these commands:
Channel 1>8 At 50
Channel 3>6 At 75
Then, return to the Cue List page and click on Add New Cue again.
Enter a name for the cue, and set the fade time to 10 seconds, like this:
When nished, click on the Record Cue button. CueServer will return to the Cue List page, display­ing the two recorded cues:
12 | Cues
CueServer User’s Manual
Playing Back Basic Cues
Now that we have two cues recorded, we can play them back and watch the result.
First, change to the Stage View:
Clear all current outputs by entering the following command:
Channel 1>8 Release
To execute Cue 1, enter the following command:
Cue 1 Go
After entering this command, Cue 1 will begin playing back. Since it has a 5 second fade associated with it, the channel levels will gradually fade up to the scene recorded into Cue 1:
Next, to execute Cue 2, enter the following command:
Cue 2 Go
When this command is entered, the channel levels will gradually crossfade to the scene recorded in Cue 2 over 10 seconds:
CueServer User’s Manual
Cues | 13
Please note that while the Stage View is displaying the channel levels changing, CueServer is also outputting the DMX lighting signal to the actual lighting xtures. The update rate of the Stage View data in your web browser is not as fast as the DMX signal, and although the web page might appear to be skipping steps as channels fade up or down, CueServer’s DMX signal is updating at 40 Hz and has very smooth crossfades.
Where To Go From Here
Although the example above is somewhat simple, CueServer’s cue playback ability is quite exible and can be extended to perform much more complex playback tasks.
You can use the built-in channel setting functions to set channel levels when recording cues, but you can also record cues by supplying a DMX signal from an external lighting console or controller.
CueServer supports not only the basic static cues demonstrated above (normal cues), but it also supports streaming cues, which are dynamic cues captured from an external lighting console or controller. A complex light show, including special animation, transitions or effects can be accurately captured and played back using CueServer’s streaming cues.
Cues support crossfading, split fade times, auto-follow times, linking (for loops), and more, which are all described in the following sections.
Another important feature of cues is that each time a cue begins playing back, the cue can execute optional CueScript statements, which can be used to automate some other CueServer task. For example, a cue might be scripted with CueScript commands to display a prompt on the LCD Display, or to begin ashing an LED on one of the front-panel buttons, or to toggle a digital output, or send a serial string out the serial port, or to begin a different set of cues on another playback fader. The exibility of this system provides nearly endless possibilities for customizing how CueServer controls its various resources during show playback.
It should also be noted that cues do not necessarily need to have DMX channel information recorded into them. Cues can be created that don’t adjust the lighting output at all. Instead these, cues can be used solely for their ability to execute CueScript commands. In this case, a cue could be created that changes the LCD Display and sends a serial port string that causes a projection screen to lower, for example.
Finally, cues can be executed (or run, or played back) in a number of different ways. They can be executed manually by entering a CueScript command (such as Cue 1 Go), or you can assign the same CueScript commands to any of CueServer’s event-based objects, which allows cues to be executed in response to a button press, timer, contact closure, system event, other cue, or many other triggers.
All of the features necessary to use cues to their full potential are described in the following sections.
14 | Cues
CueServer User’s Manual
Cue Types
CueServer works with two main types of cues, called Normal and Streaming cues. Although they are similar in many ways and can be mixed together in the same cue list, they have specic differences in the way that the DMX levels are stored in them and how they play back.
Normal Cues
Normal cues contain a static snapshot of a lighting look that is to be applied to the lighting output of CueServer, combined with optional fade and follow times. When a normal cue is executed, the light­ing output transitions to the recorded look.
If no fade time is specied, the DMX levels in the cue appear immediately at the DMX output. If a fade time has been assigned to the cue, then when the cue is executed, the DMX output of CueServer begins a “crossfade” to the new look.
Fade times are specied in seconds (in 0.1 second increments). Normally, all DMX channels in the cue fade to their new output levels at the same time, but a “split fade time” may be specied that has different fade times for channels that will be rising and channels that will be falling. For example, a split fade time specied as “1.5/3” indicates that rising channels will fade in 1.5 seconds and falling channels will fade in 3 seconds.
In a normal cue, any combination of the 512 DMX output channels may be recorded into the cue. This allows all channels, or only some channels, or even no channels to be affected by the cue’s playback. Using this feature, a normal cue may affect all lighting output simultaneously, or it may only affect certain channels (such as a particular xture or a particular xture’s color, for instance). Normal cues may not have any lighting channels recorded in it at all, allowing the cue to be used solely as a cue for executing other automation tasks.
Each normal cue has an auto-follow time which allows the execution of the cue to automatically trigger the execution of the next cue in the cue list after a specied amount of time. For example, if a cue has a follow time of 5 seconds, then CueServer will automatically advance to the next cue in the cue list 5 seconds after the cue is executed.
Both normal and streaming cues have an optional link cue eld, which allows the user to specify the cue number of the cue that should be executed after the current cue. By default, cues always execute in numerical order. This order can be changed by linking a cue to another cue. For example, to create a four-step chase, cue 4 can be linked back to cue 1.
Both normal and streaming cues have a CueScript action eld, which allows the user to specify additional automation actions to take when the cue executes. The action eld can contain any valid CueScript commands. Use the action eld to turn on digital outputs, or ash one of the button LEDs, or to display a prompt on the LCD display or write a string out the serial port, or to begin executing other cues on a different playback fader, and more.
CueServer User’s Manual
Cues | 15
Streaming Cues
Streaming cues differ from normal cues in the way that the DMX lighting data is stored and played back. Streaming cues contain a streamed recording of the lighting data from another console or controller.
For this type of cue, CueServer stores every piece of incoming data from a console for playback later, allowing an external device to be used to compose a complex light show and then capture it into CueServer.
When a streaming cue is executed, CueServer will replay the captured light show segment. This segment can be as simple as a slow rainbow effect for multiple xtures or as complex as a moving­light “rock-and-roll” show. Streaming cues and normal cues may be combined in the same Cue List to create a sophisticated playback of a combination of cue types.
Streaming cues do not have a user-dened auto-follow time. Streaming cues automatically perform an action (such as following to the next cue, or looping, or stopping) when the end of the data stream has been reached.
Streaming cues also do not have a fade time, as their purpose is to exactly play back a captured sequence of events recorded directly from another controller.
However, streaming cues do have links and CueScript actions just like normal cues in order to specify loops and/or provide additional automation details to the cue.
16 | Cues
CueServer User’s Manual
Working with Cues
Viewing Cues in the Cue List
Use the built-in Cue List web page to view a list of cues currently stored in CueServer.
The following example shows CueServer’s Cue List page after several cues have been recorded into CueServer’s memory. Each cue in the list shows its cue number, name, timing parameters, link and CueScript action.
In this example, Cue 1 is named “Start Show”, has no fade time and a follow time of 10 seconds, no link (which defaults to the next cue) and a CueScript action that writes “Starting in 10 seconds” to the LCD Display.
Cues 10, 11 and 12 make up a 3-step loop (or chase). Each cue in the loop has a fade time of 1 second and a follow time of 2 seconds. This causes each cue to have a 1 second crossfade from the previous cue and a 2 second delay between the beginning of each cue. Cue 12 is linked back to Cue 10, creating the loop. Finally, Cue 10 has a CueScript action to execute Macro 1.
Cue 20 is the only streaming cue in the Cue List. It contains 15 seconds of DMX data that was captured from another lighting console or controller. When this cue is executed, it will execute Macro 2 and the lighting show recorded in it will last for 15 seconds.
Cue 99 has a 5 second fade and does not automatically follow to the next cue. It contains several CueScript actions to take when it executes, which is to turn off the LEDs on buttons 1 and 2, and to write “System Off” to the LCD Display.
CueServer User’s Manual
Cues | 17
Recording Cues
There are several ways to record cues into CueServer, which include using CueServer’s built-in web pages, or by entering CueScript commands. Cues can be recorded from CueServer’s own output or by capturing lighting data from an external lighting console or controller. Cues can be of the normal (static scene) type or they can be a real-time stream capture of a show playing from an external source.
The following sections detail how each of these cue recording features work.
Adding Cues Using the Cue List Page
To add a new cue to the Cue List, click on the Add New Cue button:
The new cue web page will appear:
Use this web page to set up the new cue.
CueType
Choose the desired type of cue. Standard (or Normal) cues are regular crossfading cues with fade times. Streaming cues contain a continuous data stream captured from an external light­ing console or controller. If Streaming is chosen, the page will change to the New Streaming Cue page, described in a later section of this chapter.
Cue Number
Specify a number for this cue. All cues are referenced by number. Each cue must have a unique cue number. Any number from 0.1 through 6499.9 may be used.
18 | Cues
CueServer User’s Manual
Cue Name
Each cue may have a user-assigned name. This is for your convenience only.
Fade Time
This is the crossfade time for the cue, in seconds. A time of 0 (zero) will cause the cue’s levels to appear at the DMX output immediately when the cue is executed. Any time above zero will cause the cue’s levels to gradually “fade” to the recorded look in the specied time.
Any time may be given from 0 to 6500 (about 1.8 hours) in 0.1 second increments. Split fade times may be specied as well. Split fade times are two times separated by a slash (/), for example, 1.5/3. The time before the slash species the fade time for channels that are fading up and the time after the slash species the fade time for channels that are fading down.
Follow Time
If a cue is given a Follow Time, it will automatically execute the next cue in sequence after the specied time. A follow time of 0 (zero) means no auto-follow. Use this function to create sequences of cues that automatically step from one to another.
Link Cue
By default, cues always execute in numerical order (1 followed by 2, followed by 3, etc.). If a cue has a Link Cue, then the playback order of which cue comes next is overridden by this eld. Use this feature to create loops or other jumps in cue playback order.
Record Channels
This pop-up menu species which channels will be recorded in the newly created cue. The following options are available:
• All Channels - All 512 channels are recorded into this cue.
• Selected Channels - Only the currently selected channels are recorded into this cue.
• None - No channels are recorded into this cue. The cue will be “empty”.
Cue Action
This is the optional CueScript action that CueServer will execute when this cue executes. Any string of valid CueScript commands can be placed in this eld. Use this eld to have the cue run commands that can perform nearly any automation task, such as illuminating button LEDs, toggle digital outputs, output serial strings, display prompts on the LCD, run cues in the other playback faders and more. Unless otherwise specied, the same playback fader that was used to run the cue will be the default playback for CueScript commands.
After the parameters for the new cue have been entered, click the Record Cue button:
CueServer User’s Manual
Cues | 19
When the cue is recorded, the current DMX levels being output by CueServer will be recorded into the cue. This can be the channel levels being output directly by CueServer, or may be the DMX data being input into CueServer (from an external console) and being passed through to CueServer’s DMX output, or it may be a combination of both.
Adding Cues Using CueScript
Another way to record a cue is to enter a command using the CueScript language.
From any active command line within CueServer, enter a command such as:
Record Cue 1
The command “Record Cue 1” will create a new cue with cue number 1 by capturing the current DMX Output of the CueServer.
When a cue is recorded from a CueScript command, the cue also captures the current fade time, follow time, and link.
For example, to record a cue with a fade time of 3 seconds, the following command may be entered:
Time 5; Record Cue 2
This records a new Cue 2 that has a fade time of 5 seconds.
Or, additional parameters may be specied:
Time 10; Follow 15; Link 1; Record Cue 3
These commands record a new Cue 3 with a 10 second fade time, a 15 second follow, linked back to Cue 1.
20 | Cues
CueServer User’s Manual
Recording Only Selected Channels
By default, cues store information for all 512 of the available channels and when played back they affect all of the channel outputs.
However, cues may be recorded to only contain a subset of channels, so that when they play back, they only affect a certain group of lights, xtures or parameters. This is useful when one wants to record a cue that only operates on a particular xture or that only changes the color of a xture, etc.
When recording a cue using a CueScript command, the “$” character is added before the cue number to specify that only the selected channels should be recorded into the cue.
For example:
Starting with the following levels being output:
Note that channels 1 through 12 are being out at 33%, but only channels 4 through 9 are selected.
Then the following command is executed:
Record Cue $7
This command causes the levels of only channels 4 through 9 to be stored in Cue 7.
Later, if CueServer is outputting the following channels (1 through 20 at 75%):
And Cue 7 is executed (by a command like “Cue 7 Go”), only channels 4 through 9 will be affected:
CueServer User’s Manual
Cues | 21
Recording An Empty Cue
By default, cues store information for all 512 of the available channels and when played back they affect all of the channel outputs.
However, cues may be recorded without any channel level information at all. This type of cue does not affect the DMX output when played, it is more like a placeholder.
Empty cues still have a follow time and can link to other cues, which preserves its ability to be mixed in with other cues in the Cue List.
Empty cues also can execute CueScript actions, which allows an empty cue (one that does not directly affect the DMX output) to automate other tasks via CueScript commands. This would be useful to display prompts on the LCD Display, or illuminate LEDs on the front-panel buttons, or output serial strings, begin running cues on other playback faders and much more. A cue of this type might send the appropriate commands to lower a projection screen, for example.
When recording a cue using a CueScript command, the “#” character is added before the cue number to specify that no DMX channels should be recorded into the cue.
For example:
Record Cue #8
This command creates a new Cue 8 that does not contain any DMX channel information.
22 | Cues
CueServer User’s Manual
Recording a Streaming Cue
CueServer can record a special type of cue called a Streaming cue. This type of cue captures the lighting show playing at CueServer’s DMX input port from an external lighting console or controller.
While a Streaming cue is being recorded, CueServer stores every DMX update being sent from the external device, similarly to how a tape recorder might capture the show. Then, when the cue is played back, the entire sequence exactly as it was recorded is output from the CueServer.
It should also be noted here that streaming cues can be recorded and placed in the same Cue List as normal cues. A static cue might play rst, followed by streaming playback, followed by another static cue, etc. Also, because CueServer has four playback faders, multiple streaming cues and/or static cues can be playing back at the same time.
To record a streaming cue, click on the Add New Cue button from the Cue List page:
Next, click on the Streaming radio-button to choose a streaming-type cue:
The page will change to only show properties that are appropriate for a streaming cue. These prop­erties are described below:
Cue Number
Specify a number for this cue. All cues are referenced by number. Each cue must have a unique cue number. Any number from 0.1 through 6499.9 may be used.
Cue Name
Each cue may have a user-assigned name. This is for your convenience only.
CueServer User’s Manual
Cues | 23
Follow Mode
Streaming cues have a follow mode that species what CueServer should do as soon as the end of the stream has been reached. The following options are available:
• Next Cue
When the stream completes, the playback fader will advance to the next cue in the list (or follow to the linked cue, if specied).
• Loop
When the stream completes, the stream will immediately loop back to its beginning. This cue will loop indenitely.
• Hold
When the stream completes, the playback fader will hold the last frame without advancing automatically to the next cue.
• Release
When the stream completes, the playback fader will be released, causing all of its channel levels to be released.
Link Cue
By default, cues always execute in numerical order (1 followed by 2, followed by 3, etc.). If a cue has a Link Cue, then the playback order of which cue comes next is overridden by this eld. Use this feature to create loops or other jumps in cue playback order.
Cue Action
This is the optional CueScript action that CueServer will execute when this cue executes. Any string of valid CueScript commands can be placed in this eld. Use this eld to have the cue run commands that can perform nearly any automation task, such as illuminating button LEDs, toggle digital outputs, output serial strings, display prompts on the LCD, run cues in the other playback faders and more. Unless otherwise specied, the same playback fader that was used to run the cue will be the default playback for CueScript commands.
After the cue number is chosen and the cue’s other properties are set, click on the Continue to
Next Step button to proceed to record the stream:
24 | Cues
CueServer User’s Manual
Next, CueServer will display the Record Streaming Cue page:
From this page, you can Start and Stop recording manually, specify an optional Trigger Channel for automatic recording, specify an optional recording duration, or re-record a stream of DMX data.
The function of the elds and buttons on this page are described below:
Cue Number
This is the number of the cue being recorded.
Trigger Channel
This eld activates a function to automatically trigger the starting and stopping of the recording process by monitoring one of the DMX input channels being supplied by the external console or controller. Specifying a channel number here will cause CueServer to wait for that channel to rise above 0 (zero) to automatically start recording, and then automatically stop recording as soon as the channel returns to 0 (zero). This feature is very useful for programming the external show to automatically mark it’s own start and stop times (or in-point and out-point). To disable this feature and record a stream manually, enter a trigger channel of 0 (zero).
Stream Duration
This eld species the duration of a stream to be recorded. Supply a number of seconds (accurate to 0.1s) of the desired recording length. CueServer will stop recording when this time limit is reached. If not specied, stream recording continues until manually stopped by clicking the Stop button or automatically stopped when the trigger channel returns to zero or when available memory is exhausted.
DMX Recorded
This eld displays the duration of the current recording in Hours, Minutes, Seconds and Tenths. While recording is in process, this number updates live.
CueServer User’s Manual
Cues | 25
Memory Available
This is the approximate amount of memory available to record the streaming cue into. Depending on the update rate of the source and the complexity of the show being captured, this number will decrease at varying rates while recording is in process. If the source signal is being recorded, but none of the DMX input levels are changing, this number will decrease very slowly, for example.
Trigger Channel Status
This eld displays the live status of the chosen trigger channel.
Recording Status
This eld shows the current status of recording. It may indicate that CueServer is ready to record, or currently recording, or waiting for DMX input, or waiting for the trigger channel to become active, etc.
The Start Recording button is used to begin the recording process. If a trigger channel is specied, CueServer will wait for that channel to rise above 0 (zero) before beginning to capture data. If no DMX Input is present, CueServer will wait for DMX input to start before beginning to capture data. Finally, if DMX input is available and there is no trigger channel specied, CueServer will begin capturing data as soon as the Start Recording button is pressed.
Note that when CueServer is recording a stream or waiting to record a stream, the Start Recording button changes to Stop Recording.
The Erase Stream button becomes enabled after a stream has been recorded. This button lets you erase the current stream and record the stream again. You must erase an existing stream before CueServer will allow you to re-record a new stream into the cue.
When satised with the stream recorded in the cue, exit back to the cue details page by pressing the
Return to Cue button:
26 | Cues
CueServer User’s Manual
Playing Cues
There are several ways to play back cues. Cues can be executed manually via CueServer’s built-in web pages, or they can be remotely triggered, or they can be run as the result of an event-based object such as a front-panel button, timer, contact closure or other CueServer trigger.
The following sections describe in detail the various ways that cues can be played back.
Manual Cue Playback
From any of CueServer’s web pages with a live command line, cues can be played back using CueScript commands.
Use the command string “Cue (cue number) Go” to run a cue. For example:
Cue 30 Go
When this command is entered, the current playback fader (by default Playback 1) will begin running Cue 30.
Each time a cue runs, the playback fader keeps track of which cue is the next cue. To play the next cue in sequence, simply use the command:
Go
Using the Go command without rst specifying a cue causes the next cue in sequence to run. In this example, Cue 31 would play next. On the next Go, Cue 32 would play, etc.
CueServer User’s Manual
Cues | 27
Automated Cue Playback
Buttons, timers, contact closures, DMX input, timecode events, system events and more can be pro­grammed to run cues when they are activated. Each of these objects generate events in CueServer, and each of these events can execute CueScript commands.
For example, to program a button (or any of the other event-based objects) to run a cue when acti­vated, use CueServer’s Triggers web pages to program the object to run the desired cue.
For example, enter the Function Buttons page of the Triggers area and add a button to the list (or edit an existing button). After choosing a button, the Button Setup page appears:
In this example, we named Button 1 “My First Button”, made it a CueScript-type button and assigned it the command “Cue 1 Go” when the button is pressed.
For additional information about all of CueServer’s Trigger features, see the chapter on Triggers.
28 | Cues
CueServer User’s Manual
Viewing Cue Playback
CueServer’s Console web page displays a live view of the operation of each of CueSever’s four playback faders.
While cues are playing back in any of the four playback faders, the Console page shows which cue is active, which cue is next, the current fade time, follow time, link, combine mode and active status.
Each of the elds that appear for each playback fader are described below:
Current
This eld shows the current activity of the playback fader. It will indicate that the playback fader is Empty, or it contains a Cue, Active Channels, is playing back a streaming cue, or other descriptive information about the fader.
Next Cue
This is the next cue that will be executed when the playback fader receives a Go command or if it performs an auto-follow.
Fade Time
The fade time that will be used for the next Go.
Follow Time
The auto-follow time that will be used for the next Go.
Link Cue
The link cue that will be used for the next Go.
Follow Timer
If an auto-follow was assigned to the last cue that was executed, this elds shows the count­down timer that will perform the auto-follow when it reaches zero.
CueServer User’s Manual
Cues | 29
Output
The submaster output level of this playback fader. Typically 100%, but can be changed by using the Playback command.
Mode
The combine mode for the playback fader. A playback fader may be in Merge, Override or Scale mode. Merge causes each channel of the fader to be output if it is a higher level than those of lower-numbered faders or the DMX input. Override causes each channel of the fader to be output instead of those of lower-numbered faders or the DMX input. Scale causes each channel of the fader to proportionally scale the output of the faders or DMX input that precede it. See the descriptions of the Merge, Override and Scale commands.
For additional information about the Console web page, see Console section of the Web Pages chapter.
30 | Cues
CueServer User’s Manual
Editing Cues
To edit an existing cue, click on the cue’s number link from the Cue List web page:
The edit cue page will appear for the chosen cue (assuming the cue is a normal-type cue):
From this page, most of the cue’s parameters can be modied.
Cue Type
This is the type of the cue. Once a cue has been recorded, its type cannot be changed. If a cue of a different type is needed, rst delete the existing cue and re-record a new cue of a different type.
Cue Number
This is the cue’s number. This value can be changed to assign a different number to the cue, which can change the cue’s position in the Cue List. The cue number of a streaming cue cannot be changed.
Cue Name, Fade Time, Follow Time, Link Cue
The cue’s name, fade time, follow time and link may all be changed.
CueServer User’s Manual
Cues | 31
Channel Levels
Click on the View Levels buttons to view the channel levels recorded in this cue.
Command String
The cue’s CueScript action may be changed.
After a cue’s details have been modied, click on the Save button to record the changes:
Or, to delete the cue from the Cue List, click on the Delete button:
Creating Loops and Chases
To create a sequence of cues that loop or repeat indenitely (until another event causes a different cue to play), use the Link Cue feature to set the last cue of the sequence to then link back to the rst cue of the sequence. Links can be used anywhere you want to override the normal numerical-order playback of cues.
We’ll create a four step loop in the following example. The rst step is to create four cues (see the section on recording cues):
Each of these cues was assigned a name and a 1 second fade time.
If you start playing back these cues with a “Cue 10 Go” command, Cue 10 will run. With each subsequent Go, Cue 11, then Cue 12, then Cue 13 will run. Issuing additional Go commands after Cue 13 runs will have no effect, as the end of the Cue List was reached.
32 | Cues
CueServer User’s Manual
To create the loop, edit Cue 13 and set it’s Link Cue to point back to Cue 10. The Cue List will now look like this:
Now, when starting with Cue 10, each subsequent Go will cause the cues to play back in the follow­ing order: 10, 11, 12, 13, 10, 11, 12, 13, 10, 11, 12, 13...
Cues may also have an Auto Follow Time set in them. In this case, when a cue is run with a Go command, the playback fader starts its auto-follow timer. When the timer expires, the playback fader issues it own Go so that the next cue in sequence will run automatically. Use auto-follow times to create a sequence of cues that automatically step from one to another, when the rst cue is run, it begins a process where subsequent cues automatically follow after a specied amount of time.
In the following example, we’ll add a follow time of 2 seconds to each of the cues of a loop by editing each cue and entering 2 seconds in the cue’s Follow Time eld:
Now, when Cue 10 is played (by a command like “Cue 10 Go”), the channels in Cue 10 will fade up in 1 second as expected. But, 2 seconds after the cue started running (1 second after the fade completes), the playback fader will issue it’s own Go command, which runs Cue 11 automatically. Then, 2 seconds later, Cue 12 is run. Then Cue 13. Then Cue 10 again (because of the link), etc.
Using cues with follow times allows chases and other automated cue stepping to occur.
CueServer User’s Manual
Cues | 33
34 | Cues
CueServer User’s Manual
Playback Faders
CueServer coordinates all DMX lighting playback through four independent Playback Faders. Each playback fader contains a combination of 512 DMX output channels, cue stack information, timing parameters and mode settings.
Each playback fader can play back either normal or streaming cues. They can also hold static or crossfading channel levels. Each playback fader can be placed in any of three combine modes, Merge, Override or Scale. Individual channels in each playback fader may have separate fade times, may be parked and may be enabled or disabled.
Using the various powerful features of CueServer’s playback faders, CueServer can be used to play back simple cues, or be extended to play shows in multiple zones, provide partitioning features, coordinate automatic backup, enable emergency lighting and more.
Playback Fader Basics
In the simple case, when cues are played back, this occurs in one of the four playback faders. Each fader keeps track of which cue was most recently played and which cue will be next. Each time a Go command is issued for a playback fader, it advances to the next cue. This is very similar to how an entertainment-based lighting console operates.
Because CueServer has four playback faders, this allows the user to have as many as four indepen­dent cues running at the same time.
Cue Playback
To run multiple cues at once, you can issue commands to each playback fader:
Playback 1 Cue 101 Go Playback 2 Cue 201 Go
These commands would tell Playback 1 to load Cue 101 and execute it, then tell Playback 2 to load Cue 201 and execute it.
Later, if you execute a Go command for either of the playbacks, they will advance to the next cue in the cue list:
Playback 1 Go Playback 2 Go
These commands would advance Playback 1 to Cue 102 and Playback 2 to Cue 202.
Each time a cue is executed with the Go command, the associated playback fader loads the cue’s channel levels and begins crossfading to the new scene over the specied fade time.
CueServer User’s Manual
Playback Faders | 35
CueServer’s Console web page displays the current status of each of the four playback faders:
This page shows that following the example above, Cues 101 and 201 have been played in playback faders 1 and 2 and that Cues 102 and 202 are waiting for the next Go command before executing.
If the cues playing in a playback fader have auto-follow times or links, these parameters appear in the fader’s display on the Console page. As cues auto-advance for chases or loops, all of the timing and link information appear as well.
Manual Channels
Not only may each playback fader be used to play cues back, but they can also be used to set and fade manual channel levels.
For example, start with CueServer reset to its default state:
Reset (RESET)
Entering the following commands would set channel levels in multiple playback faders:
Playback 1 (P1) Channel 1>10 @ 50 (C1>10A50) Playback 2 (P2) Channel 5>15 @ 75 (C5>15A75) Playback 3 (P3) Channel 9+10+14>20 @ 66 (C9+10+14>20A66)
36 | Playback Faders
CueServer User’s Manual
Go to the Stage view page to see the result of setting these levels:
Note that by default, each of the playback faders merges its output by using a “highest takes prece­dence” (HTP) mode. This means that for each output channel, the playback fader with the highest level will contribute to the output.
The Stage view color-codes each channel with the matching color for the playback fader that is contributing to the output.
To see which channels are active in each playback, click on the tab buttons for each playback fader:
When the result of each playback is combined via the Merge mode, the channels in Playback 2 set to 75% take precedence over the 66% levels in Playback 3, which take precedence over the 50% levels in Playback 1.
CueServer User’s Manual
Playback Faders | 37
Independent Timing
Each channel in a playback fader may be given independent timing when fading to a new channel level.
First, clear Playback 2 (which also selects Playback 2):
Playback 2 Clear (P2CL)
Then, set several channels to different levels with different fade times:
Time 90 Channel 10 At FL (T90C10AFL) Time 70 Channel 11 At 90 (T70C11A90) Time 50 Channel 12 At 80 (T50C12A80) Time 30 Channel 13 At 70 (T30C13A70) Time 10 Channel 14 At 60 (T10C14A60)
As each command is entered, each channel begins fading toward its destination with a different fade time -- each channel will arrive at its desired level at a different time (which is unlike a regular cue, when all channels arrive at their destination at the same time).
When all of the fades are complete, the Playback 2 stage view should look like this (make sure to click on the P2 button to view only Playback 2 channels):
The Group and Fixture commands (or anything else that can set output levels) may be used in the same way:
Time 15 Group 5 At 75 (T15U5A75) Time 30 Group 6 At 66 (T30U6A66)
For additional exibility, independent timing commands may be placed in Macros or used as command strings placed in cues to produce special timing effects when running a cue.
Split Fade Times
CueServer supports the concept of Split Fade Times. Instead of simply providing a single time during which the fader fades from one scene to another, two times can be provided -- the rst time applies to channel values which are fading up and the second time applies to channel values that are fading down. This can provide an advanced scene transition (popular in traditional stage lighting) that allows the new scene to appear quickly while the old scene fades out more slowly.
38 | Playback Faders
CueServer User’s Manual
To specify a split fade time, use the slash character ‘/’ to separate two different times (the rst for channels fading up and the second for channels fading down):
Time 1.5/3 Channel 1>10 At 50
In the above example, channels 1 through 10 will fade to 50%. Depending on the previous values of each of these ten channels, if a channel was previously lower than 50% (meaning that it will have to fade up to reach 50%), it will do so in 1.5 seconds. If a channel was previously higher than 50% (meaning that it will have to fade down to reach 50%), it will do so in 3 seconds.
Cues may be recorded with split fade times, or they can be used manually with CueScript commands (like the example above).
Disabling Timing
Timing may be temporarily disabled for a playback fader. When timing is disabled, fades no longer occur, auto-follow timers do not run and stream playback is frozen. This function can be useful during programming when one wants to recall a cue that has a long fade time or an auto-follow timer that would otherwise automatically advance to the next cue.
To disable the timing of a playback fader, use the Stop command. To re-enable the timing, use the Start command.
For example:
Playback 1 Stop (P1STO)
or
Playback 2 Start (P2STA)
When a playback fader’s timing is disabled (stopped), it displays this state in the Console page:
If a playback fader’s timing is stopped and a cue is executed, the cue will ignore its programmed fade time. The cue’s channels appear immediately. If the cue has an auto-follow time, that timer is stopped also, which keeps loops and/or chases from running. If the cue is a streaming cue, it will be frozen at the rst frame of playback, waiting for a Start command to resume its timeline.
Alternatively, if timing is enabled and a crossfading cue or streaming cue is currently in the process of playing back and then the Stop command is received during the fade or stream, the fade or stream playback is frozen at its current point in time. The channel levels will remain constant until a Start command is issued, which will resume the fade or stream from its current point in time.
CueServer User’s Manual
Playback Faders | 39
Advanced Playback Features
Each of the playback faders has a robust set of features for customizing how it operates. Each fader can contribute its output by merge, override and scale modes, independent channels may be parked or disabled and more. These features can allow CueServer to be further customized to satisfy a wide variety of complex lighting control projects.
The following diagram shows how each playback fader works internally and how they contribute their parts to the overall DMX output of the CueServer:
Playback 1
Parked
Channel
Filter
Playback Properties:
Playback 2
Parked
Channel
Filter
Playback Properties:
Playback 3
Parked
CueScript Commands
Channel
Filter
Playback Properties:
Cue Database
Channel Values:
Next Cue
Linked Cue Follow Time Auto Follow Timer
Channel Values:
Next Cue
Channel Values:
Next Cue
1
2 3 4 5 6 511510 512
Fade Time Timing Enable
1
2 3 4 5 6 511510 512
Fade Time Timing Enable
1
2 3 4 5 6 511510 512
Fade Time Timing Enable
-
-
Auto Follow TimerLinked Cue Follow Time
-
Auto Follow TimerLinked Cue Follow Time
Crossfade Engine
Crossfade Engine
Crossfade Engine
Channel Enable
Channel Enable
Channel Enable
Filter
Filter
Filter
DMX Input
Source
Combine
Mode:
Merge
Override
Scale
Combine
Mode:
Merge
Override
Scale
Combine
Mode:
Merge
Override
Scale
40 | Playback Faders
Playback 4
Parked
Channel
Filter
Playback Properties:
CueScript Commands
DMX Channel Levels
Channel Values:
Next Cue
1
2 3 4 5 6 511510 512
Fade Time Timing Enable
-
Auto Follow TimerLinked Cue Follow Time
Crossfade Engine
Channel Enable
Filter
Combine
Mode:
Merge
Override
Scale
DMX
Output
CueServer User’s Manual
Note that in CueServer, DMX channel levels ow from CueServer’s DMX Input port through each of the four playback faders in succession and then nally to the DMX Output port. The specic combine mode of each playback fader changes the way that each playback contributes its channel levels to the next playback fader or the overall output of the device.
There are independent channel enabling lters on each channel that can restrict its level from appear­ing at the combine stage for each fader.
Each channel in each fader may be independently parked, which causes incoming commands or cues that would affect parked channels to be discarded, causing those channel levels to become locked at their current value until those channels are unparked.
All of these components of CueServer’s playback engine are described in further detail in the follow­ing sections.
Combine Modes
Each of CueServer’s four playback faders can be assigned to operate in one of three combine modes: Merge, Override or Scale. The combine mode affects how the channels in one playback fader are combined with the ow of DMX levels from one playback to the next and nally to the overall output of the device.
Merge Mode
When a playback fader is in Merge mode (the default mode), then as channel levels ow from one playback fader to the next, each fader’s channels are contributed to the output only if the new level is higher than the previous level. This is very similar to how the “Highest Takes Precedence” (HTP) mode works on many entertainment-class lighting controllers.
A playback fader is placed in Merge mode by executing the Merge command. For example:
Playback 1 Merge (P1ME)
For instance, if the following commands are issued to set levels in the rst three playback faders, then each fader would contribute its levels to the output when its channels contain the highest level of the other playback faders:
Playback 1 Channel 3>6 At 75 (P1C3>6@75) Playback 2 Channel 1>10 At 33 (P2C1>10@33) Playback 3 Channel 5>8 At 50 (P3C5>8@50)
Each of these three playback faders would contain the following channels:
CueServer User’s Manual
Playback Faders | 41
And the combined output of CueServer would look like:
The 75% levels in Playback 1 take precedence over the 50% levels in Playback 3, which take prece­dence over the 33% levels in Playback 2.
Override Mode
When a playback fader is in Override mode, then if the fader contains channels, they supersede any channels coming from previous (lower-numbered) playback faders. Putting a playback fader in Override mode makes that fader work in a priority-based strategy -- channels in higher-numbered playback faders take precedence over lower-numbered playback faders.
A playback fader is placed in Override mode by executing the Override command. For example:
Playback 3 Override (P3OV)
For example, assuming that the rst three playback faders contained the same example levels set in the Merge example above, but Playback 3 is set to Override mode, then the channels that are in Playback 3 will take precedence over the channels in Playback 1 or 2 regardless of their levels.
The resulting output from CueServer would change to:
Notice that the 50% levels for channels 5 and 6 in Playback 3 are overriding the higher levels of 75% in Playback 1.
42 | Playback Faders
CueServer User’s Manual
Scale Mode
When a playback fader is in Scale mode, then each channel in the fader is used to proportionally scale the output levels given to it by the previous (lower-numbered) playback faders. A playback fader in Scale mode works to inhibit or reduce channel levels by a percentage -- a feature that can be used to create inhibitive submasters or a grandmaster for CueServer (concepts used by entertain­ment lighting controllers), or can be used to control the relative intensity of a preset group, zone or room (concepts used by architectural lighting).
A playback fader is placed in Scale mode by executing the Scale command. For example:
Playback 4 Scale (P4SC)
For example, if the output from CueServer initially looks like this (the result of following the last example):
Then, Playback 4 is placed in Scale mode and Channels 1 through 6 are set to 50%.
Playback 4 Scale (P4SC) Channel 1>6 At 50 (C1>6A50)
When viewing the levels in Playback 4, the stage page will reveal that the fader is in scale mode and each of its channels are set to 50%:
But, when looking at the combined output of CueServer, the result of scaling channels 1>6 by 50% shows that the levels being output by Playbacks 1 to 3 are being reduced by 50%:
To eliminate the effects of the scaling in Playback 4, either set the channel levels in Playback 4 back up to 100% (to not scale down by any percent), or release the channels in Playback 4 by executing the Release command.
CueServer User’s Manual
Playback Faders | 43
Playback Submasters
Each playback fader includes a “submaster” that controls the overall intensity level of all channels being output by that playback.
To adjust the submaster level of a playback fader, use the “Playback x At y” commands.
For example, the command “Playback 3 at 75” would set the submaster for Playback 3 to 75%.
When setting the submaster level, the current fade time (as set by the Time command) is used to ramp the submaster level up or down over a period of time.
The Console page shows the current level of the submaster of each playback fader (labelled “Output”):
In this example above, the submaster of Playback 1 is set to 33%.
Channel Enable Filters
The contribution of each channel in each playback fader may be independently enabled or disabled. When a channel is disabled, the playback fader still maintains its level and continues to perform crossfades and other operations on the channel, but the channel does not affect the output of the playback fader, and subsequently it doesn’t appear at CueServer’s output.
To enable or disable one or more channels in a playback fader, use the Enable and Disable commands:
Channel 1 Disable (C1DIS) Channel 10>20 Enable (C10>20ENA)
An Example
The following example will help illustrate how channel disabling works. Start will all playback faders empty. Then, set a few levels:
Playback 1; Channel 1>10 At 50 (P1C1>10A50) Playback 2; Channel 3>8 At 75 (P2C3>8A75)
The combined output of CueServer should look like:
44 | Playback Faders
CueServer User’s Manual
Next, disable channels 5 and 6 in Playback 2 by using the command:
Playback 2; Channel 5+6 Disable (P2C5+6DIS)
After channels 5 and 6 of Playback 2 are disabled, then the 50% levels from Playback 1 are no longer suppressed by the higher levels in Playback 2. The output from CueServer on channels 5 and 6 becomes 50%.
To investigate further, view the contents of Playback 1 and 2:
Note that although Playback 2 contains 75% levels for channels 3 through 8, channels 5 and 6 are greyed-out, showing that they’re currently disabled (not making a contribution to the output).
Set channel 5 to 66%:
Playback 2; Channel 5 At 66 (P2C5+6DIS)
Then, switch back to viewing the stage output:
CueServer User’s Manual
Playback Faders | 45
Nothing has changed on the output, because channels 5 and 6 are still disabled. Then, re-enable channels 5 and 6 by using the Enable command:
Channel 5+6 Enable (C5+6ENA)
Now, see that the output from Playback 2 re-appears at the output with the newly set level:
Uses for Channel Disabling
The following is an example of how channel disabling can be used:
External Console Priority
A project requires that CueServer outputs a light show each evening, but on special nights an external lighting console will be attached to CueServer’s DMX Input jack and CueServer should automatically allow the console to control the lights.
To accomplish this, set the DMX Input Restore trigger (in the System Events page) to disable all channels in Playback 1 (the playback that the CueServer show is running in). Do this with the command “Playback 1 Channel * Disable”. Then, in the DMX Input Loss trigger, use the command “Playback 1 Channel * Enable”.
Now, when an external console is attached, CueServer will automatically disable its internal show’s outputs which will allow the console’s input to pass-through without being modi­ed. Then, when the console’s input is removed, CueServer will automatically switch back to Playback 1 being enabled, which will begin outputting whatever show was silently running in the background.
Channel Parking
Each channel in each of the playback faders may be independently Parked. When a channel is parked, it becomes “frozen” at it’s current output level. Subsequent commands or cues that would normally effect parked channels will have no effect on those channels.
To park one or more channels in a playback fader, use the Park command. To reverse the effect of a parked channel, use the Unpark command.
46 | Playback Faders
CueServer User’s Manual
Parking a channel is different from Disabling a channel, because when a channel is parked, it becomes “stuck” at its current level, while a channel that is disabled stops contributing to the fader’s output levels even though the channel still holds its last level (and can be changed to other levels).
For example, start with CueServer reset to its default state:
Reset (RESET)
Then, set a few channels to a level:
Channel 1>10 @ 10 (C1>10A10)
See the results in the Stage page, using the Playback 1 view:
CueServer User’s Manual
Playback Faders | 47
Next, Park a few channels using the Park command:
Channel 4>7 Park (C4>7PARK)
Note that when viewing a playback fader’s levels in the Stage window, parked channels display in Red text.
Finally, change channel values to test the parked channels:
Channel 1>10 @ FL (C1>10AFL)
Notice that even though a command was executed that attempted to set all channels from 1 through 10 to Full, the parked channels remained at their parked levels. It should be noted that any attempt to change channels 4 through 7 including setting a group, running a static or streaming cue or releas­ing the channels will also have had no effect on their values.
Next, Unpark these channels using the Unpark command:
Channel 4>7 Unpark (C4>7UNPARK)
Note that channels 4 through 7 remain at their previously parked 10% level. Unparking channels does not immediately effect any channel levels -- it just allows subsequent commands that would effect the channels to be able to do so.
48 | Playback Faders
CueServer User’s Manual
Finally, set some new levels for all of the channels to demonstrate that they’re unparked:
Channel 1>10 @ 66 (C1>10A66)
Uses for Channel Parking
The following is an example of how channel parking can be used:
Locking Out Parts Of A Show
A project uses CueServer to control both the water jets and underwater lighting xtures of a water fountain. In certain circumstances, the wind speed is too high to allow the water jets to function, but the light show should continue as normal.
To accomplish this, a contact closure is connected to CueServer that indicates from the wind speed meter that the wind speed is too high. In the contact closure’s settings, the contact is programmed to execute the command “Group 10; Release; Park”. These commands rst select all channels stored in Group 10 (which are the channels that control the water jets), then those channels are released and then they are parked in their released state.
As shows are run throughout the day, all of the unparked channels continue to follow the cues that are executing without the water jets ring.
When the wind speed drops to an acceptable level, the contact opens. The contact is programmed to execute the command “Group 10 Unpark” when the contact opens. This command unparks the channels in Group 10, allowing those channels become part of the show again.
Input Disabling
By default, the DMX Input port receives any DMX levels coming into CueServer and passes them through to the stack of playback faders -- the DMX Input is merged with Playback 1, then this result is merged with Playback 2, then this result is merged with Playback 3, etc.
If the CueServer show wants to obscure any input coming from the DMX Input port, it has only two options. The rst is to set Playback 1 into Override mode, which will cause all of the channels in Playback 1 to override the levels coming in from the DMX Input port. However, in cases where those channels need to be released, or Playback 1 needs to be in Scale more, this option may not accom­plish the desired function.
CueServer User’s Manual
Playback Faders | 49
The second solution is to disable the inuence of the DMX Input on the playback faders. A special command is available to do this:
Input Disable (INDIS)
When the DMX Input port is disabled, it continues to receive DMX Input -- but none of these levels are passed along the chain of playback faders -- and they do not reach the output.
However, when DMX Input is disabled the levels can still be viewed from the Input tab in the Stage view, they will appear on the LCD Display when viewing DMX Input, they will still be recorded when Stream Recording is activated, they still activate DMX Input triggers, and the At Input command will still grab DMX Input levels.
To re-enable the DMX Input inuence on the playback faders, execute the Input Enable command:
Input Enable (INENA)
50 | Playback Faders
CueServer User’s Manual
Triggers
Central to CueServer’s automation capabilities is the concept of a Trigger. A trigger is an object that is created in the CueServer show that responds to an Event. For example, you can create a Button Trigger that responds to events sent by one of the front-panel buttons on the CueServer, or you can create a Timer Trigger that responds to events that are sent by the CueServer’s internal clock.
Each trigger in CueServer can be assigned one or more CueScript commands. This allows you to program the action that will be taken when an event occurs. For example, you might want to program a button to start a show or create a timer that automatically turns off the lights at a specic time.
There are several different types of triggers dened by CueServer. They are:
• Button Triggers
• Contact Closure Triggers
• Timer Triggers
• Timecode Triggers
• DMX Input Triggers
• Network Trafc Triggers
• System Event Triggers
To view or edit any of the triggers for a CueServer show, use the Triggers page:
The following sections describe each of CueServer’s trigger mechanisms in detail.
CueServer User’s Manual
Triggers | 51
Button Triggers
On CueServer models with programmable pushbuttons and/or when using external buttons (such as those connected to a CueStation Network), triggers may be assigned to each button to perform various actions when the button is pressed, released and/or held down.
Buttons can execute CueScript commands or be programmed to directly control a DMX channel or lighting preset, and other functions as well.
To set up button triggers, go to the Triggers > Function Buttons page. This example shows several buttons that have been congured with names, functions and actions:
The following columns are shown in the Function Button list:
Button
This is the button number of each button. Button numbers correspond to which physical button will activate the events for that button.
Name
This is the user-dened name of the button. This eld is for your own descriptive use.
Enabled
This column shows if the button is currently enabled or disabled (using the Enable or Disable commands).
Function
This column shows the button’s function mode.
Action
This column shows a summary of the button’s properties.
To edit a button trigger, click on the number of the button you want to edit.
To add a new button trigger, click on the Add New Button button.
52 | Triggers
CueServer User’s Manual
When adding or editing a button, a page similar to the following will appear:
Each button’s setup page contains elds for setting the button’s number, name, function, and other parameters. Depending on the chosen function, the button parameters will include different choices.
All button denitions have a button number, name and function:
Button Number
Every button denition must have a unique number. There are two ways for button numbers to be specied. Buttons can be numbered from 1 through 512, or buttons can be numbered by a combination of a “station number” and “button number” (separated by a decimal point).
When using the “station.button” method, each “station” has 8 logical buttons assigned to it, so the rst 8 buttons would be referred to as Button 1.1 through 1.8 and then Buttons 9 through 16 would be equivalent to 2.1 through 2.8, Buttons 17 through 24 equivalent to 3.1 through 3.8, and so on.
Any place that a button number is required (on the web page or in a CueScript command), either the simple button number (1 to 512) or the station/button number (1.1 to 64.8) can be used.
On CueServer models with front-panel buttons (such as the CS-800), those buttons activate button events 1 through 8. To create an action for Button 1 on the front-panel, create a button denition with the number 1 (or 1.1).
When using external buttons (such as CueStations), the dip switches on the back of each station assigns the station a “station number”. To make the buttons on a station report to CueServer as Station #3, set the dip switches accordingly. Then, in CueServer, create button denition for buttons 17 through 24 (or, more simply, 3.1 through 3.8).
Button Name
The is the name of the button for your own descriptive use.
CueServer User’s Manual
Triggers | 53
Button Function
This is the function of the button. The following choices are available for button functions:
• CueScript
When this option is selected, the button will execute CueScript commands when the button is pressed and/or released. Use this mode to specify commands (such as “Cue 1 Go”) to be executed when a button is pressed.
• CueScript (State-Driven)
When this option is selected, the button will execute one of two different CueScript com­mands, depending on the state of the button’s LED indicator at the moment the button is pressed by the user. One command is executed when the button’s indicator is off, and another command is executed when the indicator is on. It is up to the programmer to turn on and off the indicator by using the appropriate commands as part of the event actions. Use this mode to implement toggle buttons, radio-style buttons and other similar schemes.
• Toggle Channel
When this option is selected, the button will be set up to automatically toggle a channel on and off to a “memorized” preset level. Options are available for fade times, indicator behavior and a press-hold-cycle feature. Use this mode in a traditional architectural setting to control a “load”.
• Toggle Preset
When this option is selected, the button will be set up to automatically toggle a preset on and off. A preset is specied by both a group of channels and a cue number to hold the preset levels. Options are available for fade times, indicator behavior and a press-hold-record feature. Use this mode in a traditional architectural setting to control a “preset”.
Depending on the Button Function chosen, the properties of the button will be different. The follow­ing sections describe the available properties of each button function.
54 | Triggers
CueServer User’s Manual
CueScript Function
When a button is in “CueScript” mode, it is capable of executing one CueScript statement when the button is pressed and another CueScript statement when the button is released.
This button function is best suited for general-purpose programming of buttons. A button can be instructed to perform any action (or combination of actions) that CueServer can perform by using CueScript statements.
The screen similar to the following appears while editing a CueScript button:
Press Button Action
This eld allows you to enter the CueScript statement that should be executed when the user presses the button.
Release Button Action
This eld allows you to enter the CueScript statement that should be executed when the user releases the button.
CueServer User’s Manual
Triggers | 55
CueScript (State-Driven) Function
When a button is in “CueScript (State-Driven)” mode, it is capable of executing one CueScript state­ment when the button is pressed while the button’s LED indicator is off, and another CueScript statement when the button is pressed while the button’s LED indicator is on.
This button function is best suited for situations where the state of the button’s LED should dictate what action the button should take. This mode makes it easy to implement toggle buttons and radio-style groups of buttons.
It is important to note that when using this mode, you must manually maintain the state of the but­ton’s LED. This means that when your user presses the button, you should turn “on” the button’s LED so that the next time the user presses the button, the other button action will be taken. Use the Button command to turn on or off the button’s LED.
The screen similar to the following appears while editing a State-Driven CueScript button:
Indicator Off Action
This eld allows you to enter the CueScript statement that should be executed when the user presses the button while the button’s LED is off.
Indicator On Action
This eld allows you to enter the CueScript statement that should be executed when the user releases the button while the button’s LED is on.
56 | Triggers
CueServer User’s Manual
Toggle Channel Function
When a button is in “Toggle Channel” mode, it is programmed to toggle a single channel on and off to a memorized brightness level. Options are available for fade times, press-hold-cycle, saving the new level and indicator behavior.
This button function is designed for use in traditional architectural control applications where a button may be set up to turn on and off a “load”.
The screen similar to the following appears while editing a Toggle Channel button:
Channel
This is the channel number of the channel that should be controlled by this button.
Level
This is the brightness level that the channel should be set to when the button “turns on” the load.
Fade Time
This is the fade time (or split fade time) used to fade up or down the channel when it is being turned on or off.
Hold to Cycle
This check box enables the press-hold-cycle feature. If enabled, when the user presses and holds the button, the channel will slowly ramp up or down, allowing the user to release the button when the desired light level is reached.
CueServer User’s Manual
Triggers | 57
Save Level
This check box enables the save level feature. If enabled, when the user adjusts the light level using the press-hold-cycle feature (above), the new light level will be saved (memorized) for toggling the channel on and off.
Indicator Function
This pop-up menu selects what automatic function the button’s LED indicator will have. Available options include turning the indicator on when the channel (load) is non-zero, at the memorized level, at 100% and more.
Indicator On Color
This check box and eld allows this button to have a different “on color” than the default on color. Enable the check box to override the default and enter the number of the color/ash­pattern for the indicator to use in it’s on state.
Indicator Off Color
This check box and eld allows this button to have a different “off color” than the default off color. Enable the check box to override the default and enter the number of the color/ash­pattern for the indicator to use in it’s off state.
58 | Triggers
CueServer User’s Manual
Toggle Preset Function
When a button is in “Toggle Preset” mode, it is programmed to toggle a group of channels on and off to a preset lighting look. Options are available for fade times, press-hold-record, and indicator behavior.
This button function is designed for use in traditional architectural control applications where a button may be set up to turn on and off a “preset”.
The screen similar to the following appears while editing a Toggle Preset button:
Preset (Cue)
This is the number of the Cue that will hold the preset’s channel levels. When this preset is activated, the channel levels in the specied cue will be recalled.
Zone (Group)
This is the number of the Group that species which channels are included in this preset. When this preset is activated, only the channels in this group will be affected. Specify 0 (zero) to have the preset recall all channels from the preset cue.
Fade Time
This is the fade time (or split fade time) used to fade up or down the preset when it is being turned on or off.
Hold to Record
This check box enables the press-hold-record feature. If enabled, when the user presses and holds the button for 5 seconds, the preset will be re-recorded, using the current levels of all of the channels in the preset.
CueServer User’s Manual
Triggers | 59
Indicator Function
This pop-up menu selects what automatic function the button’s LED indicator will have. Available options include turning the indicator on when the preset is active or not-active.
Indicator On Color
This check box and eld allows this button to have a different “on color” than the default on color. Enable the check box to override the default and enter the number of the color/ash­pattern for the indicator to use in it’s on state.
Indicator Off Color
This check box and eld allows this button to have a different “off color” than the default off color. Enable the check box to override the default and enter the number of the color/ash­pattern for the indicator to use in it’s off state.
60 | Triggers
CueServer User’s Manual
Contact Closure Triggers
On CueServer models with contact-closure inputs, triggers may be assigned to each contact-closure input to perform various actions when the contact is closed, opened and/or maintained.
Contact closures can execute CueScript commands or be programmed to directly control a DMX channel or lighting preset, and other functions as well.
To set up contact-closure triggers, go to the Triggers > Contact Closures page.
Contact closures in CueServer have the same general functions and programming model as the Function Buttons. Please see the previous section on Function Buttons for detailed explanation of the various screens, functions and properties available to contact closures.
CueServer User’s Manual
Triggers | 61
Timer Event Triggers
CueServer contains an extensive timer/calendar system. Timers can be programmed that react to the time of the day, day of the week, day of the year, relative to calculated sunrise and sunset times (astronomical time) or any combination of these. When a timer event occurs, CueServer can run any CueScript commands you assign to the trigger.
To view the list of Timer Events that are programmed into CueServer, view the Timer List page in the Triggers section. A page similar to the following will appear:
In this example, several timers have already been set up with names, days of the week, times and CueScript actions.
To add a new Timer Event, click on the Add New Timer Event button.
To edit an existing Timer Event, click on the number of the timer event.
In both cases, a page similar to the following will appear:
62 | Triggers
CueServer User’s Manual
In this example, the timer has already been congured to operate on weekdays from Monday through Thursday at 10:00AM. When the timer is triggered, it will execute Macro 1.
Each of the Timer Trigger’s elds are described below:
Timer Name
The is the name of the timer event for your own descriptive use.
Days of the Week
This eld allows each of the seven days of the week to be included or excluded from this timer’s schedule. To have a timer operate every day, check all of the check boxes. A timer will not operate at all if none of the check boxes are checked.
Specic Days
This eld allows a specic day or range of days to be included in the requirements for this timer’s schedule. If the check box is checked, then the timer will only trigger if the current day is within the range of days specied.
Specic Time
When this eld’s radio button is selected, the timer will trigger at a specic time of the day.
Relative Time
When this eld’s radio button is selected, the timer will trigger at a time of the day, relative to the calculated Sunrise or Sunset time plus or minus an offset. For example, you can specify that the timer operate at Sunet + 15 minutes, or Sunrise - 30 minutes, etc.
Command String
This eld holds the CueScript commands that will be executed when the timer event is triggered.
CueServer User’s Manual
Triggers | 63
Timecode Triggers
CueServer can trigger events based on specic timecode markers. The CueServer Pro can receive and respond to MIDI Timecode (MTC) or SMPTE Timecode (by using a simple SMPTE to MTC con­verter, such as the JL Cooper PPS-2).
To view the list of Timecode Events that are programmed into CueServer, view the Timecode Event List in the Triggers page. A page similar to the following will appear (this example includes already dened timecode events):
To add a new Timecode Event, click on the Add New Timer Event button.
To edit an existing Timecode Event, click on the number of the timecode event.
In both cases, a page similar to the following will appear:
In this example, the timecode event has already been congured to trigger at time 00:01:53:23, and it will run Cue 102.1 and also turn on digital output 1.
64 | Triggers
CueServer User’s Manual
Each of the Timecode Event’s elds are described below:
Timecode
This is the timecode at which the event will trigger. The time is expressed in Hours, Minutes, Seconds and Frames.
Event Name
The is the name of the timer event for your own descriptive use.
Command String
This eld holds the CueScript commands that will be executed when the timecode event is triggered.
Timecode Playback
When CueServer begins receiving timecode from an external source (SMPTE or MTC), CueServer will automatically trigger events that appear in the Timecode Triggers list. No additional work or congu­ration is necessary.
Internal Timecode Generation
CueServer can generate it’s own timecode clock by using the SMPTE CueScript commands. Using this set of commands, the timecode clock can be reset, started, stopped, cleared and set to an arbitrary time position. See the SMPTE command in the CueScript Commands chapter for details.
CueServer User’s Manual
Triggers | 65
DMX Input Triggers
CueServer can trigger events or perform actions based on DMX Input channels.
One of two types of DMX Input triggering can be chosen for each channel:
• Event Range
CueScript commands can be triggered when any DMX input channel either enters or exits a range of input values. Multiple event ranges can be set for each channel.
• Submaster Control
A DMX Input channel can be assigned to directly control the submaster level of a playback fader.
To view the list of DMX Input Trigger that are programmed into CueServer, view the DMX Input Triggers in the Triggers page. A page similar to the following will appear (this example includes already dened DMX Input triggers):
To add a new DMX Input Trigger, click on the Add New DMX Input Trigger button.
To edit an existing DMX Input Trigger, click on the number of the trigger.
In both cases, pages similar to the following will appear.
66 | Triggers
CueServer User’s Manual
Event Ranges
When a DMX Input trigger is set to execute CueScript commands based on entering or exiting a range of DMX channel values, the trigger’s page appears like this:
In this example, the DMX Input trigger has been congured to watch DMX Input channel 1 and when it rises to between 128 and 255 (in decimal), it will run Cue 101 on Playback 1. When channel 1 falls to below 128, it will clear Playback 1.
Each of the DMX Input Trigger’s elds are described below:
Event Name
The is the name of the timer event for your own descriptive use.
Channel
This is the DMX Input channel that the trigger will watch.
Function
This pop-up menu chooses the trigger type. In this case it is “Event Range”.
Value Range
This is the range of values that the trigger will be watching for. Values are expressed in decimal numbers, from 0 to 255.
Enter Range Command
This eld holds the CueScript commands that will be executed when the DMX Input on the specied channel enters the specied range of values.
Command String
This eld holds the CueScript commands that will be executed when the DMX Input on the specied channel exits the specied range of values.
CueServer User’s Manual
Triggers | 67
Submaster Control
When a DMX Input trigger is set to control the submaster level of a playback fader, the trigger’s page appears like this:
In this example, the DMX Input trigger has been congured to take the input level of Channel 500 and use it to automatically adjust the submaster level of Playback 1.
Each of the DMX Input Trigger’s elds are described below:
Event Name
The is the name of the timer event for your own descriptive use.
Channel
This is the DMX Input channel that the trigger will watch.
Function
This pop-up menu chooses the trigger type. In this case it is “Playback Submaster Control”.
Playback Fader
This pop-up menu selects which playback fader is being controlled by this trigger event.
68 | Triggers
CueServer User’s Manual
System Event Triggers
CueServer has several system events that can be used to trigger various actions. These events include:
• System Startup
• DMX Input Restore
• DMX Input Loss
To display the list of System Event Triggers dened for the current show, view the System Events page in the Triggers page. A page similar to the following will appear (this example includes already dened event actions):
In this example, the CueServer has been congured to execute Macro 1 and to begin running Cue 101 when the CueServer is turned on.
Also, if a DMX Input source is attached to CueServer, it will disable the inuence of all channels on the output, which will allow the DMX Input to pass through to the DMX Output unchanged. Likewise, if the DMX Input source is removed, all channels will be re-enabled, allowing the show sequence started by Cue 101 to resume normal output.
CueServer User’s Manual
Triggers | 69
Each of the System Event elds are described below:
Startup Command
This eld holds the CueScript commands that will be executed when the CueServer starts up. A start up is whenever the CueServer is powered on, reboots, or when a new show le is loaded into CueServer’s memory.
DMX Input Restore Command
This eld holds the CueScript commands that will be executed when a DMX Input source is attached to the CueServer. This command will execute after the Startup Command if DMX Input was present at the time the CueServer starts up.
DMX Input Loss Command
This eld holds the CueScript commands that will be executed whenever a DMX Input signal was being received but then it is lost or disconnected.
70 | Triggers
CueServer User’s Manual
CueScript Command Language
CueServer uses a command language called CueScript as the basis of nearly all of CueServer’s auto­mation capabilities. Using CueScript, advanced logic can be added to a CueServer show enabling the system programmer to orchestrate lighting cues with button presses, contact closure inputs, communication via the serial port and/or Ethernet port, digital outputs, prompts on the LCD display, MIDI commands, and much more.
Using CueScript
Executing Commands
On many of CueServer’s interactive web-pages a command line appears at the bottom of the page. Enter in a CueScript command (like “Channel 5 at 33%” or “Record Cue 7”) and CueServer performs the requested task.
Although many of CueServer’s web pages provide web buttons that perform tasks like setting and releasing DMX channels, changing playback faders and recording cues -- all of these tasks and more can be performed by entering CueScript commands on the command line.
CueScript commands can also be sent to CueServer via Ethernet, the serial port and MIDI Input port, allowing external devices to be able to remotely control CueServer. Additionally, custom web pages can be authored with HTML or Flash to create fully custom front-ends (like an interactive touchscreen interface) for CueServer by sending CueScript commands from a remote web browser window.
Automation with Events and Actions
CueServer denes a wide array of events that occur when certain actions occur within the system, such as cues executing, buttons being pressed, contacts being closed, a specic time of the day occurs, timecode markers pass, a sunrise or sunset occurs and much more.
Each of these events can be given an action. An action is a series of one or more CueScript state­ments that cause CueServer to perform a task. CueServer can be told to execute a cue, set lighting levels, illuminate an LED indicator on a button, close a relay, send a serial or MIDI message, custom­ize the labels on the LCD display and more.
The ability to assign any arbitrary action to a wide variety of system-dened events makes CueServer extremely powerful and exible. CueServer can execute very simple shows without much automa­tion, but it’s the event/action model that allows the system programmer to fully customize CueServer for a particular application - as simple or complex as necessary.
CueServer User’s Manual
CueScript Command Language | 71
CueScript Basics
CueScript is a language that is designed to be easy to understand and efcient for speedy typing and/or transmission. A system programmer will typically use CueScript while interacting with CueServer and will write CueScript statements to provide automation actions for special CueServer events.
Command Syntax
To make it easy to understand, CueScript uses simple human readable nouns, verbs and objects. These pieces are put together into commands such as “Time 5”, which sets the current fade-time to 5 seconds.
Multiple commands can be strung together to make more complex requests. For example, to change the fade time and set a DMX channel to 50% at the same time, the command “Time 5; Channel 3 at 50” is used. Note that a semicolon (;) was used to separate the two commands. Using semicolons are recommended to make multi-command CueScript statements more readable, but they are entirely optional.
White spaces in a command (spaces, tabs, etc.) are ignored by CueServer and are used to simply make the commands more readable. The command from above may be rewritten without spaces like “Time5;Channel3at50
Also, to make CueScript more efcient to type and/or send, most CueScript command words may be abbreviated. For example, the Time command may be abbreviated as just “T” since no other command starts with the letter T. For example, the previous example may be abbreviated as “T5;C3A50”.
Only a few commands can be abbreviated as a single letter. For instance, the Cue command shares the same rst letter as the Channel command. As documented in the descriptions of each of these commands, the shortest abbreviation for Channel is “C”, but the shortest abbreviation for Cue is “Cu”. However, some commands also have aliases – the Cue command can also be invoked by the single letter “Q”. The command “Cue 1 Go” may be abbreviated as “Q1G”.
Command Context
CueServer keeps track of the “context” of the currently executing string of CueScript commands, which allows multiple commands which operate on a single object to be split into separate requests.
When the user types “Channel 1 At 100”, the user is actually executing two separate commands. The rst command, “Channel 1” tells CueServer to select DMX channel 1. The second command, “At 100” tells CueServer to set the currently selected objects (DMX channel 1) to 100%.
The selected objects (in this case, DMX channel 1) is part of the saved command context.
72 | CueScript Command Language
CueServer User’s Manual
If the user then enters the command “At 75”, CueServer still has DMX channel 1 selected, so channel 1 will be set to 75%.
The command context stores the selected objects (channels, buttons, outputs, etc.), which playback fader is chosen, timing parameters such as fade and follow times and more.
The command contexts for the interactive web pages, the execution of event actions and the execu­tion of CueScript commands coming in from the serial port, Ethernet and MIDI are all kept separate, allowing several concurrent actions to be running at the same time without interfering with each other.
Levels
The AT command and several other objects (like arrays) set levels. Levels are an expression of a quantity from lowest possible value (zero) to highest possible value (full). CueServer allows levels to be expressed in three primary ways, by percentage (the default), or by decimal or hexadecimal notation.
Percentage
By default, when setting DMX channel values, levels are specied by percentage numbers (0, 1, 2, ... 98, 99, 100).
For example, to turn a channel completely off, the command “Channel 1 At 0” may be used. To turn a channel completely on, the command “Channel 1 At 100” may be used. Any percentage number in-between 0 and 100 can set a channel to the corresponding level.
For convenience, a percent sign (%) may be added to the number for clarity. For example, “Channel 1 At 50%”. Using the percent sign is optional.
Also for convenience, when specifying a level of 100%, either a value of “100” can be entered or “FL” can be used (meaning “Full”).
Decimal
In some instances, it may be appropriate to use decimal numbers to set DMX channel values (such as when setting levels for moving lights, matching colors or adjusting a level more precisely than percentage levels allow).
Decimal numbers use values from 0 to 255 to specify the range from zero to full.
To use decimal numbers while specifying levels, use a pound sign before the level. For example, “Channel 1 At #253”.
Decimal numbers may be used in arrays, such as “Fixture 1 At {#255, #192, #134}”.
CueServer User’s Manual
CueScript Command Language | 73
Hexadecimal
In some instances, it may be appropriate to use hexadecimal numbers to set DMX channel values (such as when setting levels for moving lights, matching colors or adjusting a level more precisely than percentage levels allow).
Hexadecimal numbers use digits 0 through 9 and A through F and values from 00 to FF to specify the complete range from zero to full.
To use hexadecimal numbers while specifying levels, use a dollar sign before the level. For example, “Channel 1 At $A5”.
Hexadecimal numbers may be used in arrays, such as “Fixture 1 At {$FF, $C0, $86}”.
Note that when specifying hexadecimal numbers to CueServer, always use 2 digits. For example, use $00, $01, $02, not $0, $1, $2, for the single-digit hexadecimal values.
Binary (On/Off)
Some devices being controlled by CueServer only have two states, on and off. In order to simplify their operation, the CueScript language has two extra values named On and Off. These are used as a convenience to mean the same as 0% and 100%.
Any place that a percentage value can be used in a command, the On and Off commands can be used instead. For example, “Channel 1 On”, “Button 2 Off”, “Group 3 On”, “Fixture 4+5 Off”, “Output * On” are all valid binary-value commands.
74 | CueScript Command Language
CueServer User’s Manual
Variables
The CueScript language supports user-dened variables in commands. A variable is temporary placeholder for information. Each variable is referenced by name and the variable contains a value. Commands can assign values to variables and then variables can be used in commands where the value of the variable is substituted in place of the variable name.
For example, a variable could be used to hold the desired level of a lighting channel. Each night at sunset a timer executes which sets the level of the channel to the value of the variable. By changing the value of the variable, the channel will be set to a different level each night.
Variables can have any name, as long as the name is made up of only letters and numbers. For example, possible variable names include “x”, “MyVariable” and “Thing123”. Spaces and punctua­tion characters are not valid in variable names.
The following sections describe in detail how variables are used.
Assigning and Using Variables
In CueScript, variables are assigned values by using the following syntax:
“MyNumber” = 35
“MyCommand” = “Cue 1 Go”
“Orange” = “{FL, 50, 0}”
“Greeting” = “Hello”
Variables can be assigned virtually any value, either a number or an arbitrary string of characters. Use quotes around values, except that quotes are optional when assigning a simple numerical value.
After a variable has been assigned a value, that variable can be used in any CueScript command. When a variable appears in a command (surrounded by double-curly-braces), that variable’s current value is substituted in place of the variable.
For example: Is equivalent to:
Channel 1 At {{MyNumber}} Channel 1 At 35
Playback 1; {{MyCommand}} Playback 1; Cue 1 Go
Fixture 1 At {{Orange}} Fixture 1 At {FL, 50, 0}
“{{Greeting}}”~0 “Hello”~0
Variables are not case sensitive. This means that the variable Orange is the same as ORANGE, orange, and oRaNgE.
CueServer User’s Manual
CueScript Command Language | 75
Variable names are limited to a maximum of 31 characters. Variable values are limited to a maximum of 47 characters. Longer names and/or values will be cut off (truncated) when the maximum space has been exceeded.
Note that when a CueScript command contains one or more references to variables (such as {{Greeting}}), all of the variable references are replaced with their values before the command is executed. This means that if a single CueScript command string tries to assign a variable and then use it in the same command, the variable reference will use the previous value of the variable.
System Variables
There are several built-in “system variables” that affect the CueServer hardware or internal part of the CueServer operating system. All of these variables start with the underscore character ( _ ). Take care not to dene your own variables that start with an underscore, as they might conict with a system variable.
For example, the brightness of the LCD backlight can be adjusted by using the “_backlight” variable:
“_backlight” = 25
This command sets the brightness of the LCD Display (on the CueServer Pro only) backlight to 25%.
See the Appendix on System Variables for a complete listing of user accessible system variables.
System Functions
There are several built-in “system functions” that can be used to generate a value or return the oper­ating condition of part of the CueServer. All of these functions start with the underscore character ( _ ). Take care not to dene your own variables that start with an underscore, as they might conict with a system function.
For example, the a system function is available that can generate a random number. This function is accessed by using the “_rand” function:
Cue {{_rand(1,10)}} Go
This instance of the _rand function is replaced with a random number from 1 through 10, creating a statement “Cue x Go”, where x is the randomly chosen number.
See the Appendix on System Functions for a complete listing of available system functions.
76 | CueScript Command Language
CueServer User’s Manual
CueScript Commands
At
Syntax: At (level)
Abbreviation: A or @
Description: Sets the level of the selected object(s). Use the At command to set lighting levels,
output states, button LEDs, etc. At can work on one or more selected objects at a time. At can set all selected objects to the same value or it can use an array of values (see the next section about the At command with array values).
Examples: At 33
Sets the level of whatever object(s) (channels, buttons, outputs, etc.) are selected to 33%.
Channel 7 At 50
Selects channel 7 and sets it to 50%
Channel 21>30 At FL
Selects channels 21 through 30 and sets them to 100%
Channel 2 At #255
Selects channel 2 and sets it to decimal value 255
Channel 3 At $E3
Selects channel 3 and sets it to hexadecimal value $E3
Group 31 At 80
Selects the channels in Group 31 and sets them to 80%
Fixture 2 At 85
Selects the channels for Fixture 2 and sets them to 85%
Button 1>4 At 1
Selects the LEDs for buttons 1 through 4 and turns them on
Output 1+8 At 0
Selects the digital outputs 1 and 8 and turns them off
C1AFL
Abbreviation for Channel 1 At FL
C1@50
Abbreviation for Channel 1 At 50%
CueServer User’s Manual
CueScript Command Language | 77
At (with array value)
Syntax: At (array)
Abbreviation: A or @
Description: Like the normal form of the At command, but an uses an array of values instead of
a single value. Each value in the array is used to set the value of sequential objects. If more objects are selected than values are listed in the array, then the array values repeat.
Examples: Channel 1>3 At {25, 50, 75}
Selects channels 1 through 3 and sets them to 25, 50 and 75% respectively
Fixture 1 At {33, 50, 66}
Selects the channels of Fixture 1 and sets them to 33, 50 and 66% respectively
Channel 1>10 At {0, 100}
Selects channels 1 through 10 and sets them to 0, 100, 0, 100, 0, 100, 0, 100, 0 and 100% respectively
Channel 1+2 At {1, 2, 3, 4, 5}
Selects channels 1 and 2 and sets them to 1 and 2% respectively
Channel 1>5 At {$80, #255}
Selects channels 1 through 5 and sets them to hexadecimal $80 and decimal 255, repeating respectively
Button 1>8 At {0, 1}
Selects buttons 1 through 8 and sets the odd buttons off and the even buttons on
F1@{100,50,0}
Abbreviation for Fixture 1 at {100, 50, 0}
78 | CueScript Command Language
CueServer User’s Manual
At (with relative value)
Syntax: At [+/-] (level)
Abbreviation: A or @
Description: Similar to the normal form of the At command, but uses a relative offset value
instead of an absolute value to set a DMX channel to. Use the At +/- command to increase or decrease the level of a DMX channel in increments. Although the At +/- command defaults to using percentage values, either decimal or hexadeci­mal values may also be used with # and $ operators.
Note that when adding or subtracting an offset to selected DMX channels, values do not wrap from Full to Zero or vice versa. For example, if a channel was at 95% and the command At + 10 was given, the new value would be pinned to 100% (Full).
Also note that relative offsets work with the current fade time. For example, when adding 10% to a selected channel, the new value would normally appear imme­diately, unless the fade time was set to a longer duration. In this case, the result would be a fade to the new offset value.
Examples: Channel 1 At + 10
Selects DMX channel 1 and sets its level to 10% higher than it was previously
Channel 10>20 At - 10
Selects channels 10 through 20 and sets their levels to 10% lower than they were previously
Channel 1 At + #10
Selects channel 1 and sets its level to decimal 1 higher than it was previously
Channel 1 At - $1A
Selects channel 1 and sets its level to hexadecimal $1A lower than it was previously
Time 5; Channel 1 At + 10
Sets the fade time to 5 seconds, then selects channel 1 and begins a fade to a value 10% higher than it was previously
At + 5
Adds 5% to the currently selected DMX channels (without changing the selection)
C1A+5
Abbreviation for Channel 1 At + 5
CueServer User’s Manual
CueScript Command Language | 79
At Cue
Syntax: At Cue (cue number)
At Cue (cue number) [ / (level) ]
Abbreviation: AQ or @Q
Description: Similar to the normal form of the At command, but recalls the levels stored in a cue
to assign to the currently selected channels (or buttons, outputs, etc.). Use the At Cue command to recall parts of a pre-recorded look (similarly to how Palettes are used on many lighting consoles, or how Presets are used in architectural control systems). Each selected channel (or button, output, etc.) receives its value from the corresponding (same numbered) channel in the specied cue.
Optionally, a level can be specied (by appending a slash / and a level to the end of the cue number) that will be used to scale the retrieved levels from the cue. For example, to recall levels at 50% of those stored in Cue 1, the command “Group 2 At Cue 1/50” can be used.
Examples: Channel 5 At Cue 1
Selects channel 5 and assigns it to the value of channel 5 as recorded in cue 1
Channel 1>10 At Cue 1
Selects channels 1 through 10 and assigns them to the values of channels 1 through 10 as recorded in cue 1
Fixture 3 At Cue 1
Selects the channels contained in xture 3 and assigns them to the same channel numbers’ values as recorded in cue 1
Group 4 At Cue 1
Selects the channels in group 4 and assigns them to the same channel numbers’ values as recorded in cue 1
Button 1 At Cue 2
Selects button 1 and assigns it to the value of channel 1 as recorded in cue 2
Output 1 At Cue 2
Selects output 1 and assigns it to the value of channel 1 as recorded in cue 2
Group 2 At Cue 1/50
Selects the channels in group 2 and assigns them to values 50% of the original brightness as recorded in cue 1.
C1@Q1
Abbreviation for Channel 1 At Cue 1
F1>5AQ1
Abbreviation for Fixture 1 > 5 At Cue 1
80 | CueScript Command Language
CueServer User’s Manual
At Input
Syntax: At Input
Abbreviation: AIN or @IN
Description: Similar to the normal form of the At command, but recalls channel levels that are
currently present on the DMX Input jack. Use the At Input command to grab or take a snapshot of the DMX Input and store those values into the currently selected playback fader.
The At Input command is useful for capturing the current look (or part of the current look) from the DMX Input port. For example, if Playback 1 is in override mode or the DMX Input port is disabled (see the Input Disable command), then the DMX Input would not be visible at the CueServer’s output. Then, if the command “Channel * At Input” is issued, then CueServer would select all channels of Playback 1 and set their levels to the levels currently present at the DMX Input port. This would produce a “snapshot” of the scene being inputted by the external controller. Additionally, a fade time could be set, which would perform the same function, but slowly fade to the snapshot scene.
Another example of the At Input command would be to place a command like “Playback 1 Channel 1>512 At Input” in the DMX Input Loss event. In this case, whenever the CueServer stops receiving DMX, it will copy the last seen DMX Input levels into Playback 1, which will have the effect of “holding” the last scene sent by the external console.
Examples: Channel 1>512 At Input
Selects all channels of the current playback fader and sets their levels to the current levels at the DMX Input port
Time 5; Channel * At Input
Sets the fade time to 5 seconds, selects all channels in the current playback fader and then fades to the levels currently available at the DMX Input port
Playback 2 Channel 24 At Input
Sets channel 24 of the Playback 2 to the current input level of channel 24 on the DMX Input port
Group 3 At Input
Selects the channels in Group 3 and sets them to the levels currently available at the DMX Input port
F7AIN
Abbreviation for Fixture 7 At Input
CueServer User’s Manual
CueScript Command Language | 81
At Playback
Syntax: At Playback (playback number)
Abbreviation: AP or @P
Description: Similar to the normal form of the At command, but recalls channel levels that
are currently present in one of the four playback faders. Use the At Playback command to grab or take a snapshot of one of the playback faders and store those values into the currently selected playback fader.
The At Playback command is useful for capturing the current look (or part of the current look) from one of the playback faders. For example, if Playback 1 contains lighting levels and you want to copy them to Playback 4, the command “Playback 4 Channel 1>20 At Playback 1” can be executed.
Examples: Channel 1>512 At Playback 3
Selects all channels of the current playback fader and sets their levels to the levels currently in Playback 3
Time 5; Channel * At Playback 2
Sets the fade time to 5 seconds, selects all channels in the current playback fader and then fades to the levels currently in Playback 2
Playback 2 Channel 24 At Playback 1
Sets channel 24 of the Playback 2 to the current input level of channel 24 in Playback 1
Fixture 5 At Playback 4
Selects the channels in Fixture 5 and sets them to the levels of Fixture 5 in Playback 4
U9AP1
Abbreviation for Group 9 At Playback 1
82 | CueScript Command Language
CueServer User’s Manual
Break
Syntax: Break
Abbreviation: BR
Description: Stops executing the current command string. Any commands that appear after the
Break command will not be executed.
The Break command is useful for dynamically inserting into a command with a variable. For example, a Timer Event’s action may be specied as “{{MyEnable}} Cue 1 Go”. If the variable MyEnable is empty when the timer is triggered, then Cue 1 will begin running. If the variable is assigned the value “Break”, then when the timer is triggered, the cue will not run.
Examples: Output 1 On Break Output 2 On
Turns on Output 1, the rest of the command line is not executed
{{MyEnable}} Macro 1
Will run Macro 1 if MyEnable variable is empty, will not run Macro 1 if MyEnable variable contains “Break”
Channel 1 At FL {{DoLED}} Button 1 On
Sets Channel 1 to Full, also illuminates Button 1’s indicator LED if the DoLED variable is empty, doesn’t turn on the LED if the DoLED variable contains “Break”.
CueServer User’s Manual
CueScript Command Language | 83
Button
Syntax: Button (range)
Abbreviation: B
Description: Selects one or more function buttons (the pushbuttons on the front of the CS-800,
or connected CueStation buttons). Use the Button command to select which buttons will have their LED indicator level set or change enable states, etc.
When specifying button numbers, one of two different methods can be used. Buttons are naturally numbered from 1 to 512. Alternatively, buttons can be referred to by a combination of station number and button number. In the latter method, the station and button numbers are separated by a decimal point. Each station is assumed to have 8 buttons, so Buttons 1 to 8 can be specied as 1.1 to
1.8. Buttons 9 to 16 are equivalent to 2.1 to 2.8. Buttons 17 to 24 are equivalent to 3.1 to 3.8, and so on. When working with many external button stations, this numbering scheme may be easier to work with.
Examples: Button 1
Selects button 1
Button 1 At FL
Selects button 1 and turns its LED indicator on
Button 1>5 On
Selects buttons 1 through 5 and turns their LED indicators on
Button * At 0
Selects all buttons and turns their LED indicators off
Button 3.4 Off
Selects button 20 (the 4th button on station 3) and turns its LED indicator off
Button 2.8 At #235
Selects button 16 (the 8th button on station 2) and sets its LED indicator value to decimal value 235, which on button station hardware that supports RGB indictors displays as a Fast Flashing Magenta.
Button 2 Enable
Selects button 2 and enables its action
Button 3+4 Disable
Selects buttons 3 and 4 and disables their actions
B1@1
Abbreviation for Button 1 At 1
B2ENA
Abbreviation for Button 2 Enable
84 | CueScript Command Language
CueServer User’s Manual
Note: The LED indicators on buttons can be set to any value from 0 to 100% (or 0 to 255 in
decimal). Several special values cause the LEDs to blink in different patterns, and on hardware that supports RGB indicators, the values between 0 and 255 select different combinations of color, intensity and ashing pattern. The following table shows the basic values used for selecting ash patterns on single-color LED indicators:
• Value 0 = OFF
• Value 5 = Fast Flash, Reverse
• Value 1 = ON
• Value 2 = Slow Flash
• Value 3 = Slow Flash, Reverse
• Value 6 = Wink
• Value 7 = Wink, Reverse
• Value 8 to 100 = ON
• Value 4 = Fast Flash
See the documentation for the RGB button stations for a listing of decimal values (0 to
255) and what colors, intensity and ashing patterns they correspond to.
CueServer User’s Manual
CueScript Command Language | 85
Channel
Syntax: Channel (range)
Abbreviation: C
Description: Selects one or more DMX Channels. Use the Channel command to select which
DMX channels will be used to set levels, be released, be recorded into a group or cue and more.
Examples: Channel 1 At 100
Selects channel 1 and sets it to 100%
Channel 1>5 At 75
Selects channels 1 through 5 and sets them to 75%
Channel 3+5+7 At 50
Selects channels 3, 5 and 7 and sets them to 50%
Channel * At FL
Selects ALL 512 channels and sets their levels to 100% (Full)
Channel 5 Release
Selects channel 5 and releases it
Channel 1>10; Record Group 1
Selects channels 1 through 10 and records the selected channels into Group 1
Channel 1>10; Record Cue $5
Selects channels 1 through 10 and records only the selected channels into Cue 5
C1AFL
Abbreviation for Channel 1 at Full
C1>10@50
Abbreviation for Channel 1 through 10 at 50%
86 | CueScript Command Language
CueServer User’s Manual
Clear
Syntax: Clear
Abbreviation: CL
Description: Clears the selected playback fader. All of the fader’s channels are released (except
for parked channels), and the fade time, follow time, link cue and next cue are all cleared.
See also the Release command to selectively release only specic channels and see also the Reset command, which entirely resets all playback faders and the command interpreter.
Examples: Clear
Clears the currently selected playback fader
Playback 2 Clear
Selects Playback Fader 2 and clears it
P3CL
Abbreviation for Playback 3 Clear
Contact
Syntax: Contact (range)
Abbreviation: Co
Description: Selects one or more of the contact closure inputs. Use the Contact command to
select which contacts will be enabled or disabled. See the Enable and Disable commands for additional information.
Examples: Contact 1
Selects contact 1
Contact 2 Enable
Selects contact 2 and enables its action
Contact 3+4 Disable
Selects contacts 3 and 44 and disables their actions
Contact * Enable
Selects ALL contacts and enables their actions
CO1ENA
Abbreviation for Contact 1 Enable
CueServer User’s Manual
CueScript Command Language | 87
Cue
Syntax: Cue (cue number)
Abbreviation: CU or Q
Description: Selects the specied cue number as the “next cue” in the selected playback fader’s
cue stack and loads the timing parameters (fade time, follow time) from the cue into the playback fader. Use the Cue command to prepare to execute a specic cue with the Go command. Specify any cue number from 0.1 through 4999.9.
When using the Cue command with the Go command, keep in mind that the Cue command queues the next cue along with its timing parameters -- and then the Go command executes the next cue with the playback’s settings. This allows you to load a cue and then change some of its parameters before executing it. For example, “Cue 1 Fade 5 Go” would run Cue 1 with a fade time of 5 seconds regardless of what fade time was recorded in the cue.
Examples: Cue 1
Selects Cue 1 to be the next cue executed when a Go command is issued
Cue 2 Go
Selects Cue 2 as the next cue and runs it
Cue 9.5 Go
Selects Cue 9.5 as the next cue and runs it
Cue 10 Fade 12.5 Go
Runs Cue 10 with a fade time of 12.5
Cue 101.2 Fade 5 Follow 12 Link 100 Go
Runs Cue 101.2 with a fade time of 5 seconds, a follow time of 12 seconds and a link back to Cue 100
Cue 0
Clears the next cue from the playback fader
Q1G
Abbreviation for Cue 1 Go
88 | CueScript Command Language
CueServer User’s Manual
Delete
Syntax: Delete (object)
Abbreviation: DEL
Description: Deletes a cue or a group. Use the delete command to remove a cue or group from
the current show.
Examples: Delete Cue 1
Deletes Cue 1 from the Cue List
Delete Group 2
Deletes Group 2 from the Group List
DELQ1
Abbreviation for Delete Cue 1
DELU2
Abbreviation for Delete Group 2
CueServer User’s Manual
CueScript Command Language | 89
Device
Syntax: Device (range)
Abbreviation: DEV or !
Description: Filters subsequent commands for execution based on the CueServer’s assigned
Device ID. Use the Device command to specify which CueServer(s) on a network should be processing certain commands or to make the same conguration operate differently on different CueServers.
Each CueServer can be assigned a Device ID in the Hardware Setup > Network Settings page. While a command is executing, the Device command instructs CueServer if the following commands should be executed based on the unit’s assigned Device ID.
Examples: Device 1; Cue 1 Go
When this string of commands is executed, the “Device 1” part indicates that the following commands should only be executed if the CueServer’s Device ID is set to 1. In this example, “Cue 1 Go” will only be executed if the CueServer is Device 1.
Device 1>5 + 10>15; Cue 1 Go
This command enables the following commands if the CueServer has a Device ID from 1 through 5 or 10 through 15.
Device *; Cue 1 Go
This command enables ALL device IDs, then executes “Cue 1 Go”.
Device 1; Button 1 At FL; Device 2+3; Button 2 At FL;
If this unit’s Device ID is 1, Button 1 will illuminate. If this unit’s Device ID is 2 or 3, Button 2 will illuminate.
By using the Device command in conjunction with the command broadcast
feature (using the * command), specic CueServers may be addressed by command strings broadcast across the network.
Examples: “Cue 1 Go” *
All CueServers on the network will receive the command “Cue 1 Go”. Each of these units will execute Cue 1 simultaneously.
“Device 7; Cue 1 Go” *
All CueServers on the network will receive the command “Device 7; Cue 1 Go”. Only CueServers with their Device ID set to 7 will perform the “Cue 1 Go” part of the command. In effect, this command instructed CueServer #7 to execute Cue 1.
“Dev 1; Out 1 @ FL; Dev 2; Out 2 @ FL; Dev *; Out 3 @ FL” *
This command would make CueServer #1 turn on it’s Output 1 and CueServer #2 turn on it’s Output 2 and all CueServers on the network turn on their Output 3.
90 | CueScript Command Language
CueServer User’s Manual
Disable
Syntax: Disable
Abbreviation: DIS
Description: Disables the currently selected Channels, Buttons or Contacts. Use the Disable
command to temporarily disable the contribution of a fader channel or the action associated with the pressing of a button or closing of a contact. This feature can be used to suspend the output of channels in a playback fader or to “lock-out” certain actions or events from occurring at specic times in a show.
Disabling Channels
If a channel or group of channels in a playback fader are disabled, they no longer affect the output even though they continue to store their value, perform crossfades and are affected by commands and cues. Disable channels in a playback fader to temporarily suspend its contribution to CueServer’s output. To resume inclusion of a channel in CueServer’s output, use the Enable command.
Disabling Buttons and Contacts
If a button or contact input is disabled, it no longer responds to being pressed or being closed. Disable buttons or contacts to temporarily prevent additional button presses or contact closures from executing their assigned commands. To resume normal operation of a button or contact, use the Enable command.
Examples: Channel 1 Disable
Selects channel 1 of the current playback fader and disables it
Channel 10>30 Disable
Selects channels 10 through 30 of the current playback fader and disables them
Playback 3; Channel * Disable
Selects Playback 3, then selects all channels in Playback 3 and disables them
Button 1 Disable
Selects button 1 and disables its action
Contact 1>8 Disable
Selects contacts 1 through 8 and disables their actions
P4C*DIS
Abbreviation for Playback 4 Channel * Disable
B1DIS
Abbreviation for Button 1 Disable
CueServer User’s Manual
CueScript Command Language | 91
Enable
Syntax: Enable
Abbreviation: ENA
Description: Enables the currently selected Channels, Buttons or Contacts. Use the Enable
command to re-enable channels in a playback fader or the action associated with the pressing of a button or closing of a contact. This feature can be used to reverse the effects of the Disable command.
Examples: Channel 1 Enable
Selects channel 1 of the current playback fader and enables it
Channel 10>30 Enable
Selects channels 10 through 30 of the current playback fader and enables them
Playback 3; Channel * Enable
Selects Playback 3, then selects all channels in Playback 3 and enables them
Button 1 Enable
Selects button 1 and enables its action
Contact 1>8 Enable
Selects contacts 1 through 8 and enables their actions
P4C*ENA
Abbreviation for Playback 4 Channel * Enable
B1ENA
Abbreviation for Button 1 Enable
92 | CueScript Command Language
CueServer User’s Manual
Loading...