• Your Cart Is Empty!

It is hard to believe that Spikemark 4 was released 19 months ago – and more mind numbing that in that same time we have released 19 updates!  (plus a few new machines, controllers and custom projects along the way…) As of this writing Spikemark 4.4.0 is current and out in the world.  Although we have been releasing new features and bug fixes more than monthly, we have missed the boat a little on the paperwork front.  As we are toiling away in front of screens writing manual updates and super cool screenshots, we thought taking a few minutes to get all the features and bug fixes into writing.


Below are the features added to Spikemark 4



Motors can be grouped together for synchronous operation and cross-fault detection


Auto-Tune wizard for Pro and Apprentice allows for Auto-Tune parameters to be set via Spikemark, and run the Auto-Tune sequence


Movement analysis for Pro and Apprentice allows for graphing of current and frequency over the travel distance. 


Pro and Apprentice can now reset drive faults via Spikemark


Motors now include a MIN JOG parameter that controls the slowest a motor may move when jogged manual


Grouped movements can now take advantage of Analyze Movement


Grouped motors can now jog as a group with group-fault protection


You can now move to an arbitrary position by right-clicking on a motor header and selecting “Load Position” and then “Run To Position”


User authorization






The ability to load a default show


The ability to load a motor list from a different show file


IP addresses to log file


Position lag time


Pendant firmware with battery monitoring fix


Pendant jogging now follows the nonlinear curve and obeys min and max jog percent


Drive parameter and fault code cleanup


PosiStageNet motor output


Ability to send OSC messages


Ability to send motor position data over OSC


Pushstick Mini to motor library


Ability to increment a target position


Position linking fixes


Installer now displays updates


Pendant – New Firmware – V3


Pendant – Ability to calibrate Pendant Joystick


Pendant – Group motion functionality and features


Pendant – Major UI changes to maximize screen real estate and large shows


OSC position scale now allows negative values


New From Show feature changes


Let’s take a look at the new key features, broken down by version, in bit more detail.


A group is a collection of two or more motors that monitor each others faults and stop if something is wrong. Each motor in a group creates a special connection to Spikemark that allows it to know if another motor in its group has experienced an issue so it can stop itself. This results in small position deltas between the grouped motors when one faults, making it ideal for multi-motor lifts.  Additional Group Motion features and fixes have been introduced after 4.0.0, but this is the big change.

You can read all the details here:


Drive communication is an RS-485 serial link between the Variable Frequency Drive (VFD) and the Stagehand Control Card (SCC) inside a Stagehand. The VFD and SCC communicate by the Modbus protocol allowing the SCC to gather information and send it to Spikemark. With this modbus link Spikemark can view detailed drive faults, reset the VFD, auto tune and analyze the current and frequency for a given movement.  

You can read all the details here:

The serial link allows opens up the following features for any Stagehand Pro or Stagehand Apprentice controller:


The auto-tune wizard for pro and apprentice allows for auto-tune parameters to be set via spikemark, and run the auto-tune sequence


Movement analysis for pro and apprentice allows for graphing of current and frequency over the travel distance. 


No more need to dive under the table or to another room when a drive fault occurs.  Any Stagehand Pro and Apprentice can now reset drive faults via spikemark.


You can now move to an arbitrary position by right-clicking on a motor header and selecting “Load Position” and then “Run To Position”.  This feature allows the operator to move any motor (or group) to any position, reducing the need to have “burner” cues in the grid for independent moves.


User Authorization allows Spikemark editing to be restricted through user permissions.


Presets link to a specific cue, and are a super cool way to recall a cue.  The Preset displays the name of the Preset, what movements are executing and if there are multiple steps (linked cues). In addition there is also a mini stage model view displaying only the axes moving in the specific Preset. 


The Pendant puts the power of Spikemark in your hand – you are no longer chained to the automation station and computer.


You can now point Spikemark to open a specific show file each time it starts.


Position Lag is another way for Spikemark to detect encoder loss and halt motion.  You can read all about it here:


Spikemark now supports PSN position output to expand on integration with a wider range of media server platforms.  You can read more about it here:


Open Sound Control (OSC) is an open protocol for transmitting data between computers. Spikemark can send these OSC messages to any device that supports UDP OSC such as QLab, ISADORA or ETC EOS.  Additionally Spikemark can send real time motor position data using the OSC protocol like it does with Watchout ( and PosiStageNet ( 

Add to Position

By right clicking on the movement position box you are now able to “Add to Position”.  Let’s say you have a wagon at position on stage and someone would like it moved onstage a specific distance from the current position.  You can add and subtract to the current position with a positive or negative value, taking the guesswork out of “bumps”.

Pendant Updates

We spent some quality time behind the scenes making several large changes to the Pendant UI as well as adding features to help those running grouped movements and large shows.  Key features are listed below.

  • Updated Pendant Firmware (v3)
    • Ability to activate/deactivate motors in a group
    • Ability to see individual motors in a group
    • Axis details screen
    • Improved group jogging
    • Reset Position from Pendant
    • Pendant Jog Paddle follows jog curve
    • Motor status icons are now the same on the Pendant as in Spikemark
  • Calibrate Pendant jog paddle
Miscellaneous Updates

Along with the work on the Pendant and all those super features, we also spent time changing features and addressing bugs:

  • Streaming position data via OSC now supports negative values
  • OSC scale factor is saved with the show
  • OSC Libraries are now installed properly when installing Spikemark with authentication
  • Pendant config screen now stays on top of Spikemark window
  • New From Show feature now not overwriting existing show and being connected in Simulator 
  • Copy to Group while cue is loaded now reloads values

Below is the complete release notes for Spikemark 4 thru 4.4.0.  This list includes all feature updates, bug fixes and changes included.  You can find updated info when you update Spikemark or at any time by looking here:

07-30-2019 V4.4.0

*ADDED* Feature P1 – Calibrate pendant joystick
*ADDED* Feature 491 – Ability to activate/deactivate motors in a group
*ADDED* Feature P4 – Axis details screen on Pendant
*ADDED* Feature P3 – Use status icons from Spikemark on the Pendant

*CHANGED* Feature P2 – Pendants group details screen
*CHANGED* Feature P5 – Redesigned main Pendant screen
*CHANGED* Issue 490 – Improved group jog reliability
*CHANGED* Issue 471 – OSC streaming scale to allowing negative values
*CHANGED* Issue 478 – Trickline machine direction labels
*CHANGED* Issue 458 – Floorpocket default settings
*CHANGED* Issue 475 & 476 – Modbus Coil header in the cue grid
*CHANGED* Issue 470 – Pendant config screen not staying on top of Spikemark
*CHANGED* Issue 469 – Spikemark version in print show

*FIXED* Issue 442 – Group paddle jog at zero creeping forward
*FIXED* Issue 484 – Cue time not updating
*FIXED* Issue 485 – Occasional freeze when updating cue numbers
*FIXED* Issue 472 – Saving OSC scaling factor
*FIXED* Issue 483 – Revolver & Periaktos spikes being shifted
*FIXED* Issue 481 – New from show being connected in simulator
*FIXED* Issue 477 – OSC libraries not installing with Spikemark authentication
*FIXED* Issue 482 – New from show saving over old show on first save
*FIXED* Issue 456 – Default speed being set higher than max speed
*FIXED* Issue 507 – Disallowing jogging a group while its moving in a cue
*FIXED* Issue 492 – Copy to group while cue is loaded not reloading values
*FIXED* Issue 523 – Drive fault status going away after a failed group jog
*FIXED* Issue 493 – Group paddle jog not following jog curve

*FIRMWARE* Classic V19
*FIRMWARE* Bipolar V31
*FIRMWARE* Unipolar V50
*FIRMWARE* Pendant V3

03-08-2019 V4.3.2
*FIXED* Issue 467 – Position links not switching motors
*FIXED* Position links linking to unavailable motors
*UPDATED* Installer to include changes

*FIRMWARE* Classic V19
*FIRMWARE* Bipolar V31
*FIRMWARE* Unipolar V50
*FIRMWARE* Pendant V2

03-01-2019 V4.3.1
*ADDED* Ability to increment a target position

*FIRMWARE* Classic V19
*FIRMWARE* Bipolar V31
*FIRMWARE* Unipolar V50
*FIRMWARE* Pendant V2

02-26-2019 V4.3.0
*ADDED* Ability to send OSC messages
*ADDED* Ability to send motor position data over OSC
*ADDED* Pushstick Mini to motor library

*CHANGED* Issue 446 – Motor group’s default speeds to lowest of children
*CHANGED* Issue 381 – Added motor name to which position error was loaded

*FIXED* Issue 371 – Grammar error in installation window
*FIXED* Issue 445 – Pendant coarse/fine jog transitioning to idle instead of faulted
*FIXED* Issue 443 – Group jog faulting when enable released
*FIXED* Issue 460 – Cue selection manager crash
*FIXED* Isseu 461 – Showstopper connection threading crash

*FIRMWARE* Classic V19
*FIRMWARE* Bipolar V31
*FIRMWARE* Unipolar V50
*FIRMWARE* Pendant V2

02-08-19 V4.2.1
*FIXED* Redetect drive
*FIXED* Aux 2 drive reset

*FIRMWARE* Classic V19
*FIRMWARE* Bipolar V31
*FIRMWARE* Unipolar V50
*FIRMWARE* Pendant V2

01-09-19 V4.2
*ADDED* PosiStageNet motor output

*FIXED* Fx not reconnecting after leaving simulator mode
*FIXED* Encoder counts not updating in point scale dialog

*FIRMWARE* Classic V19
*FIRMWARE* Bipolar V31
*FIRMWARE* Unipolar V50
*FIRMWARE* Pendant V2

12-26-18 V4.1.9
*FIXED* Group motors in pop out stage model viewer
*FIXED* Pendant jog to be more reliable
*FIXED* Motor min position change not updating cues below new minimum
*FIXED* Abort on position error defaulting to off for add motor command
*FIXED* RS485 drive communication to be more reliable

*CHANGED* Major internal refactorings
*CHANGED* Instead of showing drive model number it now shows either pro or apprentice
*CHANGED* Instead of auto filling in drive values in auto tune window it now defaults to all 0’s so user has to input values
*CHANGED* Next/Prev button to move to the next/prev cue if cues are displayed or the next/prev preset if presets are displayed
*CHANGED* Default Revolver V2 max speed
*CHANGED* Default Revolver V2 P-Gain
*CHANGED* CM Chain Hoist default parameters

*ADDED* Drive parameter numbers to auto tune window
*ADDED* Drive error numbers to drive faults
*ADDED* Group fault icon
*ADDED* Group terminate swichboard timeout

*FIRMWARE* Classic V19
*FIRMWARE* Bipolar V31
*FIRMWARE* Unipolar V50
*FIRMWARE* Pendant V2

10-15-18 V4.1.8
*FIXED* Pendant jogging now follows the nonlinear curve and obeys min and max jog percent

9-25-18 V4.1.7
*NEW* Pendant firmware with battery monitoring fix

9-6-18 V4.1.6
*FIXED* Connecting to stagehands that don’t exsist.
*FIXED* Firmware not being installed when authorization was used.

*CHANGED* Firmware is now sotred where ever spikemark is installed. It is no longer installed in the users AppData folder.

8-17-18 V4.1.5
*FIXED* Issue 359 – Save open tab to show file
*FIXED* Issue 367 – MTP dialog stays on top of Spikemark
*FIXED* Issue 333 – Log old position when motor is rehomed
*FIXED* Issue 368 – Add group movement to preset paragraph
*FIXED* Issue 360 – Install wizard spelling
*FIXED* Issue 361 – Installer DPI cropping
*FIXED* Issue 358 – Add lag time to motor library
*FIXED* Issue 345 – Lock stage model into place
*FIXED* Issue 44 & 339 – Save cue expanded or collapsed to show file
*FIXED* Save lag time to show file

*CHANGED* Pendant config GUI

7-30-18 V4.1.4
*ADDED* Position lag time

*UPDATED* Pro and Apprentice firmware to reflect the type of card inside either Bipolar or Unipolar

*CHANGED* Moved abort on position error to advanced tab

7-23-18 v4.1.3
*FIXED* Presets touch scrolling
*FIXED* When you press enter on the authentication login screen it now logs you in
*FIXED* Keyboard shortcuts working during run only mode

6-12-18 v4.1.2
*FIXED* The static preset views not being static

6-1-18 v4.1.1
*FIXED* Threading bug introduced by presets

5-25-18 v4.1.0
*ADDED* User authorization
*ADDED* Presets
*ADDED* Pendant
*ADDED* The ability to load a default show
*ADDED* The ability to load a motor list from a different show file
*ADDED* IP addresses to log file
*ADDED* Read parameter button to auto tune window

*FIXED* Logging drive analyze move on drivefault, brakefault, and estop
*FIXED* Writing 3 digit values to auto tune parameters

4-19-18 v4.0.3
*CHANGED* Default polling interval for motors has been reduced to 60ms from 125ms for smoother stage model viewer and tighter cue links.

*ADDED* Firmware 19 (Classic), 30 (Pro), 49 (Apprentice) for group jogging opcodes.
*ADDED* New motors to default library.

*FIXED* Analyze movement screen too large for small screens.
*FIXED* Crashed sometimes while trying to read drive fault errors.
*FIXED* Sometimes crashed when attempting to open a showfile and a backup at the same time.

*CHANGED* Revolver V2 default point scale.

3-12-18 v4.0.2
*CHANGED* The machine library will now safely merge additions into existing library files.

*ADDED* Firmware 18 (Classic), 29 (Pro), 48 (Apprentice) for group jogging opcodes.

*FIXED* Jogging on-screen with the slider sporadically, but frequently caused crashes.
*FIXED* Crasher when sorting drive fault log.
*FIXED* Crasher sometimes when trying to read drive faults via Modbus.

*ADDED* Grouped movements can now take advantage of Analyze Movement.
*ADDED* Grouped motors can now jog as a group with group-fault protection.  This is easier said than done. Jogging within a group must be goverened by a PID loop to enforce position error abort.  Jogging behavior is therefore necessarily different when jogging solo vs jogging in a group.
*ADDED* You can now move to an arbitrary position by right-clicking on a motor header and selecting “Load Position” and then “Run To Position”

*CHANGED* You can now use individual “Load Movement” and “Run Movement” commands in Run-only mode.

2-6-18 v4.0.1
*FIXED* NBug had a permissions issue that would not allow crash report zip files to be saved to the desktop.  Rejoice, this should now work fine even when run without admin privileges.

*ADDED* Motors now include a MIN JOG parameter that controls the slowest a motor may move when jogged manually.  This helps with the Apprentice Stagehand (and machines based on the Apprentice Card) that can get a little jumpy when jogging super-slow.  This doesn’t not affect cue movement which runs silky even in super-slow mode.

1-19-18 v4.0.0
*ADDED* Motors can be grouped together for synchronous operation and cross-fault detection.
*ADDED* Stagehand Pro and Stagehand Apprentice updated firmware to rev 28 & 47 respectively.
*ADDED* Auto-Tune wizard for Pro and Apprentice allows for Auto-Tune parameters to be set via Spikemark, and run the Auto-Tune sequence.
*ADDED* Movement analysis for Pro and Apprentice allows for graphing of current and frequency over the travel distance.
*ADDED* Pro and Apprentice can now reset drive faults via Spikemark.
*ADDED* Stagehand Pro and Stagehand Apprentice updated firmware to rev 27 & 46 respectively.



Updating Stagehand Firmware

Stagehand firmware – we update it for a reason, so should you!

Every Stagehand Controller has a Stagehand Card inside, listening to Spikemark and talking to the VFD.  These cards require firmware running on the microprocessor to function the way we expect – every now and then we update the firmware with new features and bug fixes.  Firmware updates for any Stagehand motor controller or Stagehand Mini^2 are distributed and installed through Sprikemark.  You can see what hardware and firmware version your Stagehand is running from the Hardware pane in Spikemark. 

Below is a list of Stagehand Control Cards and the Stagehands they can be found in.
  • Stagehand 1.x
    • Stagehand AC/Classic
    • Stagehand DC
    • Stagehand Mini
    • Stagehand OEM
  • Stagehand Bipolar
    • Stagehand Pro
    • Stagehand Mini^2
  • Stagehand Unipolar
    • Stagehand Apprentice
    • Stagehand Pro V3
    • Stagehand Servo
    • Pushstick Mini
    • Spotline Mini
You can find the current published versions of Firmware here (

Have no fear if you see “unknown” next to the most recent firmware – the fix is very easy.  Instead of opening the show file directly by double clicking, open Spikemark from the Start Menu, then open your show file from the File menu.  Once the show is open and all Stagehands are connected you will see all the correct info.  If you still see “unknown” after starting Spikemark from the Start Menu it probably means that Spikemark was installed under a different Windows user and the only way to learn what firmware is installed is from the face of the Stagehand Controller.  The current firmware is also displayed on the Stagehand Card at boot-up.

Any Stagehand that requires updated firmware displays a Cloud icon.  Updating the firmware only requires you to click the “Update Motor Firmware” button.  If the update button is not available, or if you are rocking REV10 firmware or you will need to complete the update manually.

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. Download the Stagehand Updater here.
  2. Download the firmware file(s) you need
    1. Stagehand 1.x – REV19
    2. Stagehand Bipolar – REV31
    3. Stagehand Unipolar – REV50
    4. Stagehand FX – REV5
  3. Unzip the Stagehand_Update folder to your Desktop
    1. The folder will have 5 files in it – they are all required to be in the same directory as the Stagehand Update.exe application
  4. Release the E-Stop
    1. The Stagehand cannot be in an E-Stop state to update the Firmware
  5. Connect your computer to the Stagehand, either directly or through a network switch
  6. Run Stagehand Update.exe
    1. Enter the IP Address of the Stagehand you need to update
    2. Select the proper firmware firmware file
      1. IMPORTANT NOTE: Pushing the incorrect firmware file to the Stagehand will require a trip back to the factory to restore
    3. Press the UPDATE button
      1. A few new windows will flash on the screen
  7. After the process is complete, the newly updated Stagehand should reboot in about 30 seconds.
    1. During reboot, it should display the new firmware revision number. And that’s it, you’re now running the latest and greatest firmware revision.

Automation, Programming, Spikemark, Tips

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.


Automation, Machinery, Spikemark

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.

Torque rating based on hertz 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.

What about Durapulse VFDs

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

Let’s 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.

What Firmware Are You Running?

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  

Regular & Frequent Tips

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.

Get the Latest Spikemark

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 Ye Olden (Automation) Times 

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.

Inside the Stagehand Motion Controller

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.

What About Position Error?

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.

Let’s Play With Numbers

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 Position Error 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.

How We Got Here

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!