• Your Cart Is Empty!

We’ve just posted our first white paper!

When Gareth travels to universities for seminars, he brings along his Scenic Automation Seminar handout for all the attendees. It’s chock-full of automation goodness, including machine design, control considerations and a look around the industry at available systems. If you’re interested in checking it out, head over to the new White Papers page of our website and download your own copy.

  Last week we started testing our new Spotline hoist. Royal assembled the drum pieces, put the machine together with the Mayr redundant brake, and bolted the machine to the floor. After doing a little rigging and adding 500 pounds of weight, he hit the switch and let it rip. Here’s a video:   And here’s a video close-up of the machine: Keep an eye out around the end of April for the official new-product announcement!

Back in August, we introduced Spikemark’s WATCHOUT integration which makes it easy to synchronize projection with the motion of automated scenery.  Several theatres have used this new feature to great effect, but I wanted to take a little time today and show how everyone can take advantage of this fun capability. 

DISCLAIMER:  I am not an expert in WATCHOUT, so this small tutorial is written from the perspective of an automation operator, not a projection wizard.

Alright, let’s get started.

Assume that we have a little show with an automated wall panel attached to a traveler track.  On cue, the wall panel will track from Stage Right to Stage Left.  As the panel tracks across the stage, we need to project a graphic onto the panel and have the image move along as if it were glued to the panel.  Here’s a screen shot of the Spikemark cue:


In order for WATCHOUT’s projectors to track an image synchronously with the motorized panel, we need to send the position of the panel to WATCHOUT.  Spikemark will communicate with WATCHOUT over the Ethernet network,so both the Spikemark automation computer and the WATCHOUT production computer need to be plugged into the same physical network.  In addition, the two computers need to have compatible IP Addresses that share the first three segments of the address with unique fourth segments.  I have the addresses assigned as such:

Spikemark computer is


And the WATCHOUT computer is


With both computers addressed properly, we need to tell Spikemark where to send the position data.  In Spikemark select Show Control –> Watchout from the menu.


A dialog pops up with some configuration details that determine what data is sent to WATCHOUT.


From the top the options are:

  1. Server Address:  The IP Address of the WATCHOUT production computer
  2. Server Port:  The port where WATCHOUT listens for incoming data.  By default, WATCHOUT listens on 3040.
  3. Motor List:  Each motor in your show is listed.  If the Active box is checked, that motor’s position information will be sent to WATCHOUT.  In the Watchout Name text box you can enter a name that will be used inside WATCHOUT to identify the motor’s position.  The Spikemark motor name and the WATCHOUT name can map however you like.  For example, we could have called it “Logo Winch” in Spikemark and “fuzzy pink rabbit” in Watchout.
  4. Sending Position Data:  Indicates whether Spikemark is currently sending UDP packets to the address indicated in Server Address.
  5. Update Interval (ms):  The frequency with which Spikemark will send position updates to WATCHOUT.  The number entered here will determine how many milliseconds should elapse between updates, so higher numbers will result in a slower update cycle.  In practice, 30ms is about the fastest rate consistently possible without adversely affecting Spikemark’s performance.
  6. Messages/second:  The number of position updates that are actually being sent to WATCHOUT each second.  This number will often bounce around by 1 or 2 messages.
  7. Include transition rate in messages:  If checked, Spikemark will send WATCHOUT the number of milliseconds that have elapsed since the last position update.  WATCHOUT can use this information to smooth the animation of the image as it tracks with the motor.  This generally results in a smoother visual result, but can be slightly inaccurate.  Feel free to experiment with either setting to get the most appropriate result for your show.
  8. Send Output:  This is a toggle button to turn on/off the data stream from Spikemark.  The data is sent via UDP, which is a connectionless protocol, so there is no harm sending out the packets even if WATCHOUT is disconnected from the network.  UDP packets will blissfully fall into oblivion if the server is not around to receive them so you can start the output stream before WATCHOUT is running.

With Spikemark configured and the Send Output button depressed, we are ready to fire up the WATCHOUT production machine.  Start WATCHOUT and give your show file a name.  As I mentioned when we started, I need an image to be projected on the traveller panel, so our first step in WATCHOUT is to import an image.


I selected a Creative Conners Logo image, which shows up in the Media list.


Now drag the image from the Media list into the Stage window.  You can see the image displayed in the center of the Stage view and it also shows up in the Main Timeline.


With the image on our virtual stage, we need start configuring WATCHOUT to listen for data from Spikemark.  We have to enable an  external source (Spikemark in this case) to control the image position.  Double-click on the image in the Media List and select More Effects and Capabilities.


Then, in the Main Timeline, double-click on the image layer to bring up the Media Cue properties window.  Select the Advanced tab and check External Control of Position, Scale & Rotation.


Our next step is to create a Generic Input in WATCHOUT that has a name that matches the Watchout Name we entered into Spikemark.  We will use the data received from that Generic Input to move the image around.  To add a Generic Input select Input from the Window menu.


From the Input window, click on the little triangle in the upper right corner.  From the menu that appears, select Add Generic Input.


A dialog is presented where you can enter the Name of the input and the Limit of the input value.  This step is important to get correct.  The Name needs to match the name entered in the Spikemark Watchout Output window… exactly, same case, same spelling, etc.  The Limit should match the highest value expected to come from Spikemark.  In this case, our traveler has a maximum forward position of 360”, so we can enter 360.


Press the OK button and then the new Generic Input will be listed in the Input list with its current value set to 0.00.


Now, the next step is to connect the value of the Generic Input to the x-axis of the Image so that the Image will move as the Generic Input value changes.  To link the image position to the Generic Input value we will create a formula in the Main Timeline.  Select the image layer in the Main Timeline, and then from the Tween menu select Position.


This adds a Position tween track below Layer 1 in the Main Timeline.  This is the good part.  Now that we have a tween for Position, on the left side of the track there is a little round button with an “f” inside.  That allows us to write a formula that will link the position of the image to the value of the Generic Input, the value of the Generic Input will be connected to the data stream from Spikemark, the data stream from Spikemark is driven by the position of the scenery.  The knee bone is connected to the leg bone… still with me?  Great, click the little “f”unction button.


In the dialog box that appears, we enter in a formula in the X axis text box.  Since this is a traveler track, we want to manipulate the lateral position of the image, but if it was a flying piece of scenery we could instead control the Y axis of the image.  To use the value of the Generic Input, we simply type the name of the input.  In this case, I’m multiplying the value of the input by 10 to get the image to track the correct number of pixels across the stage.  The multiplier you use can be adjusted to fit the specific show.


We are almost there.  Before flipping the last switch to connect Spikemark to Watchout, try clicking around in the Value column of the Input list.  This will manually adjust the value of the Generic Input and if everything is correct so far, as you alter the Generic Input Value the image should jump to a new X position in the Stage window.


Alright, let’s get the WATCHOUT computer listening to the Spikemark computer.  From the File menu select Preferences.  Then from the Control tab, check the UDP box next to Production Computer Control.


As soon as you click OK, WATCHOUT will start picking up the position data stream from Spikemark (assuming you depressed the Send Output button in Spikemark) and the image will snap back to match its X position with the motor position.  Also, the Generic Input Value should track with the motor position.

Let’s load up cue #2 in Spikemark.  Notice that the current motor position is 0.18” in Spikemark, and that the Generic Input Value in WATCHOUT is 0.175 showing that the two systems are communicating.



Now, let’s run cue #2 in Spikemark.  When it completes, we can see that the image tracked across the stage in WATCHOUT, matching the motor position!



I hope this gives you a little inspiration to create some stunning stage effects.  This tutorial is just a taste of what can be achieved when Spikemark and WATCHOUT are used together in live theatre.  As you start using this feature in production, please let us know how it works for you and send us some video.  We love to see this stuff in action.


  Our customers seem pretty stoked about the new Dataton Watchout integration feature that Gareth added into Spikemark a few weeks ago. Matthew Carleton at Geffen Playhouse just sent us a great video showing how they’re using it for their production of By The Way Meet Vera Stark. It’s pretty exciting for us to see people jumping right into a new feature like this. If you’ve got your own videos, please send them our way. You can email me at  

Front panel of Stagehand AC Have you ever wished that your machine was faster? A quicker pull across the stage for a pallet or a faster rotation for a turntable? Of course, you could always re-gear your machine to get more speed out of it. But wouldn’t it be cool if you could just make the motor go faster? Well, you can. Both the Durapulse and Mitsubishi Stagehands can handle overspeeding up to 200%, so if you don’t need all the horsepower that your motor is rated for, this trick can get you that extra speed you’re looking for. Basically, a motor has a torque rating based on the amount of hertz being delivered. In the default settings, 60 hz provides 100% of torque. Overspeeding is simply changing the settings on the Stagehand so that it delivers more than 60 hz which makes the motor turn faster with a corresponding drop in torque. So if you have a 5hp motor and you want to double its speed (and you can get away with 2.5hp), you send it 120 hz. The motor speed doubles, the torque rating gets cut in half at the maximum speed and you’re all a set. If you have a Mitsubishi Stagehand (with the keypad on the front), you need to change parameter 252 of the VFD. That process is explained in section 4.3 of the Stagehand AC Manual 2.1. If you have a Durapulse Stagehand (keypad on the back), you will need to change parameter 0.04, which is explained in section 4.3 of the Stagehand AC Manual 1.0. In addition to the loss of torque, another downside to keep in mind is that the control signal resolution is also reduced, which makes fine adjustments more difficult. Once your Stagehand is set to produce 120Hz, adjust your maximum speed in Spikemark to allow the motor to run faster in cues. That’s it. Tune in next month for another rollicking good time with Spikemark!    

  For this month’s tip, we’re going to talk about your Stagehand and its firmware. Every Stagehand OEM card has firmware running on the microprocessor and every now and then we release a firmware update with new features and bug fixes. The current firmware version is Revision 10 which has been out for about 2 years, so if your Stagehand is newer than that, you should be all set. Otherwise, here’s how to find out what your current firmware revision is and how to update it. The first step is to see what your version (Rev) you currently have. This is easy – simply unplug and replug your Stagehand. (If you’re using the Stagehand in a show, don’t forget to write down its position or park the unit at zero) The first thing you see on the LCD screen on the front of the Stagehand is something like: Stagehand Rev 10 Hard Reset_ In this example, the version of the firmware is 10. If that’s what you see, you’re all set. If you have a lower number than 10, you should update your firmware. Here’s how: (Huge warning: This does not apply to Stagehand FX’s! You cannot update your FX firmware and if you try, you will ‘brick’ it and you will need to send it back to us for a new firmware installation.) 1. Go to the Downloads page of our website. 2. Click on the Stagehand Updater 1.0 which will download a .zip file to your computer. 3. Click on the Stagehand Firmware rev. 10 link which will download the binary firmware file that you are going to load onto the Stagehand OEM card. 4. Launch “Stagehand Update.exe” 5. Make sure your E-Stop system is running and release the E-Stop button. You can’t update your firmware with the Stagehand in E-Stop mode. 6. Confirm that you have a network cable running between your computer and the Stagehand you wish to update (either via a crossover cable or through a network switch). 7. Enter the IP address of the Stagehand you wish to update (eg. 8. Click the “Firmware File…” button. 9. Navigate to the Stagehand firmware file you wish to use (eg. “STAGEHAND_FIRMWARE_FINAL_REV10.bin”) 10. Press the “Update” button. 11. A few new windows will flash on the screen. 12. After the process is complete, the newly updated Stagehand should reboot in about 30 seconds. During reboot, it should display the new firmware revision number. And that’s it, you’re now running the latest and greatest firmware revision. Final note: If you have an older Stagehand, when you boot it to see what your Rev is, you may not see a Rev number. That means you have a Revision of 4 or lower. In that case, if you want to update your firmware, you would need to send the OEM card back to us and we will update your firmware here in our shop and send it right back to you. Once we’ve updated it to rev 10, you’ll be able to perform any future updates yourself using the steps above.  

    This month we’re going to look at Max Speed; how to determine Max Speed, how the Stagehand interprets Max Speed and what happens when Max Speed is set too high. The Max Speed setting in Spikemark limits how fast a motor can move in a cue. This value must be set no higher than the maximum speed the motor can physically attain when given full power. If you want to restrict speed during a show, you can set it lower than the motor speed at full power (eg. perhaps a winch can move at 5’/second but you want to limit cues to run no faster than 2’/second). To determine the Max Speed for a particular motor, first set your position scale. Then you need to run your piece at full speed, so get your machine ready and clear the deck. In Spikemark, navigate to the Manual Controls module of the Motor Settings pane, select a direction and then run your motor by sliding the manual slider all the way to the right, which will send a full-speed signal to the motor. In the Speed module directly above Manual Controls, the speed that the motor is running at is displayed. Note the speed when you have the slider all the way up. This is the maximum speed the motor can attain. This speed (or anything lower) is what you should enter into the Max Speed field in the Speed module. (Sometimes we take a point or two off just to be safe) Now when you’re programming a movement, if you enter a speed value higher than the Max Speed, Spikemark changes your value to the Max Speed, since it can’t go faster than that anyway. The important part of this month’s Spikemark tip is that the value you enter into Max Speed should never be higher than what is actually possible. We often get tech support calls from customers who enter an artificially high number because they just want the axis to move as fast as possible. The problem with this approach is Spikemark sends the cue to the Stagehand and the Stagehand calculates the total time the cue should take based on the acceleration and speed, even if the speed is not attainable. When the cue runs, the movement doesn’t complete in time because the motor can’t run fast enough, so the Stagehand continues to run the motor at full power until its target position is reached and then stops, but it stops without deceleration because it is racing to catch up with the programmed cue. And no one likes a movement that ends without deceleration. I like to think of it as a business man running late in the morning, racing for the train, and throwing himself through the closing train-car door as the train is pulling away from the platform; there’s nothing leisurely about the motion. Of course, all of this only happens when Abort On Position Error is turned off. If Abort On Position Error is turned on, the cue will fail early in its life cycle, because it won’t take long for the actual position to fall behind the expected position and the Stagehand will abort the movement once the Position Error grows too large. So the moral of this months Spikemark Tip is: Don’t set your Max Speed higher than it can run. Thanks for tuning in and we’ll see you next month!  

  Spikemark About Screen   There will be a more in-depth Spikemark Tip next week, but we have a small but important tip for this week that has come up a couple of times recently and we want get the word out. The tip is: Update your Spikemark installation. That’s right. Update. It’s free and it’s easy. Spikemark has been around for almost 3 years now, and there have been a lot of bug fixes that you may not have if you’re running an older version. Here’s how to do it: Open your installation of Spikemark and check you version number by going to Help > About. That will show you which version you’re running. The current version is 2.6.1, so if your version is older than that, it’s time to update. First, backup your show files to somewhere besides the computer, like a thumb drive.  Then go to our website and click the item ‘The Brains” in the top menu. ( Click the Spikemark Installer link and follow the installation instructions. When it’s done installing, you should check your installation by connecting to your motors and running some cues. That’s it. See you next week!  

    In the early days of theatrical automation (the 1980’s and 90’s – not the Greek era), most of the control gear was designed for manufacturing, which leaned towards set-and-forget programming. When scenery companies started making more sophisticated products, the idea of Position Scale was introduced to make cueing feel more ‘real world’. But Position Scale is an abstraction, and an imperfect one at that, so we’d like to take a minute and explain what Position Scale is and how Position Error is affected by it. Internally, the Stagehand has no idea about Position Scaling, the Stagehand only deals in raw encoder counts. We hide raw encoder counts most of the time in Spikemark, and let the operator describe movements in terms of real-world units by establishing a simple ratio between encoder counts and real-world units. We refer to that ratio as Position Scale. Whenever Spikemark sends a command to the Stagehand that involves position data, it multiples the on-screen value by the position scale to compute the raw encoder counts that the Stagehand requires. This works great 90% of the time, but the abstraction leaks a little bit when discussing Max Position Error. Position Error is the difference between desired motor position and actual motor position. This is calculated several thousand times per second. There will always be some amount of Position Error since the world is an imperfect place, but the software allows the operator to set at threshold for what is ‘normal’ position error and what constitutes a real malfunction. Max Position Error is a setting which is the line in the sand between normal operation and ‘oh boy, we have a problem’. The ‘problem’ could be a disconnected encoder, a physical obstruction, or some other failure. Like every other position parameter in Spikemark, we display this value in real-world units, not raw encoder counts. So you set this value to be something sane like 10″, or 3″, or 4 degrees. A value that makes sense for your rig (eg. “if my wagon is ever more than 3″ off during a move, it probably hit a screw in the track”). Internally the Stagehand uses the LM628 motion chip from National Instruments. This chip has a 16-bit register for storing position error. That means it can store position errors from -32,767 thru 32,768. So… when setting aMax Position Error, the value can’t exceed the raw encoder value of that range. Therefore, when Spikemark calculates the Max PositionError it has to limit the product of Position Scale * Max Position Error to some value that equals less than 32,767. The higher your position scale, the lower the allowable value for Max Position Error, because after the ratio is applied the final raw encoder count value can’t be more than 32,767. In earlier versions of the firmware, we had a bug where max position error was being incorrectly limited to 4 significant digits, so the max position error was 9,999. We fixed that bug and opened up max position error to the full value of the 16-bit register, but that was only done in the past few years so you may need to upgrade your firmware if you are running anything lower than rev-10. So now you now more than you thought was possible about Position Scale and Position Error. If you have additional questions, feel free to email us at Thanks for tuning in to this month’s Spikemark Tip!