What Tools are available to Troubleshoot with CueServer?
Managing a robust lighting network with CueServer can surely make things a whole lot easier, but even the easiest of systems can fall victim to hidden errors. As a show's complexity grows, it can be tough to narrow down what exactly might be causing problems.
While we can't prevent errors from happening, we can certainly provide you the tools to help track them down! We'll go over a few tools you can use to squash those issues in no time.
One of the most powerful (and easy to use) tools in your CueServer arsenal is the System Log. Virtually anything and everything that crosses your cueserver is logged (if enabled!) by the system. For anything show-related, this should be your first stop.
The log must be "enabled" before it begins tracking events. The log is enabled via "Debug Mode", which is conveniently located just above the log output. To get to the log, find it inside of the second sidebar, under the Status menu.
Upon clicking , you'll see multiple (selectable) options available
- Button Events
- Enables/disables system logging of button and contact related events (both built-in buttons/contacts and CueStation buttons/contacts).
- Cue Events
- Enables/disables system logging of all Cue related events processed by the system.
- CueScript Commands
- Enables/disables system logging of all CueScript commands processed by the system.
- Real-Time Clock Events
- Enables/disables logging of all events related to the real-time clock or the NTP Server.
- Show Events
- Enables/disables system logging of show related events.
- UDP Messages
- Enables/disables system logging of all UDP packets received on the CueScript port.
- Variable Assignments
- Enables/disables system logging of all changes to variable values.
Each of the above options allows you to filter out things that aren't relevant to what you're looking for. This can be crucial, as the log can fill up fast if there's a lot going on!
Most common issues present with symptoms such as a cue starting only to stop seconds later, or an indicator not responding as expected. Typically, issues like these arise from small conflicts or CueScript errors somewhere within the show, but where? Is a macro modifying the playback just after a cue has begun, or is it a rule? Is there a "Set" rule overriding the indicator value? These types of things can be increasingly tough to find, however, this is where the System Log can save the day.
For example, take a look at the log above. As you can see, the button is pressed, triggering a cascading array of events. As you follow along, you see that after the Cue is called, the button is turned off (expected behavior), then a macro is called. Finally, you see that the macro turns the button back on (unexpected behavior). By simply enabling "Button Events" and "CueScript Commands" in the Debug menu and trailing along, we are able to easily see where the problem is occurring and the remedy. Easy as that!
I would be remiss not to mention a few small tips, such as the button, which adds a handy divider to the log to help break things up.
Another thing to know about the system log is the ability to pop-out into its own window (Pro Tip: all menu items shown here with a chevron are pop-able), which can be extremely useful when debugging.
To do this, simply click on the Chevron toward the right-hand side of the system log button:
But why stop there? Why not use the log for your own troubleshooting or records? Using the log may seem like a small help, but logs have long been one of a programmers most useful tools! Use the "log" command to add your own data to the mix. In CueScript, simply append data after the word "log", like so:
log "macro 1 executed"
CueStation Network Monitor
If you're having wall-station woes, the CueStation Network Monitor is a very present help in times of trouble. For issues ranging from button stations to hubs, you'll find this tool to be a cut above the rest.
To get to this tool, open the help menu, then under the "Diagnostic Tools" sub-menu, select "CueStation Network Monitor"
The most common issues faced when working with CueStation fall under the categories of ID mismatch, or network communication. This tool will help you quickly resolve both. By default, when you open up the monitor, you will likely see something similar to this:
This is because, by default, all events are shown from all sources. It's not uncommon for indicator states to be in constant flux, therefore if you have a CueServer or two on the network, you'll probably see a flood of indicator events rolling it. What you're seeing here is local CueServer's pushing multicast packets out over the network containing indicator states, station ids, and hub ids. These packets are responsible for any and all two-way communication between digital CueStations, CueStation Hubs, and CueServer.
This list can get overloaded quickly if you have many stations or CueServers on the network. It's advised in this case to use the filter and state checkboxes to eliminate some of the noise where appropriate.
In a nutshell, if any button or indicator is updating or activating, you'll see it here. Unless you've run into our 2nd most common issue: network communication. If this is the case, you'll see none of those events here, or you might see events going one-way, but not the other.
- If You're not Seeing any Events
- This is a sign that suggests there is no network path from to the Network where the CueStation and CueServer reside, or that there is a path, but multicast is either blocked or unable to communicate.
- If You're only Seeing Events one-way
- This is a sign that suggests there is no network path from the device that is emitting events to the other. If the device MIA is the Hub/CueStation, in most cases, this is remedied with a simple Hub and Station reboot, forcing the network to re-initialize. If the missing device is the CueServer, make sure that the hub is on the same network as the Computer and CueServer and that multicast is enabled.
If you see both CueServer and Station events, that's a sign your network is rock solid.
If you're still experiencing issues and your network checks out, the other common problem is mismatching of ids. Even though the CueStation network operates via Multicast and all devices see all the packets, each device will only tune-in to the messages that are relevant to it, specifically. As the events roll in, the network monitor will log which event occurred, who it came from and who it was intended for.
The best approach to identify any mismatches is to simply filter out events that aren't button presses, then press the buttons on each station. Ensure the station and HUB ID's in the monitor match those set under each station in your CueServer show.