Fiddler on the Roof lighting system

This page describes the system Drew Perttula and David McClosky built for Piedmont Light Opera Theater's production of Fiddler on the Roof in the summer of 1999.

Dimmer system

Behind the danger sign
Signals from the computer system control 5 dimmers we built from excellent kits. We used higher-rated triacs, though, because we needed to power up to 1000W on one dimmer.
We had 19 lights for 11 effects, so I designed a system of relays that routed the 5 dimmers to different light groups. The sun lights could not dim; one relay connected the sun lights directly to the power.

This picture shows some 5V relays that controlled bigger relays to route the dimmers, the 4 phases of the sun stepper motor, and the DC motors for the fire effect.

The relays that choose what dimmers go to what lights sit under these outlets. These extension cords go from the dimmer system to the various lights on the set.

We borrowed hundreds of feet of extension cords to connect the lights to their dimmers.

Some effects needed so much power that we had to use two 20 amp theater circuits to run them. I have a few pages worth of calculations to figure out how to split the power properly and what gauge all the wires need to be so they won't overheat.

Computer control

David operated a laptop terminal (lower left) in the booth while Drew controlled all the stage lights with a manual light board (right).

The laptop connected to this computer backstage through a serial link that we ran through some unused wires in the theater.

To do this: connect pin 2 to pin 3, pin 3 to pin 2, and pin 7 to pin 7. On a 9-pin RS232 connector, ground is on pin 5 instead of 7.

The red LED in the center of the picture shows that the ISA bus sent an address, I think.

The connection between the I/O card's interface cable and the long cables that run to the dimmer system.

You can look at the neato I/O card we built for this project. This card has 3 8255 chips for 72 bits of output. 5 bytes of those go to 5 D/A converters which create the signals for the
dimmers.

Drag left and right on this image to rotate the board (if the JS works in your browser):

Rotator program by Honeylocust Media Systems

Drew wrote a tiny program in C to control the interface card. A few perl scripts do all the rest. The computer runs Linux, of course.

I haven't gotten the final versions of the code for this page. We modified the software almost every night, and I haven't brought the new code to this machine yet (2003/2/10).

  • bits.c - controls 8255's at 3 addresses
  • fish - "fiddler shell"
    • dim.pl - functions for dimming and getting relays to route dimmers
    • motor.pl - functions for controlling the stepper motor
    • shim2 - rainbow effect (spawned by fish :)
  • cues - all the cues for the show
  • profiles - min/max profiles for lights (used by dim.pl)

What it looks like when the sun motor moves

Sun effect


Drew took apart a flatbed scanner to get this stepper motor.


Two lights spin on a pipe that the stepper motor turns. Each light is in a box that blocks the light when it tilts too high or low. You can see the left sun light, the wheel, and the box for the other light.


Right sun light


Right sun light


Sun effect (with some other lights)

Fire effect

We hung two work lights and put red gels on them. DC motors spun big snowflake patterns in front of the lights. I could not get pictures of the effect on the wall. The video camera I used can't see things so dim.

Sky pictures