V Series Network Controllers User’s Guide Alcorn McBride February 25, 2014
Document Revision 2.1 February 25, 2014 Copyright 1996-2014 Alcorn McBride, Inc. All rights reserved. Every effort has been made to assure the accuracy of the information contained in this manual, and the reliability of the Alcorn McBride Show Control hardware and software. Errors can sometimes go undetected, however. If you find one, please bring it to our attention so that we can correct it for others. Alcorn McBride welcomes comments and suggestions on the content and layout of its documentation.
Table of Contents Table of Contents ..................................................................................................................................... 3 Welcome ................................................................................................................................................ 11 Product Comparison Chart ................................................................................................................. 11 Important Information ....................
Display Options............................................................................................................................. 53 Groups .......................................................................................................................................... 54 Markers......................................................................................................................................... 56 Lock the Screen .......................................................
On ................................................................................................................................................. 84 Off ................................................................................................................................................ 84 Toggle........................................................................................................................................... 84 Add .......................................................
USB ............................................................................................................................................ 106 Ethernet Ports A and B ................................................................................................................ 106 Show Control Ports .......................................................................................................................... 107 Ports 1-16: RS-232 or RS-422/485.............................................
Input Configuration ..................................................................................................................... 138 Input Wiring................................................................................................................................ 139 Connecting a Voltage Input ..................................................................................................... 139 Connecting a Contact Closure ...............................................................
?V Get Firmware Version ...................................................................................................... 175 ?S Get SMPTE Firmware Version ......................................................................................... 175 ES Enable SMPTE ................................................................................................................. 176 DS Disable SMPTE ..........................................................................................................
Getting Started ................................................................................................................................. 196 Adding Events ................................................................................................................................. 197 Creating/Editing Your Own Product File via XML ................................................................................ 200 Protocol File Storage.............................................................
The V16Pro, V4Pro and VCore show controllers are the latest versions of our original, most powerful, show controllers. They are ideally suited for the control of theme park attractions, museum displays, retail spaces, casino installations, games shows, or almost any automated venue. They provide more serial ports than any of our other controllers, and offers almost unlimited memory capacity.
Important Information Congratulations! You have purchased an extremely fine product that would give you thousands of years of trouble-free service, except that you undoubtedly will destroy it via some typical bonehead consumer maneuver. This is why we ask you to: Please for God's sake read this manual carefully before you unpack the product.
Quick Start Guide 1. Open Example Script Open WinScriptLive and click on "New" and select one of the "Starter Scripts" of interest. Click "Open". 2. Connect Connect an ethernet cable from your controller to network or PC. Click Find and click on your show controller in the "Find Your Show Controller" window.* When prompted, "Send the Script" to the controller and wait for a restart to start connection.
WinScriptLive Tutorial In this tutorial, the show controller that will be used is the V16Pro. The tutorial that follows will apply to other the V4Pro and VCore as well. Other family members will have different resources available so please keep this in mind when going through the tutorial. Opening WinScript Live and Creating a Script The first thing you do to program your Show Controller is to create a Script.
WinScript Configuring the Script It is always best to document the function and purpose for the script, so let’s add the information about the script. The following form is optional and is not required as part of writing a script. 1. From the tool bar go to Configuration menu item then select Script. 2. The following dialog box opens… 3. At this point you can include information about your show in the Description block. 4.
Working with Resources – Clicking and Drag & Drop A list of available Resource categories appears on the left side of WinScript Live. Anytime you want you can double-click any of these resource categories to expand the tree of available resources and drag them into your script.
You can assign unique names to your Show Controller’s Inputs, Buttons, Outputs, Variables, and other resources so that they make intuitive sense when someone else is reading your script. Let’s assign some names to the Inputs, Buttons, Outputs, Variables, and Devices we’ll be using. First of all, it’s a good idea to set some rules in place to avoid confusion later in the design. Using label identifiers on the objects used in the script will serve as reminders later on as to the function they perform.
1. Double Click on "button1" and rename it to "btnRunShow". You may add comments about the function of the button if you wish. Some functions are straightforward while others may seem less obvious at this point. Over time you may need to be reminded of the function so it is a good idea to comment your script when possible. In this example this button starts the show. 2. Do the same for button2 and call it "btnDayNightMode".
In WinScript, the audio, video, lighting and other show systems controlled by the V16Pro in your show are called “Devices”. These Devices are connected to the V16Pro via serial ports or Ethernet, or on occasion using a discrete parallel output(s). For this example we will use the Alcorn McBride DVM7400 Digital Video Machine. The DVM7400 can be controlled via serial or optionally via Ethernet. You can configure the V16Pro to control the unit using either of these two interfaces.
4. Click “Next” to advance to the next dialog to set up the connection type. The default is serial, and if selected, the user will be prompted for the V16Pro serial port number, protocol format, baud rate and other serial control information. Any or all of the serial ports may be configured for RS232 or RS422. If Ethernet is selected, the user will be prompted for the network port A or B, protocol format, IP address and Ethernet port number.
At some point it’s often a good idea to map out what the show is going to do - something like a storyboard with the scenes and actions needed for each step. There are countless ways to construct this in a Script, but in all cases the operational modes that control the show and make up a scene are executed by the Events contained within each Sequence. “Writing the Script” involves adding Sequences, and subsequently adding Events to the Sequences which control the flow and operation of your show.
You give each Sequence a unique name which normally includes some indication of its purpose or function. This name appears in the Sequence Name column. Each sequence also can be assigned a Trigger. The Triggers appear in the Triggers Column. The Trigger can be a Start, Stop, Reset or Pause Trigger, and is normally a Discrete Input or Button, or sometimes a Variable or Incoming Message.
WinScript The Timeline view allows you to edit the events of a sequence in an easy and intuitive manner. The different properties of a selected event are listed under the Properties window located to the right of the Timeline, and these can be edited as you see fit. For more information on the Timeline and a detailed explanation on what each section means, please refer to the Timeline section of this document. Edit the Default Sequence 1.
3. Next, drag and drop the desired event on top of the Timeline; for this tutorial we will use Display as our event, and we will drop it over the Display section of the timeline. After the event was dropped, the timeline will look like the following picture: 4. Now we can proceed to edit the event. All of the properties for this event are displayed on the right side of the screen under the Properties window. 5. We will now enter text to be displayed on the V16Pro display.
The display editor gives the user a graphical view of how the text will be displayed as it is entered. Each line of the display is edited by entering the information to the left in each line and is displayed in the display area to the right. Also checking the box to the far left of the line editor will clear that line. Enter “My First Show” on the first line. (No need for "" unless you want them displayed.) Next enter Night Mode on line the next line. 7.
2. The Sequence Triggers form will open. This form contains all the triggers that you have defined so far. Right now we’re interested in assigning a button to start this sequence.
Click the drop-down menu under the Name in the Discrete Input or Output section. Select the "btnRunShow" from the menu. Notice the button names for the first three buttons have been renamed from the earlier steps… 4. Press the "Apply" button in the upper right then the "OK" button to finish the trigger configuration. 5. Now, let’s add some Events to the MainShow Sequence.
7. Go into the "Event Wizard" by right-clicking the first row and fill in the event parameters for the first line of the MainShow sequence as follows. Label = lblCheckNightMode Time = 00:00:00.00 (default) Device = V16Pro Event = If On Data1 = boolNightMode Data2 = lblPlayEnd 8. Here is a brief explanation of each one of these event parameters. The Label is not needed but it does describe what the line will do. The Time is set to zero, as the delay is not needed here.
WinScript 11. Click “Next” and advance to the next step which allows you to specify the command. Select the Play command… 12. We want to play a clip by number, which is specified in the next dialog shown below. The dialog defaults to the “From Here” Command Variation, so you’ll want to select the By Number button.
13. Add one more Event to this Sequence. This last Event is simple and contains a Label “lblPlayEnd” which is branched to in order to bypass the play event when the "boolNightMode" is On. This time the label is needed as part of the function of the event. Label = lblPlayEnd Time = 00:00:00.00 Device = V16Pro Event = Nop (No Operation) 14. The finished "MainShow" sequence looks like this… 15. The last sequence to configure is the "DayNightMode" function.
Label = (blank) Time = 00:00:00.00 Device = V16Pro Event = Toggle Data1 = boolNightMode 21. Next we need test the state of the boolNightMode and display the current mode on the front panel display. We need the test the Boolean Type Variable to see if it is On or Off. If the Boolean Type Variable is on then we are going to jump to the event labeled lblNMFon (Night Mode Boolean Type Variable on). To do that create the following Event on the next line.
The event to handle the On event is entered next: Label = lblNightMode Device = V16Pro Event = Display Data1 = Night Mode (Use the Display Wizard, enter the second line, 14 spaces in and one space between Night and Mode) The last line is the ending ling for the sequence Label = lblNMFend Device = V16Pro Event = nop The sequence should like this when finished… Wait! What about the Credits Button! Have fun with what you have learned.
We’re done! Now, it is time to check for errors and download the script to the V16Pro show controller. The process of compiling, error checking (part of the compiling process) and downloading the finished script to the show controller is a single button function. This of course depends on an established communications connection and not errors are found in the script. Connecting Equipment Connect the DVM 7400 to the show controller by whatever means was described in the device section (serial or Ethernet).
WinScript Live Resources The actions performed by the show controller are created by using the show controller's "resources." These resources can be accessed using the side toolbar, or from the "Resources" menu. Sequences Scripts are made up of sequences that are groups of events. Sequence Columns Notice the columns labeled D, A, L and Status just before the Sequence Name column. Clicking on the box places a check mark in the column for that sequence.
Sequence is running when highlighted, will start the sequence if it is stopped. WinScript Each sequence will need a name so that it can be call if needed and to identify its function. The sequence may require a trigger to start and is defined by the trigger column. Sequence Clock Each sequence runs according to its own "Sequence Clock." This clock keeps track of the current frame for that sequence.
Events Each sequence is made up of lines called "Events". An event is a single step that is taken to perform the function of the sequence. Events interact with all the show control hardware and devices. Event Grid View A sequence can be viewed as either a Timeline or a Grid view. The Grid View is shown below. Event Columns: D is for Disable. Checking this box will cause the system to skip over the event and not execute it.
WinScript Timeline allows you to view and edit events in a more intuitive manner. Events can be dragged from the resources list on the left, and dropped on top of the timeline at the precise time the event needs to happen. All the editing for a respective event can be done on the Properties window on the right side of the screen. For a more detailed description on Timeline and all of its features, please refer to the Timeline section of this manual.
Date/Time The month/day/year followed by time in military style : ie: 10/15/09 13:45. Decimal A decimal number accurate up to four decimal places with the same possible range as Integer. Device Variables These variables are created automatically after adding a new device. They are usually read-only, but in some cases they can be set to an initial value in the "device wizard" during device setup.
WinScript This form will configure the show controller for the kind of device to be connected such as DVM, DMX, Audio or any other kind of equipment needed. The information about the device selected is displayed and where the product file is located. Note: Product files are often shown with the Resulting File description of "Stored .ami file." This occurs after a file has been saved with a particular device configured. Every .
Ethernet Types: "UDP" – a protocol with no "handshaking." The Show Controller's port number will be used to receive data. Basically, the show controller will "listen" to messages coming to the Show Controller's port from the specified IP address. The device's port number is where the show controller will attempt to send the any command messages. "TCP/Telnet" or "TCP_Client" – This protocol requires a "connection" between the two specified ports.
Rear inputs can be configured in WinScript Live as either Voltage or Contact Closure. They can also have their names changed to more easily reference them within the script. IO64 Slave Inputs The Alcorn McBride IO64 can be setup as a "Slave IO" protocol. In this mode, inputs from the IO64 are placed directly into the "Inputs" window. Once in this window, these inputs can be referenced just like other internal show controller inputs.
can be found under the "Scripts" directory of the C:\Program Files\Alcorn McBride Inc\WinScriptLive\Scripts. Modbus TCP Slave Inputs Modbus TCP is a standard protocol used for many IO device modules. Any IO device capable of using ModbusTCP can have its IO controlled as if it was IO internal to the V16/V4Pro. So far, Beckhoff IO and Avantech Adam-6000 series IO have protocol files available. Please contact support if you have a ModbusTCP IO device you would like to control.
WinScript 5. Enter the number of "Inputs" and "Outputs" you will be controlling into the boxes. The "StartingInput" and "StartingOutput" are typically 0, but may be a greater number if you're only controlling a sub-section of the IO on a particular control module. For example, if you only wanted to watch inputs 3-12 on a module that had 0-12 available. The "InputPollFrequency" can be set to as little as 1 frame.
6. Click "Finish" Your IO will now show up in the "Inputs" and "Outputs" lists. To View/Rename your Beckhoff IO inputs: 1. Go to "Resources""Inputs" to view the inputs list. 2. Select the name of your device (in our example: "MyBeckhoff") from the toolbar 3. You can rename any of the inputs in this view. You may now use your inputs as triggers, or directly in internal "events" such as "If On". See the "Triggers" section for more information about triggers.
WinScript To view a specific device's output, select the device from the drop down list at the top of the "outputs" window. (See below) If this list does not appear, make sure that "Slave IO" is listed as the "protocol" for the device in the "Devices" screen. If it is not, edit the device and select "Slave IO" as the protocol. This feature can be used with the IO64, V16+, V4+, V2+ and the Interactivator.
3. Select the Make, Model and version of the IO 4. Enter the IP Address information, the V16/V4Pro Ethernet port you would like to use, and make sure the protocol is set to "Slave IO" 5. Enter the number of "Inputs" and "Outputs" you will be controlling into the boxes. The "StartingInput" and "StartingOutput" are typically 0, but may be a greater number if you're only controlling a sub-section of the IO on a particular control module.
WinScript after an "On", "Off" or "Toggle" command). If you prefer more constant polling, a recommended value would be 15 frames. 6. Click "Finish" Your IO will now show up in the "Inputs" and "Outputs" lists. To View/Rename your Beckhoff IO inputs: 1. Go to "Resources""Outputs" to view the output list. 2. Select the name of your device (in our example: "MyBeckhoff") from the toolbar 3. You can rename any of the outputs in this view.
Buttons Buttons refer to the front panel buttons found on the show controller. By default, these buttons are not the same as the rear inputs. Checking the “Couple” box causes a press of the button to have the same effect as a rear pulse on the corresponding input. For example, checking “Couple” on “Button1” will cause any triggers relating to “Input1” to occur when “Button1” is pressed. Triggers Triggers are a method to start or stop a particular sequence.
Trigger Types WinScript Triggers can start, reset (stop), pause or stop looping a particular sequence. Note: pause does not have the same meaning as previous versions of WinScript.
Timeline Timeline allows for the intuitive editing of sequence events. Elements are displayed in the order they happen on a time line. The following explains all the different options and tools for Timeline. Display Timeline To view the Timeline click on the Timeline view button after selecting a specific sequence. Alternatively, you can click on the View menu, and then select View Events as Timeline. Play, Pause, Stop, and Execute Play: This button will play the entire sequence.
Current Time Marker WinScript In Live Mode, the Current Time Marker marks the current time as a sequence is playing. It automatically moves through the Timeline as the sequence progresses. You can move the Current Time Marker to dynamically navigate through the sequence by dragging the arrow on the header part of the marker. Timeline Specific Functions This section explains the different Timeline-specific buttons on the timeline toolbar.
New Event, New Sequence, Delete New Event: This button creates a new event. The event is by default named “Nop” (no operation) and it is placed on the group (row) that was last selected at the time that was last clicked. New Sequence: This button creates a new sequence. The program allows you to name the sequence as soon as the button is clicked. Also, an event to execute this sequence is created automatically within the sequence in which you are currently working.
WinScript Delete: This button deletes the selected event. Display Options These options allow you to customize the Timeline view so that it is more comfortable to use. Zoom In: This button allows you to zoom into the Timeline to configure any small details. The maximum zoom-in level is one frame. Zoom Out: This button allows you to zoom out of the Timeline to see the bigger picture. The maximum zoom-out level is twenty two hours.
Groups In Timeline each group is represented by a row. These can be customized using the Groups button on the tool bar. This menu can also be accessed by clicking the View menu and clicking on Groups. In this new window, shows the list of all the groups. From this window, you can add new groups, delete old groups, change their colors, hide a specific group for a sequence, and set a default group. Add New Group: To add a new group, click the “+” symbol.
WinScript Delete Group: To delete a group, select a group from the list then click on the “-” symbol. This will delete the currently selected group from the list. Set Default: This button will set the selected group to be the default. When a new event is created in grid view, if the group is not specified, the default group will be selected, and the newly created events will be added to it.
Markers Markers allow you to mark a specific time on the Timeline. They can be accessed and edited by clicking on the Markers button or, alternatively, in live mode, they can be placed at the current frame by pressing M on your keyboard as the current time marker advances. Markers allow you to easily place events next to them by automatically pulling the event next to it as you drag it close to the marker.
Event Buttons WinScript These buttons help you to easily navigate your events. Select First Event: This button will select your first event, taking you to it on the timeline. Select Previous Event: This button will select your previous event, taking you to it on the timeline. Select Next Event: This button will select your next event, taking you to it on the timeline. Select Last Event: This button will select your last event, taking you to it on the timeline.
Data Params: The list of parameters changes depending on the type of the event that has been selected. Explanations on what each parameter does can be found at the bottom of the window. The Properties window can be moved around the screen and be docked to the side of the application itself. Also, you can put two panes (Properties and Resources) on top of each other if needed. The application will save this customization for the next time the program is opened.
The following section will explain the different ways to configure global timecode (SMPTE/EBU) settings for the show controller using WinScript Live. For information on timecode settings for a particular sequence, see Sequence Clock on page 35. Display the Timecode Configuration Dialog To view the timecode configuration, click on the “Devices” button on the resource toolbar. Click on the “Configure Timecode” button to bring up the configuration dialog. The following dialog appears.
Internal Timecode Settings The internal clock frame rate settings determine what rate a sequence’s timecode will increment. The following frame rates can be used: 23.976, 24, 25, 29.97, 30D (drop), and 30fps. Lock to External Video Sync Locking to an external sync source can help keep your show perfectly timed with external devices such as a video player. The Alcorn McBride’s A/V Binloop HD is an example of a device that can also accept a Video Sync input from a Blackburst generator.
WinScript The frame rates available for LTC are 23.976, 24, 25, 29.97, 30D (drop frame), and 30fps. When “Lock to External Video Sync” is selected, 23.976, 25, and 29.97 fps are available. A yellow LED on the front and rear of the unit indicates when the show controller is receiving an incoming sync signal. Read Settings When reading external LTC, it is possible for the timecode to skip or “dropout” a few frames. This “Tolerance” level indicates at what point the show controller will register a “dropout”.
Preroll Time: Occurs once, on initial start, before reaching the “Start Time.” Any further loop will go back to the Start Time. Start Time: The initial running time End Time: The time that the timecode stops or loops Loop at End Time: Returns to Start Time when End Time is reached SMPTE Muted When Paused or Stopped: No SMPTE time signal is generated on LTC output when Paused or Stopped.
When operating in "Live Mode", all modifications to the script take immediate effect within the show controller. In addition, resources such as “Watches”, "Live Log" and "Live Display" will provide additional debugging and status information. Connect to live mode using the button located on the toolbar. Scripts must be saved and checked for errors before they can be sent to show controller.
Watches All resources can be added to the watch list. This list allows for easy viewing of inputs, outputs, and variables as they change. Adding Watches You can add items to the watch list by typing in the “name” column or by clicking on the inputs, buttons or outputs window. from Adding a device into the list allows all communication to and from that device to be displayed into the live log.
The button will check all of the “Enable Force” column rows at once. Clicking on the button in the watch window shows a list of sequences as they are started and stopped. Communication to devices listed in the “watches” list is also recorded in the log. Note: incoming messages will always appear before outgoing messages. If an outgoing message occurs, and an incoming comes in a few frames later, the incoming message may still appear before the outgoing message.
If you were unable to successfully ping it, you may have put incorrect connection info for the device, and should read the next section, “Finding Devices”. Finding Devices Assuming you were unable to successfully ping it, press “Search”. This will bring up the “Find Device” dialog. Select the port range you want to search, the destination port you want to ping, and the ping timeout time, and the show controller port you want to scan through.
After the scan, once you select the device you wish to connect to and click “Next”, a “Change Location” dialog will appear, offering the following options: Option 1: Change "AMI/O" device to use WinScriptLive location This option should be used if you want to change the AMI/O's IP address to match the address you have already specified in WinScriptLive Option 2: Change Winscript to use found device "AMI/O" location This option is only available if you have already set the IP address of the AMI/O, and have f
To change address back to 0.0.0.0, the DIP switches must be toggled and at least one cold boot must take place. To do this, follow the on screen instructions (printed here) 1. Set the DIP switches 1-8 to "ON" and power cycle 2. The "ERROR" led should continuouly flash red 3. If not flashing, flip DIP switches 1-8 to "OFF", power cycle and repeat step 1. 4. Click "Search" Once the desired AMI/O device appears in the list, select it from the list and click "Next" to move to the "IP Set" screen.
Many methods exist for sending commands to your show controller to start sequences. Several common methods are listed below. "ShowTouch" and "Touch" Software ShowTouch is a rugged touch-screen interface designed to work exclusively with with our Ethernet show controllers. The script running on the show controller is read by the Touch software so that buttons, toggles, and text displays can be linked to the show controller quickly and easily.
Webpage Control Sequences can be started using form buttons in HTML. Variable values can also be pulled into webpages. See the "WEB Server Quick Start" section of this manual for more details. iPhone Control Any iPhone app capable of sending TCP or UDP messages can control the V16/V4Pro. For TCP, a server port must be setup in your devices list. In the following example, we will setup a TCP port and use the iPhone app "TCP/IP Remote" to control a V16Pro. This example can be found named "iPhone.
Choose the Ethernet connector (A or B) that you will be connecting do. Select the "TCP/IP Remote" protocol. Port "1000" is usually ok, but if you want a different port number, you can change it to anything you'd like. Just make sure it matches what you set up in the iPhone app. WinScript 4. 2: Add Incoming Message Triggers After you've created sequences that do what you'd like, you can add triggers to those sequences that allow the iPhone to start the sequence.
3. Click on "Incoming Message" radio button. 4. Fill in "iPhone" for the device name. 5. Click on the "Custom" radio button 6. Fill in any text that you wish to use to start the "OutputsOn" sequence. We will use this text later in our iPhone App. In this example, I will use the text "on". 7. Click ok to add the trigger 8. Repeat steps 1-8 for the "OutputOff" sequence. Use the text "off" for step 7. Your result should look like the below screen capture: 9. Send the script to the V16Pro.
3. Use the "terminal" or "macro" of the TCP/IP Remote software to send the strings specified in the "Triggers" (In our example: "on" and "off") WinScript For a more detailed demonstration of how to use the TCP/IP Remote, go to http://www.zinmansoftware.com/TCPIP-Vid.html. Terminal Control Any TCP/IP terminal software such as "Putty" can be used to send messages to start Sequences on the V16Pro. 1: Setup TCP Server on Show Controller 1.
change it to anything you'd like. 2: Add Incoming Message Triggers After you've created sequences that do what you'd like, you can add triggers to those sequences that allow the terminal to start the sequence. In this example, I have two sequences named "OutputOn" and "OutputOff". To allow these sequences to be started by a terminal: 1. Click on the "Triggers". 2. Click "yes" to open the triggers window. 1. Click on "Incoming Message" radio button.
Fill in "puttyTerm" for the device name. 3. Click on the "Custom" radio button 4. Fill in any text that you wish to use to start the "OutputsOn" sequence. We will use this text later. In this example, I will use the text "on". 5. Click ok to add the trigger. 6. Repeat steps 1-8 for the "OutputOff" sequence. Use the text "off" for step 7. Your result should look like the below screen capture: 7. Send the script to the V16Pro. WinScript 2.
Type "on" or "off" into the terminal window and press enter.
Redundant mode allows a 2nd "slave" controller to monitor the sequence status and follow along with the "master" controller should the "master" controller go offline. While we design our hardware to operate for years without a power cycle, and run our own operating system that is not susceptible to viruses, we understand that sometimes a redundant system is a requirement for our customers. Redundant Mode Setup To enable redundant mode, use AMI-Terminal to configure both V16Pro units: 1.
4. Edit the "Redudant IP Address" to enter the 2nd V16Pro's address. Click "Set". 5. Set the Redundant Ethernet Jack to "A" or "B" (as connected) 6. In the "Master/Slave" box, select either "Force to be Slave" or “Force to be Master” Note: in the end it will not matter if you "Force to be Slave" or "Force to be Master". Which ever V16Pro is first box to be powered on will be the master. The slave will automatically convert to master if the master "goes away." 7.
All sequence status is "shared" by default between master and slave. If certain variable status is critical, you must allow those variables to be "Watched" by checking the "Redundant Watched" checkbox in the variable's edit wizard. Notes: Make sure the script is the same in both V16Pro units. You can still send a script to either master or slave unit but you can only enter "Live Mode" while the unit is in "master" mode.
Check the box for "Secondary Controller" and enter the IP address. It doesn't matter which controller is the master or slave at the time, Touch will automatically switch between the two if it fails to communicate more than twice. You will see a message in the Touch Log that states when a switch is made between the Primary and Secondary controllers. All earlier versions of Touch will completely ignore this setting and will only use the primary IP address so make sure you are running Touch 2.06 or greater.
WinScript Live Command Reference The events available within the show controller before adding any additional external devices are listed below. WinScript Reference Discrete Events Discrete Events utilize discrete relay contact closures.
Blink Blinks an Output. Blinking an Output causes it to turn on (for the specified Blink Time) and off (for the specified Blink Time) continuously until reset by an Off, On, Pulse, OutPort, or Toggle event. Event Syntax Event Data1 Data2 Blink Name of Output Blink Time* *The Blink Time should be in Hours:Minutes:Seconds.Frames (e.g. 00:00.4.15) or a Timecode type variable Example Event Data1 Data2 Blink Output1 00:00.01.15 Blinks Output1 with a Blink Time of 00:00:01.
Out Port Event Syntax Event Data1 Data2 OutPort Output Bank* Desired Literal Value (0-255) *Bank1 = Outputs 1-8; Bank2 = Outputs 9-16; All= Outputs 1-16. If specifying "All" as the bank, the Literal Value range is 0-65535. Example Event Data1 Data2 OutPort Bank1 157 Sets output bank 1 (Outputs 1-8) to the binary representation of 157 (or 10011101).
Logical Events Logical Events perform operations on Variables in the Show Controller.
Event Data1 Toggle Name of Boolean Type Variable Add Event Syntax Event Data1 Data2 Add Name of Variable Constant value Name of another Variable WinScript Reference Adds a value to a Variable. This value can be a constant value or another Variable. Acceptable variable types are Integer, Decimal, and Timecode. Timecode variables will be converted into number of frames. Subtract Subtracts a value from a Variable. This value can be a constant value or another Variable.
BitAnd Take the bitwise AND of a Variable and a value. This value can be a constant value or another Variable. Acceptable variable types are Integer and Timecode. Timecode variables will be converted into number of frames. For example, a Variable with a value of 3 (0011) and a contestant with a value of 1 (0001) would give a result of 1 (0001). Event Syntax Event Data1 Data2 BitAnd Name of Variable Constant value Name of another Variable BitOr Take the bitwise OR of a Variable and a value.
Format Name of Variable to store result Data2 Data3…. DataN Format String: "hello %s %d" Variable Name Data2's "Format String" is made up of placeholders that indicate where and how the variables in Data3-DataN should be inserted. The table below shows what % character should be used to format the string. In general, %s will work for most cases. Formatted String Variable Type to Insert % Description String, Display String %s Inserts the text in string format.
Save Variable Stores the value of a Variable in non-volatile memory so that it can be recovered, even after power cycling, using Restore Variable. Note: A maximum of 256 variables with a maximum string length of 256 characters for each variable can be stored. Variables are stored using their string name. Event Data1 SaveVar Name of Variable Restore Variable Recovers the value of a Variable from non-volatile memory.
Program Control Events To Do This… Use This Event… Start a Sequence Start Stop a Sequence Reset Pause a Sequence at the current event Stop a looping Sequence after the last event Pause Stop Loop Unconditionally jump over events Goto Perform specific events if an Input, Output, or Boolean Variable is "on" If On Perform specific events if an Input, Output, or Boolean Variable is "off" If Off Perform specific events if a Variable is equal to a constant value or the value of another Variable If
Start Starts a sequence. If the sequence is not currently running and was never paused in the middle by a Reset event, the sequence will begin execution at the first event. If the sequence started was running and is now paused by some other sequence, the sequence started will resume execution at the event. If the sequence started is currently running and the setup for the sequence has Restart Enabled, the sequence will stop event execution and restart execution from the first event.
Skipped Event Label 00:00.00 Some Event Example Label Time Event Data1 Data2 Data3 00:00.00 If = ShowVar 1 RunShow1 00:00.00 If = ShowVar 2 RunShow2 00:00.00 Goto End 00:00.00 Start GoShow1 00:00.00 Goto End RunShow2 00:00.00 Start GoShow2 End 00:00.00 Nop RunShow1 Events WinScript Reference 00:00.00 If ShowVar is not a valid number, the first Goto is reached and the sequence jumps to the end and performs no action.
Time Event Data1 00:00.00 If Off NightMode Boolean Type Variable 00:00.00 Play Ldp1 00:00.00 End If The Play event is skipped if the system is in Night Mode. Example using "Label" Label Time Event End Data1 Data2 00:00.00 If On NightMode Boolean Type Variable End 00:00.00 Play Ldp1 00:00.00 Nop The Play event is skipped if the system is in Night Mode. If =, If not =, If >, If >=, If <, If <= Conditionally executes events based on the value of a Variable. .
00:00.00 End If Example #2 Time Event Data1 Data2 00:00.00 Add ShowVar 1 00:00.00 If <= ShowVar 100 00:00.00 Set Variable = ShowVar 0 00:00.00 End If WinScript Reference The Play event is executed if ShowVar 5. This sequence adds one to ShowVar and then sets it back to 0 if it greater than 100. Event Syntax using "Label" Label Event Label Time Event Data1 Data2 Data3 00:00.00 Event Name Variable Constant value (0255) another Variable Event Label 00:00.
Nop Used as a branch placeholder. “Nop” stands for “No Operation”. Event Syntax Event Data1 Nop Example Label End Time Event Data1 Data2 Data3 00:00.00 IfVarEQ ShowVar 5 End 00:00.00 Play Ldp1 00:00.
Display Events Display Events display custom text messages as well as Boolean Type Variable and Variable states on the LCD. Use This Event… Display a custom message on the VFD Display Store the currently displayed message Store Display WinScript Reference To Do This… Recover Display Retrieve and display a previously stored VFD message Display Displays a custom message on the Display.
Decimal %f Inserts one decimal place OR number of places specified after "." preceding "f". For number 1.12345," %.1f" inserts 1.1. "%.2f" inserts 1.12. "%.4f" inserts 1.1234. Boolean %s "true" or "false" will be printed Boolean %d "1" or "0" will be printed Date/Time %s Inserts in the format: month/day/year hours:minutes Percent %s Inserts string including % character. ie: 100% Percent %f Inserts decimal percentage, shows 25% as .
Timecode (LTC, SMPTE, EBU) and Internal Time Events Timecode (LTC, SMPTE, EBU) related events perform function on the single, global timecode source for unit. Other time related events such as "Get Seq Time" and "Delay" reference a specific sequence clock.
Timecode Start Starts the timecode running at its current location if it's paused. If it was previously stopped, the timecode starts running at its Start Time specified in the Timecode Config window (shown below). This window can be accessed from the "Devices" screen. Timecode Stop Stop and Reset the current SMPTE/EBU Timecode. Timecode Stop Loop Stop the SMPTE/EBU Timecode at the next loop point if looping. Loop settings can be specified using the "Timecode Config" dialog (see above).
Disarm is similar to a sequence "Reset" command. The Sequence will ignore current SMPTE/EBU timecode when in disarmed state. This is used when the Clock Source is set to SMPTE/EBU (see image above). Network Events Send Mail Send e-mail to a specific address using the SMTP settings defined using front panel or Terminal interface. Currently SSL is not supported. Event Syntax Event Data1 Data2 Data3 Send Mail The email address to send the email to.
Device Control Events Built-In Events send a custom message to a specific Ethernet or serial device. To Do This… Use This Event… Message Out Send a custom serial message out a port Format Create a custom string to send Message Out Sends a custom serial message out one of the serial ports. The message is sent in the protocol defined for that port, but the Show Controller will not wait for an ACK or other response unless a TCP connection is required.
V16Pro V16Pro Figure 1- Front View Figure 2 - Rear View Specifications Size and Weight: Power: V16Pro Standard 2U rack mount (3.5" x 17" x 10.5"), 10 lbs 12 VDC at 3 amps. An external power supply is included with the V16Pro and will provide the required input power. The power supply is rating is 100 to 250 VAC, 50 to 60 Hz, 25-watts maximum.
Discrete Outputs DB-37F NTSC or PAL Sync Input BNC Power barrel jack LTC Input 3-pin XLR Female LTC Output 3-pin XLR Male Ethernet Jack A Ethernet Jack B Serial Ports: (16) RS-232C, RS-422/485, individually configurable 300 baud – 115.2 Kbaud 7, 8, or 9 Data Bits 1 or 2 Stop Bits All parity types software MIDI MIDI input and output ports Opto Inputs: (16) Each input is software configurable for voltage or contact-closure operation. Input voltage range is 5-24VDC.
Immunity Compliance: EN 55103-2:2009, Electromagnetic compatibility (Imuunity). Product family standard for audio, video, audio-visual and entertainment lighting control apparatus for professional use. EN 61000-4-2, Electrostatic Discharge, Immunity Compliance EN 61000-4-3, Radiated Electromagnetic Fields, Immunity Compliance - 80 MHz to 2.
1. The programmer port is RS-232C only while the show control ports 1-16 have RS232C as well as RS422/485. 2. Also pins 2 and 3 are reversed between the programmer port and the show control ports 1-16. 3. There are additional pins on the show control ports 1-16 that are not present on the programmer port. The additional pins on these ports are for supporting the RS422/485 functions. Note: The V16Pro RS422 TXD signals are reversed from the V16+ 4.
V16Pro V16Pro Page 105
Programmer Ports The V16Pro has three ports that can be used to programming. RS-232 Programmer port, USB or Ethernet port may be used for programming, control and monitoring. RS-232C The V16Pro can be connected to a PC using a cable that is wired as one-to-one. This means pin 2 is wired to pin 2, 3 to 3 and 5 to 5 thru the cable. The connector type is a 9-pin D-sub with female pins at both ends of the cable.
Show Control Ports The Show Control ports are used to control other devices used to control show devices. These devices include, for example, video and audio playback machines, lighting controls and gates, doors and curtains and any other show related machines.
address conflicts arise or when testing show configurations apart from an operating show. You may control a networks using one of the Ethernet ports located on the backside of the unit in the lower right corner as viewed from the back. Each port has a different IP address and may be changed by the front panel menu wheel control. Display The V16Pro includes a standard 8x40 Backlit VFD Display.
Menu Wheel The Menu Wheel provides easy access to all of the configurable parameters of the V16Pro. By rotating the wheel to the right or to left will cause menus will scroll forward or backward. Pressing the menu wheel will select the displayed item.
LTC/SMPTE Mode . . . SMPTE Time Display Current Frame Time . . . SMPTE Status Stop, Start SMPTE: LTC/SMPTE Config: Exit Network Network Adapter A IP Address: 192.168.000.254 Subnet Mask: 255.255.255.000 Gateway: 192.168.000.001 Network Adapter B IP Address: 192.168.000.253 Subnet Mask: 255.255.255.000 Gateway: 192.168.000.001 Exit Password Enter Password Script Configuration Default Script, Reload and View Watches.
Function Description The menu definitions are described here. Some items are informational only and are configured by WinScriptLive as part of the script. From time to time as updates are made the function may change. See the update documents for the details of the changes and additions. At the end of each menu is the "Exit", this item will pop to the preceding upper level menu.
Real-Time Clock Time: – This is the real time of day and is used along with the date variable to trigger events in the show script. Date: – This is the real calendar date and is used along with the time variable to trigger events in the user script. NTP Enabled: – This is a way to keep the date and time synchronized with the Internet Network Time Protocol (NTP). This requires access to the Internet and a timeserver address.
LTC/SMPTE Mode . . . SMPTE Time Display Generate/Read shows the current mode of the SMPTE processor. The Display shows the active time code clock. Current Frame Time . . . SMPTE Status The frame per second setting is displayed in this location. Status Idle/Running. Stop, Start SMPTE: This is the control for the SMPTE processor.
Digital Inputs Input Connector The V16Pro has 16 opto-isolated inputs that can control the show operation. If desired, the software may be configured to allow the front panel buttons to mimic these inputs. Otherwise, the front panel buttons operate independently, as an additional set of sixteen inputs. We’ll describe your configuration operation in a couple of pages.
Two forms of inputs can be applied to the Parallel Inputs connector: Voltage Inputs, and Contact Closures. When a specific input on the V16Pro is software configured for Voltage Inputs, power for the connection is provided by an external source (in-rack power supply etc.), but when the input is configured as a Contact Closure, power is taken internally from the V16Pro. Voltage Inputs vs.
Input Configuration The inputs are configured by WinScriptLive software. Select Resources command from the main menu bar, and then select Inputs. The window shown below lets you select the input type for each input. Notice the input name may be changed, and a comment describing the input’s use may be added.
Input Wiring Connecting a Voltage Input Using a Female DB37 connector, attach the appropriate wire from the Input signal pin (pin 1 for Input1, pin 2 for Input2, etc.) to the positive terminal of the external power supply. 2. Connect the negative terminal of the external power supply to one of the terminals of the contact closure or push button. 3. Connect the appropriate Input Return pin to the other terminal of the contact closure (pin 20 for Input1, Pin 21 for Input2, etc.) V16Pro 1.
Connecting a Contact Closure 1. Using a Female DB37, attach the appropriate wire from the Input signal pin (pin 1 for Input1, pin 2 for Input2, etc.) to one of the terminals of the external contact. 2. Connect the appropriate Input Return pin to the other terminal of the external contact (pin 20 for Input1, Pin 21 for Input2, etc.) Figure 4 - Sample connection for a Contact Closure Input to Input1 of the Parallel Inputs connector.
Using Front Panel Buttons The front panel buttons are configured by WinScript Live software. Select Resources command from the main menu bar then select Buttons. The window shown below will open and the user has the option of editing button parameters. Notice the Button name may be changed as well as adding comment to describe the function. V16Pro The front panel buttons on the V16Pro are not, by default, connected to the associated back panel input with the same number.
Digital Outputs Configuring Outputs The V16Pro provides 16 Dry-Contact Relay Outputs for discrete control. The initial state of each output may be configured by WinScript Live to be open or closed when the script is started. The back panel outputs are configured by WinScript Live software. Select Resources command from the main menu bar then select Outputs. The window shown below opens. You may change the name, define the initial state of the output, and add a comment to describe the output’s use.
13 Output 13 32 Output 13 Return 14 Output 14 33 Output 14 Return 15 Output 15 34 Output 15 Return 16 Output 16 35 Output 16 Return 17 N/C 36 N/C 18 N/C 37 N/C 19 N/C V16Pro Table 10 – Parallel Output connections.
Wiring Outputs Non-inductive load Non-inductive loads are resistive. Incandescent bulbs, LEDs and filament lamps do not require additional hardware. Loads that do not have inductors, coils or transformers are non-inductive loads. 1. Using a DB37 Male connector, attach the appropriate Output pin (pin 1 for Output1, pin 2 for Output2, etc.) on the Parallel Outputs connector to the positive terminal of the external power supply. 2.
Inductive loads 1. Using a DB37 Male connector, connect the appropriate Output pin (pin 1 for Output1, pin 2 for Output2, etc.) on the Parallel Outputs connector to the positive terminal of the external power supply. 2. Using the same DB37 Male connector, connect the corresponding Output Return pin (pin 20 for Output1, Pin 21 for Output2, etc.) to the positive terminal of the device that is receiving the output signal. 3.
Video Sync Input The V16Pro is designed to extract the vertical frame clock from an external video sync signal. This signal should be NTSC or PAL composite video at the standard sync level of 4-volts peak-to-peak. The V16Pro also works with "Black Burst Sync", if its level is high enough. Black burst sync is generally well below the C-Sync level, which is approximately 1-volt peak-topeak. Signals at this level should not be terminated with the 75-Ohm terminator.
Rear DIP Switches 75Ω Termination The first switch is used to terminate the sync input connector. Down (ON) will apply 75Ω termination. Up (OFF) will remove this termination. Terminated No Termination C-Sync Blackburst Normal Operation In Reset Sync V16Pro The second switch configures the V16Pro to receive either Blackburst or Composite Sync (C-Sync). Down (ON) will configure for C-Sync. Up (OFF) will configure for Blackburst. Reset will restore certain settings back to factory defaults.
Firmware The V16Pro’s operating system is called ScriptOS. It is stored in internal memory. Occasionally we publish updates, which are available for free download on our website. The procedure for updating the OS is as follows: 1. Unplug the power cable from the back of the unit. 2. Obtain the OS.NEW file from our web site or from customer service. 3. Copy the OS.NEW to a flash card. This file should be the only file on the card. 4. Insert the flash card into the slot in the back of the unit. 5.
V16+ or V4+ Compatibility One of our goals in designing these show was to make then a drop-in hardware replacement for the earlier V Plus series. So if you’re already familiar with the V Plus family (or are replacing one in an existing installation), you’ll be pleased to find that you already know a lot about these show controllers. Although you’ll need to import your scripts to take advantage of the more advanced WinScript Live! Programming environment, your hardware should be good to go.
V4Pro V4Pro Figure 9- Front View Figure 10 - Rear View Specifications Size and Weight: Power: V4Pro Standard 2U rack mount (3.5" x 17" x 10.5"), 10 lbs 12 VDC at 3 amps. An external power supply is included with the V4Pro and will provide the required input power. The power supply is rating is 100 to 250 VAC, 50 to 60 Hz, 25-watts maximum.
Power barrel jack Ethernet Jack A Ethernet Jack B Serial Ports: (4) RS-232C, RS-422/485, individually configurable 300 baud – 115.2 Kbaud 7, 8, or 9 Data Bits 1 or 2 Stop Bits All parity types software MIDI MIDI input and output ports Opto Inputs: (16) Each input is software configurable for voltage or contact-closure operation. Input voltage range is 5-24VDC. Misconfiguration or reverse polarities will not damage inputs. Trigger latency < 1 frame (33.3ms @ 30 fps).
EN 61000-4-2, Electrostatic Discharge, Immunity Compliance EN 61000-4-3, Radiated Electromagnetic Fields, Immunity Compliance - 80 MHz to 2.
VCore Figure 11 - Front View Figure 12 - Rear View VCore Page 132
VCore Figure 13 - Top View Figure 14 - Bottom View VCore Page 133
Specifications Size and Weight: 8” W x 4.75” H x 2” D (20.32 cm W x 12.07 cm H x 5.08 cm D), 2RU 3 lbs. (1.
Setting VCore IP Address The three different ways to set the IP address are listed below. DHCP (Automatic Assignment) Connect to your existing network. Make sure DIP switch position 1 is "ON" The "Network/Config" LED will turn green when a valid IP has been assigned. Manual IP Set Set DIP switch 1 to "OFF" Check that "Network/Config" LED is yellow. If it is not, toggle DIP switch 1 "ON" then "OFF". 3. Click 4. Click on the line for the "Broadcast" from the VCore.
8. 9. If your device cannot be reached, try clicking "Send Again." If it still cannot be reached, try a different IP address by starting again with step 2. USB or Serial Set 1. 2. 3. 4. 5. 6. Set DIP switch 1 to "OFF" Open "AMI-Terminal" from the "Tools" menu in WinScriptLive or from start menu. Click on "USB" or "Serial" radio button Click on the "Network" tab and select the "Set" radio button Type in desired IP address and click on the "IP" button.
Ethernet Ports There is one Ethernet port available on the VCore. For additional information on configuring and using Ethernet see the sections on Ethernet and Networking Primer at the end of this manual. For Cable pin-out, see the Ethernet section of the V16Pro manual. The protocols available on the VCore are currently: Ethernet IP Client (CIP), TCP Client, TCP Server, ModBus TCP, HTTP (Custom web pages), FTP server, DHCP, NTP, and SMTP Client. USB The USB Port is used for programming and Live Mode only.
Digital Inputs Input Connector The VCore has 4 inputs that can control the show operation Two forms of inputs can be applied to Inputs connector: Voltage Inputs, and Contact Closures. When a specific input on the VCore is software configured for Voltage Inputs, power for the connection is provided by an external source (in-rack power supply etc.), but when the input is configured as a Contact Closure, power is taken internally from the VCore.
Input Wiring Connecting a Voltage Input Attach the wire from the Input signal pin to the + terminal of the external power supply. 2. Connect the negative terminal of the external power supply to one of the terminals of the contact closure or push button. 3. Connect the appropriate Input Return pin to the other terminal of the contact closure VCore 1. Figure 15 - Sample connection for a Voltage Input to Input1 of the Parallel Inputs connector.
Connecting a Contact Closure 1. Attach the appropriate wire from the Input signal pin (pin 1 for Input1, pin 2 for Input2, etc.) to one of the terminals of the external contact. 2. Connect the appropriate Input Return pin to the other terminal of the external contact closest to the word "inputs" Figure 16 - Sample connection for a Contact Closure Input to Input1 of the Parallel Inputs connector.
Digital Outputs Configuring Outputs The VCore provides 4 Dry-Contact Relay Outputs for discrete control. The initial state of each output may be configured by WinScript Live to be open or closed when the script is started. VCore The back panel outputs are configured by WinScript Live software. Select Resources command from the main menu bar then select Outputs. The window shown below opens. You may change the name, define the initial state of the output, and add a comment to describe the output’s use.
Wiring Outputs Non-inductive load Non-inductive loads are resistive. Incandescent bulbs, LEDs and filament lamps do not require additional hardware. Loads that do not have inductors, coils or transformers are non-inductive loads. 1. Attach the appropriate Output pin (pin 1 for Output1, pin 2 for Output2, etc.) on the Parallel Outputs connector to the positive terminal of the external power supply. 2. Connect the corresponding Output Return pin (pin 5 for Output1, Pin 6 for Output2, etc.
Inductive loads 1. Cconnect the appropriate Output pin (pin 1 for Output1, pin 2 for Output2, etc.) on the Parallel Outputs connector to the positive terminal of the external power supply. 2. Connect the corresponding Output Return pin (pin 5 for Output1, Pin 6 for Output2, etc.) to the positive terminal of the device that is receiving the output signal. 3. Connect the negative terminal of the device that is receiving the output signal to the negative terminal of the external power supply. 4.
LED Indicators Script/Comm - usually solid green, frequently solid yellow LED Connection Off No script is loaded, Script failed to load Solid Green Script is loaded and running Fast Blinking Red SD card for script removed or not detected Red Single Blink or Solid Red Invalid Communication from device or no response from device Yellow Single Blink or Solid Yellow Valid communication to external devices Network/Config - usually off, frequently green LED Connection Solid Green Valid IP address i
Power Supply The VCore includes an external universal power supply that allows connection too many domestic as well as international wall voltages (110VAC, 220VAC, 200VAC) without special configuration. The VCore uses a threaded 5.5 mm barrel connector as its power input. The DC power requirements are 12-18 VDC at 3.3 Amps The power supply that comes with the VCore has the following specifications: Input: 100-250VAC, 50-60Hz, 0.7-0.3A VCore Output: 18 VDC @ 3.
Closure Reset Will restore certain settings back to factory defaults. These settings include: IP Address, Date/Time and related time zone configuration, NTP, SMTP, E-mail Settings, and Script Variables stored using "Save Variable." To apply the reset, flip the switch up into the "OFF" position. Leave in this position for about 1 minute. Flip the switch down again and power-cycle the VCore. Note: Script Variables take the longest to clear. After a few seconds, most settings will be cleared to defaults.
Ethernet Step by Step The following discussion and example will provide a view toward networking as it applies to show control. This information will provide a basic understanding and useable example on which to build a show control network with the show controllers. Ethernet is a high-speed serial communication standard that involves both hardware and software.
different from a RS232 connection in the fact that Ethernet requires addressing and controls that go far beyond a simple dedicated serial connection. Devices such as hubs, switches and routers make up the network itself. The purpose of the network is to permit as many devices possible to be connected together. Just think of how your may PC be connected to the one down the hall or even to mine way over here or remain connected to mine if I go half way around the world.
IP Addressing If we think about the connections to a network, we will need to know how the devices know where they are and how they find each other. The method most commonly used for Ethernet networks is the Internet Protocol (IP). IP uses addresses assigned to devices in the same way your home address is used by postmen to know what mail is to go to your house. In the Ethernet network, the IP address is divided into groups like a home address is divided up for easy reading.
servers and gateways that need an IP address down low in the address range (1-99) and devices to control such as the show controllers, video and audio machines, higher in the address (101-199). As you build a bigger and bigger network make a network IP map or list, as this will save you lots of time when tracking down issues. We can now set the PC Ethernet port parameters. Network A (Point-to-Point) The point-to-point connection is the simplest network configuration.
monitors together. You may have several network connections here so look for the one that refers to your local area connection that is not wireless, 1394 or a modem. You will need to identify the connection that controls the Ethernet port on your PC that will in turn be connected to the show controller. This will take some understanding of your PC configuration. Next, right click on the icon that control your Ethernet port and go to Properties menu item and click to open that window.
Ethernet Step by Step Page 152
Show Controller Configuration The configuration of the show controller should be setup by default. If changes are needed or if parameters need to be verified, then go thru the following steps to understand how to configure the port parameters. Turn on the power to the show controller and allow it to boot and load a script from the flash card it is present. Press the menu wheel to access the menu system. Spin the menu wheel to highlight the Network menu item. IP address: 192.168.000.254 Subnet Mask: 255.
You can alternatively just click on the product’s entry if it is automatically found with our product scan utility that runs upon opening up the window. Network B IDs With WinScript Live open, close all the open windows except for the script. If you notice the far left side of the window, you will see a vertical menu list. On this menu you will see an item called Devices. Click on it to open the "Devices" configuration form.
Ethernet connection is selected you will see the other parameters mentioned before. Select Ethernet, port B and pioneer protocol format. Now this is where you will link the IP address with the device name. Enter the IP address you want to use and for our example use 192.168.0.101 for the DVM7400-1 and 192.168.0.102 for the DVM7400-2. In all cases use the UDP port number of 2638. One final step remains and that is to assign each of the DVM7400s an IP address.
Try It Out Now that the hardware is setup, the next steps are to write a script, load it into the show controller then enjoy the show. If you wish to use a ready to run script, you can download the "EthernetStepByStep" script from our web site. If you have only one DVM7400 you can use this script as a starting place and remove the references to DVM7400-2 from the "Devices" and "Sequences" forms. This script is very simple and is designed to show off the Ethernet network capability of the show controllers.
Scheduler (Web-based) Schedule files are text files with a .xml extension. Schedule files can be created in any editor and placed on the compact flash card. The following section describes using the web-based interface to create a schedule file. The example that follows will use the V16Pro and will apply equally well to the entire show controller family. Getting Started Using a web browser, enter the IP address of the V16Pro into the address bar. The admin user must be logged-in to edit schedule files.
Enter the name of the schedule and click “Create” Select the schedule file to edit and click “Edit” New schedule files have no entries. Click “New Line” to create a new entry in the schedule.
Editing Schedule Entries Click “Edit” to change the new entry created. Sequence: The name of the sequence to start Start time: The time from 00:00 to 23:59 to start the selected sequence Repeat Period: Select whether the entry should repeat, and how often Start Date: The date to start the selected sequence. If this entry is set to repeat, this is the day it will begin on. Scheduler (Web-based) Page 159 Scheduler The entry is empty when it is first created.
In this example, the sequence “Turn On All Outputs” will start at 7:30am every day starting on April 21st, 2009. Click “Save” to save changes to the entry. The list now shows the entry that starts the sequence “Turn On All Outputs” and another entry that was created to turn off all outputs every day at 4:30pm (16:30). When done with this schedule. Click “Schedule” from the links at the top to display the schedule selection menu.
Scheduler Select the schedule to use and click “Set Active”. The active schedule will always be shown on this page.
WEB Server Quick Start This quick start will demonstrate how to connect to the web server from your computer, use the configuration web pages provided, and walk-through how to setup a web page for your customer. This quick start assumes that theV16Pro is used and is configured using factory settings and the original Compact Flash card provided. This example applies equally well across the entire show controller family.
Step 2: Configuration Select the "Web Server" link to display web server settings. The following screen shot shows this page. Set the customer login name to "customer" or another name of your choice. Set the customer password. Leave the other settings as they are and click "Apply". These changes will occur immediately and there is no restart required. Select the "Logout" link to return to the login page.
This page demonstrates how to start sequences, turn on and off outputs, and set the value of variables in the currently running show. You can modify this page to make an easy to use interface for the customer. To modify this page, the file "home.php" on the Compact Flash card must be changed. You can do this by removing the card from your show controller and placing it into your computer’s card reader. Copy the file "home.php" to your computer and open it in your favorite HTML editor.
Hypertext Transfer Protocol The show controller’s have a built-in HTTP server for serving web pages to remote web clients. By default, the server is available on both Ethernet ports using TCP port 80. The server can be disabled from one or both ports to prevent unauthorized access to this service (see the section on Web Server Configuration).
Show Controller Web-Script The show controller’s HTTP server supports a scripting language with a similar syntax to the widely used PHP language. This syntax is recognized by many modern HTML editors and therefore will not interfere with the design of a web page. Although the syntax is similar, the show controllers do not support the PHP language. Web-Script Blocks A single web-script file may have many web-script blocks but no single block may contain over 350 characters.
Variables There are three global variables: $_POST, $_ENV, and $_SERVER. These variables are used in a similar way to their PHP counterparts. The show controller web-script does not support local variables and does not allow the value of a variable to be changed directly (see the section on Functions). The $_POST variable is used to access the value of data submitted to the server by an HTTP POST request.
$_SERVER index name Description dnsb The DNS server address of port B dhcpb The state of the DHCP client for port B "checked" = enabled "" = disabled NTP ntpa The state of the NTP client for port A "checked" = enabled "" = disabled ntpb The state of the NTP client for port B "checked" = enabled "" = disabled ntpserver The address of the NTP server (i.e. "pool.ntp.
$_SERVER index name Description example: "email@address.com" HTTP httpa The state of the HTTP server for port A "checked" = enabled "" = disabled httpb The state of the HTTP server for port B "checked" = enabled "" = disabled httppage The name of the default HTTP server page custname The customer user name custpass The customer user password Functions The show controller server script has built-in functions that are used to configure settings, control the show, and display values.
Name Params Description works if no data has been sent. requirelogin 1. Minimum user level that is required to view the page Use this function before any data is sent to ensure the user has the proper access level. See $_SERVER["level"] for access level values and their meanings. login 1. user name 2. password Use this function before any data is sent to allow a user to login. The login function requires cookies to be enabled in the user’s browser.
Name Params Description page to load when no page is specified by a request setcustauth 1. The customer user name 2. The customer password Set the customer user name and password for the HTTP server login settime 1. The time. See $_SERVER["time"] for formatting. Set the current time setdate 1. The date. See $_SERVER["date"] for formatting. Set the current date setntpjack 1. The Ethernet jack. Set to "A", "B", or "disabled" Set the Ethernet jack to use for NTP setntpserver 1.
Function Params A function parameter can be a string, number, variable, or combination thereof. following table defines these parameter types Type Usage String A string is any combination of double-quoted values and hex values.
Web Server Configuration The web server can be enabled or disabled on any of the Ethernet ports. Follow the Quick Start section to login to the administrator web pages and display the Web Server Settings as shown: Ethernet Jack(s) – use these checkboxes to enable or disable the web server on the specified ports. Default Page – this value specifies the page that will load when no page is specified by an HTTP request Customer Login Name – a login that only provides access to web pages for the customer.
Serial and Ethernet Control The show controllers can be controlled through the RS232 programmer port, USB port or Ethernet ports A or B. Any controller that is capable of sending ASCII characters is capable of controlling the show controller using the set of serial commands described below. Command set All the commands sent to the show controllers are two characters, ending with a carriage return <0D>. The commands may have the Get/Set function and in those cases the user supplies the optional information.
Message Response: SMPTE vx.xx<0D> Example: Send Command: ?S<0D> Response: v1.23<0D> ES Enable SMPTE Description: This command will enable SMPTE module. Comments: If the SMPTE module is configured to Generate, this command will cause the clock to start generating at the configured Preroll time. If the SMPTE module is configured to Read, it will start listening for SMPTE time code on the SMPTE Input.
Example: Send Command: PS<0D> Response: R<0D> IS Pause SMPTE (Immediately) Description: This command will pause the SMPTE clock immediately. Comments: When paused, the SMPTE clock can be resumed by sending an Enable SMPTE command. Get command: IS<0D> Message Response: R<0D> Example: Send Command: IS<0D> Response: R<0D> CT Get/Set SMPTE Time Description: This command will get or set the current SMPTE time. If the parameter is excluded the command is executed as a get command.
Set command: (0-49)ID<0D> Message Response: R<0D> Example: Send Command: 1ID<0D> Response: R<0D> IP Get/Set IP address Description: This command will get or set the selected port IP address. Port A or B may be selected Comments: Where xxx is a decimal number in the range of 0 – 255. Get command: (A or B)IP<0D> Message Response: xxx.xxx.xxx.xxx<0D> Example: Send Command: AIP<0D> Response: 192.168.0.254<0D> Set command: xxx.xxx.xxx.
Message Response: xxx.xxx.xxx.xxx<0D> Example: Send Command: GW<0D> Response: 192.168.0.1<0D> Set command: xxx.xxx.xxx.xxxGW<0D> Message Response: R<0D> Example: Send Command: 192.168.0.1GW<0D> Response: R<0D> DA Get/Set Date Description: This command will get or set the calendar date. Comments: mm/dd/yyyy Month/Day/Year.
US Get/Set User Name Description: This command will get or set the user login name. Comments: The default name is admin. Get command: US<0D> Message Response: (current login)<0D> Example: Send Command: US<0D> Response: admin<0D> Set command: (new login)US<0D> Message Response: R<0D> Example: Send Command: adminUS<0D> Response: R<0D> PW Get/Set Password Description: This command will get or set the password. Comments: The default password is password.
Example: Send Command: 1SD<0D> Response: R<0D> DT Get/Set DST Type Description: This command will get or set the status of the daylight saving time Type. Comments: Example are: 1 = US, 2 = Universal, 3 = Australia, 4 = Europe. Get command: DT<0D> Message Response: current setting<0D> Example: Send Command: DT<0D> Response: 1<0D> Set command: 1DT<0D> Message Response: R<0D> Example: Send Command: 1DT<0D> Response: R<0D> TZ Get/Set Time Zone This command will get or set the Time Zone.
Message Response: R<0D> Example: Send Command: "Display Text"|4|10DI<0D> Response: R<0D> LO Get/Set Longitude Coordinates Description: This command will get or set the longitude coordinates. Get command: LO<0D> Message Response: current value<0D> Example: Send Command: LO<0D> Response: 81.0<0D> Set command: 81.0LO<0D> Message Response: R<0D> Example: Send Command: 81.
Send Command: var1|"Hello World"VA<0D> Response: VT R<0D> Toggle a Boolean Variable Description: This command will change the variable state to the opposite state Comments: 0 to 1, 1 to 0, Off to On, On to Off. Command: var1VT<0D> Message Response: R<0D> Example: Send Command: var1VT<0D> Response: R<0D> RJ Reset Sequence Description: This command will reset a sequence to the start. Comments: If the sequence is not triggered or setup to loop the sequence will be in a waiting condition.
Comments: The sequence number is the first field in the form. WinScript Live assigns the number. Command: (sequence name or number)SL<0D> Message Response: R<0D> Example: Send Command: mySeqSL<0D> Response: R<0D> PL Run a Sequence Description: This command will run a sequence from the currently selected script. The sequence is identified by its number. Comments: The sequence number is the first field in the form. WinScript Live assigns the number.
SS Send Message Description: This command will send a message to the selected port. Comments: Any valid port may be used. Command: (port)|"message test"SS<0D> Message Response: R<0D> Example: Send Command: Sport1|"Hello World"SS<0D> Response: R<0D> XX Reboot Description: This command will perform a hard reboot of the system. Comments: The show controller will reload and run the selected script.
NE Enable/Disable the NTP Function Description: This command will enable or disable the NTP function and will get the current status.
Example: SF Send Command: TS<0D> Response: -5<0D> Get/Set Active Script file Description: This command will get the current script file or set the script to be used by the show controller. Comments: If there are multiple scripts on the CF card the user may select one to become active. Get command: SF<0D> Message Response: (current file name) <0D> Example: Send Command: SF<0D> Response: sequences1.ami<0D> Set command: "scriptname.
Example: Send Command: FT<0D> Response: 2009-02-13 23:31:30<0D> Get command: "scriptname.ami"FT<0D> Message Response: yyyy-mm-dd hh:mm:ss<0D> Example: Send Command: "sequences1.ami"FT<0D> Response: 2013-02-14 15:10:54<0D> DH Enable/Disable the DHCP Function Description: This command will enable or disable the DHCP function and will get the current status.
Example: Send Command: ASJ<0D> Response: R<0D> SA Get/Set the SMTP Address Description: This command will get or set the SMTP address. Comments: A text string such as mail.alcorn.com Get command: SA<0D> Message Response: (current address)<0D> Example: Send Command: SA<0D> Response: mail.alcorn.com<0D> Set command: (new address)SA<0D> Message Response: R<0D> Example: Send Command: mail.alcorn.
Get command: SU<0D> Message Response: (current name)<0D> Example: Send Command: SU<0D> Response: mylogin<0D> Set command: (new name)SU<0D> Message Response: R<0D> Example: Send Command: mynewloginSU<0D> Response: R<0D> SW Get/Set the SMTP Password Description: This command will get or set the SMTP password needed to log onto the SMTP server. Comments: The default is password. Get returns E current password is not returned.
MA Send E-Mail Description: This command will send the e-mail Comments: || Command: ||MA<0D> Message Response: R<0D> Example: Send Command: control@MyShow.
HP Get/Set the HTTP WEB Page Description: This command will get or set the default HTTP WEB address. Comments: The default WEB page is index.html Get command: HP<0D> Message Response: (currentwebpage)<0D> Example: Send Command: HP<0D> Response: myWebPage.html<0D> Set command: (myWebPage.html)HP<0D> Message Response: R<0D> Example: Send Command: myWebPage.htmlHP<0D> Response: R<0D> RI Get/Set Redundant IP Address Description: This command will get or set the Redundant IP address.
Set command: (n)RX<0D> Message Response: R<0D> Example: Send Command: ARX<0D> Response: R<0D> MS Get/Set Master Slave Message Description: This command will get or set the Master Slave Message. Comments: “1” represents force to slave, “2” represents force to master, and “0” represents force to be stand alone (disabled).
JP Jump to Timecode Message. Description: This command jumps a sequence to a specific point in time. Comments: Does not change SMPTE synced sequences Command: |JP<0D> Message Response: R<0D> Example: Send Command: TMS <0D> Response: 5000<0D> Set command: (nnn)TMS <0D> Message Response: R<0D> Example: Description: Jump sequence "MySequence" to timecode 00:00:01.00 Send Command: MySequence|00:00:01.
output button sequence percent label timecode lcdstring date/time EX 8 9 10 11 12 13 14 15 Execute a command Description: This command will run any of the commands that can be used in a sequence. Comments: All command parameters must be supplied as if in the WinScript Live form and separated with the pipe "|" character.
Product File Creator Tool The "Product File Creator" tool found under the "Tools" menu of WinScriptLive can be used to get started creating a product file. This can be used for adding new product files to WinScriptLive. The following tutorial is only in reference to creating a product file through the use of this tool built into WinScriptLive. For more advanced product file creation and editing, see the section directly after this one, “Creating/Editing Your Own Product File via XML”.
On the next screen, check that the device has a serial port. It will then show fields to specifiy the communication protocol info for the serial port, that can be edited depending on nature of the device you are tying to create a product file for. Leave the fields as their default, as they outline accurately how the Digital Binloop HD commincates with its serial port through the ASCII protocol. Product Files On the next screen are options for the Ethernet port.
Next, we are going to set our only data parameter, the integer that determines which track on the first reproducer card, R1, to play. The outgoing message to the binloop will be “%dR1PL\x0D”. Essentially, this is similar to a printf statement in C. %d refers to the integer that signifies which clip to play that we just specified as a data parameter, while the R1 signifies which card, and the PL signifies the Play command, with the \x0D terminator that signifies the end of the command or statement.
After creating our event, click Next until you hit Save and Finish. Save your .prd file within the /Product Files/ directory, which should be be opened by default. Product Files Next, go to the Device Wizard by right clicking on a box under the “Devices” tab. Next, click “Reload Product Files”. If you saved the file in the correct directory and followed the guide correctly, it should show up as under the following fields.
Creating/Editing Your Own Product File via XML The "Product File Creator" tool found under the "Tools" menu of WinScriptLive can be used to get started creating a product file. This can be used for simple product files. The following tutorial is only in reference to directly editing the resulting text product file rather than using the "Product File Creator" tool. Product files can be created or edited on any non-document mode word processor including Notepad.
Product Section The beginning of the product section is for information and WinScript display only. This includes Make, Model, Author, Description and Version. Hardware Section This section defines information about the actual product’s available communication ports and type.
The details about each port are stored as a "port_option". If a device’s port uses multiple baud rates, add a "port option" for each baud rate configuration. In the case of ethernet, the IP address and UDP port is used only as a default parameter and not as a required connection IP. Copy and Paste additional "port" sections as needed. Optionally, you can add an incoming start character or an incoming end character to aid in the processing of Incoming messages.
Command Parameters Each command will have a set of parameters. These correspond to Data1, Data2, Data3, etc, in WinScript Live. The "data" number is determined by the param’s location in "params" section. Name: The parameter’s name can be used later to have operations performed on it or to be placed into the final message Description: The description will appear in WinScript Live’s event wizards to aid the user in knowing what to type into Data1, Data2, etc.
Rule Description Parameters Integer An integer value Min and Max (optional) Decimal A decimal value Min and Max (optional) String A string value in double quotes OR in the style h01 Regexp (optional) Bool True, false, yes, no, 1 or 0 DateTime Real time and/or date Timecode In the form 00:00:00.
! Logical Not (use for bool types) * Multiply / Divide - Subtract + Add & Concatinate >> Shift Right << Shift Left These are in order of operator priority. In other words, in the operation: MyParam + 2 *3 The multiplication of 2*3 would occur before the addition of "MyParam". In addition to operators, functions can also be used. In the table below, the values in brackets < >, can be a static value, or reference another operation name or a parameter name.
For a boolean value, false returns true. compl() a parameter name or a number written as an integer or hex value written as 0x01 where 01 is the hex value of 1 Returns the bitwise complement of a value atoi() an ASCII string such as "1234" Converts ASCII to an integer.
Replace(,,) to find in value to find value to stuff in A string with the values replaced accordingly-- Note: Use spaces between commas when using this function: ie: Replace("test", "st" , "ll") NOT Replace("test","st","ll") Note: the Printf function uses a method similar to the "C-style" printf.
Format: The "printf" style statement that defines the outgoing message. (see table in the Functions section for details) Here’s a breakdown of the format: "%sPL\x0d", myParam The %s defines the spot that the parameter, "myParam" will be inserted. The "s" means that "myParam" is a string and will be inserted as a string. The PL is simply the characters ‘P’ and ‘L’. The \x0D is the hex character 0D, more commonly known as a carriage return.
Incoming: indicates that this is an Incoming message. If this parameter is not present, outgoing is assumed. Format: Using this param indicates that you are using the printf style Regexp_format: using this param indicates that you are using the regular expression style An Incoming message’s format can be written in one of two ways: "printf style" or "regular expressions" style.
Character groups any 1 character from the group Counts Applies to previous element [aAeEiou] any character listed from [ to ] [^aAeEiou] any character except aAeEio or u [a-fA-F0-9] any hex character (0 to 9 or a to f) .
Init: An initial value for the variable (optional) Setup: If “True” specifies that this will appear in the device setup screen Comment: The comment that will appear in WinScript. Rules: The "Rules" are identical to the "Rules" for a "Parameter". See "Parameter Rules" section above for more details. Next, specify what portion of the Incoming message you would like to store and in what variable.
A comment may also be set if desired. TCP Status Variable In addition to the "Error" special device variable, you can also create a special, "TCPStatus" variable that will be set when the state of the TCP connection for that device changes. Simply add the "TCPStatus" variable to your protocol file, and it will fill automatically. Setup Messages (TCP Only) Some TCP protocols require a series of "login" message that must take place once before the controller can send commands to the device.
The prompt for the above example would look like this: Username> myname Password> password Thank you! You are visitor number 243! Each "message" above specifies either an incoming or outgoing message. For incoming messages, "timeout" and "regexp_format" are valid parameters. For outgoing messages, "format" is the only valid parameter. Operations (such as +, -, left(), right(), etc) may be done in the "format" field directly.
Any number of device variables can be "pulled out" of any message within the "setup_messages" section. This sequence of setup_messages will occur ever time a new TCP connection is made. If the incoming messages received are not as expected, the TCP connection is closed and the device’s error Boolean Type Variable is set. If the command attempting to be sent has retries, the TCP connection will try to connect again and re-send any setup_messages data.
Live Mode Protocol Live Mode communication is used by the show controllers to give updated information on the state of variables, inputs, outputs and other resources. This information is not polled, but instead requested once and then the show controller will send updated information as that resource changes. This method is used by Touch to retrieve status information and can also be used by third party drivers.
s - the ASCII letter 's' - the zero indexed number of the sequence in the "sequences" view of WinScriptLive - The sequence running state: Stopped =0, Running = 1, Paused = 2 - The sequence's current time (in frames) .... - The event indexes most recently executed by the sequence. Note: and items are sent if the show controller has received a "resource request" for that particular sequence.
Message Ack Response: R Watch Sequence #100 (To get frame counter and events recently executed) Command: s|1|99|-1|-1LV Message Ack Response: R Watch V16Pro's integer variable V16Pro.Hours (variable #12 in V16pro's "Device Variables" list) Command: v|1|11|0|-1LV Message Ack Response: R Watch V16Pro's Timecode variable V16Pro.
Resource Status Examples V16Pro's LTC Timecode Variable #1 is 00:00:00.02: v|0|0|00:00:00.02|-1LV Device #8 variable number #100 is 1234 v|99|7|1234|-1LV User variable number #100, list (array) position 8 is 456 v|99|-1|456|7LV Input #5 status is "Off" i|4|-1|0LV Input #5 status is "On" i|4|-1|1LV Resource Status Frequency Resource status is sent immediately following a "resource request" for that resource, or whenever that resource's value has changed.
Troubleshooting Tips The following table provides some possible reasons for behavior of the show controller or WinScriptLive. Please see our website for more frequently asked questions and knowledgebase. Possible Cause Compact Flash card failure Firewall blocking port 2638 or 2639 if using Ethernet Can't paste/insert in a new row in WinScriptLive. It copies over existing row.
WinScriptLive Troubleshooting Tips Page 220