Software Documentation

Exporting a firing system scriptDocumentation

IntegrationIntermediate Last updated: August 17, 2019

16 fireTEK

To create and export a script for the fireTEK firing system, please follow these steps:

  1. Choose module types.  Either select one “Module Type” for the full show in “Show > Set show information…” or in “Addressing > Addres show…”, or choose different module types by position by right clicking positions and doing “Edit position properties…” from the context menu.   The Module Type selector in Finale 3D also specifies the script format(V1.0 or V2.0 or V3.0).  You must use the same script format for the entire show. The different script formats have different numbers of columns.
  2. Add positions for your physical DMX devices (DMX only).  If you have multiple physical devices connected to the DMX side of a fireTEK module, each physical device must have its own position, and they all must be configured with the same module number, X + 100, for X being the actual module number of the fireTEK module.   The DMX-capable modules are essentially two-in-one modules with a pyro side and a DMX side.  In Finale 3D you represent the two sides as separate modules, X and X + 100 (at separate positions).
  3. Configure the DMX positions (DMX only).  If you are designing a show with flame units or other DMX devices, (a) set the DMX positions’ module types to fireTEK DMX Device, and (b) set their “Start Module” to X + 100 for X being the module number of the fireTEK module.  If you have multiple DMX positions sharing the same module (i.e., same DMX universe), you will need set them to have the same, shared “Section” name and you will need to set the other positions to have unique Section names, and you will need to remove the “Positions” constraint from the modules line in paragraph (3) of the “Addressing > Address show…” dialog.  See Flame systems basic instructions and Exporting a firing system script for flame systems for further instructions.
  4. Address the show (“Addressing > Address show”).
  5. Export the script (“File > Export > Export firing scripts“).

If the script contains DMX for flame systems, please see Flame systems basic instructions for instructions to set up the show and Exporting a firing system script for flame systems for further instructions for exporting a script.  Step 5 creates the script file, which is a text file with a “CSV” extension.  While it is possible to open this file in a text editor, the file is not meant for humans to read or write.  It contains only the data that the controller requires for shooting the show.  For pyro, most fireTEK users will not need to concern themselves with the file format described in this section. DMX setup and configuration are complicated, so you may want to examine the script visually to ensure it represents what you expect. The file format described in this section provides the necessary details.

Figure 1 – fireTEK firing system

 

Table 1 – File format and encoding

File format Extension Text encoding Field delimiter End-of-line
Text .CSV ASCII Comma CRLF

The script contains rows for the firing events, i.e., unique combinations of module, pin, and ignition-time.  Multiple effects can be combined on a single cue.  The special characteristics of the script are shown in the following table:

 

Table 2 – Special characteristics

Special characteristics Description
Sort order of rows Rows sorted ascending by module number, then track, then ignition time, then pin number.
What rows represent Each row represents a unique firing event, a module/pin/event-time combination.  For example, a chain of five shells will be one row, not five.  A pair of shells shot together from the same position will be one row, not two, even if the shells are different effects.  A flight of shells shot together from multiple positions with the same module-pin using scab wire is still one row.

Events at different times are necessarily different rows, even if their addresses are the same.  Simple DMX effects with duration (see below) are represented as pairs of rows, an ON row at the beginning of the effect and an OFF row at the end.

File format versions Finale 3D exports three different fireTEK script formats, v1, v2, and v3. The formats are supported by various versions of the fireTEK software that is used to upload the script into the system. You can determine the right version number by asking on fireTEK staff or by examining an example file that works on your system, and counting the number of columns. The three versions have 4 columns, 7 columns, and 11 columns, respectively.  The columns are shown in a header row at the top of the file.

Script format v1 (4 columns):  Module,Slat,Pin,Time

Script format v2 (7 columns): Module,Slat,Pin,Time,Sequence,DMX Value,Duration

Script format v3 (11 columns): Module,Slat,Pin,Time,Sequence,DMX Value,Duration,Size,Position,Name

Time resolution The fireTEK system supports millisecond resolution.
Semi-automatic firing fireTEK supports semi-automatic firing with individually triggerable tracks.  The script exported from Finale 3D will automatically be semi-automatic if any event contains a valid “Track“; tracks may be integers 1-99 or letters followed by integers in that range (example: “1” and “Trk1” are both okay).  In the exported script, the “Sequence” field contains the track number. Tracks must be in chronological order in the Finale 3D show.  For semi-automatic shows, the ignition times in the script are relative to the ignition of the first effect in the track.  Thus the first ignition time in a track is always as close to zero as possible (actually 10ms, given the minimum value constraint).

The track value 0 is special.  It indicates the main show, for which times are absolute and may be in synch with the music, i.e., NOT relative to the first event in the track.  You can create a script that contains the main show that begins automatically (track 0) and also separately triggerable tracks (track 1-99) that begin when you press the corresponding button.  The triggerable tracks will overlay the main show.

Module types fireTEK systems have 48 pin and 24 pin modules in two varieties: DMX-capable and pyro-only. The DMX capable and pyro-only modules cannot be used in the same script, so if you need to use both types of modules in a show then in Finale 3D please divide the show into two universes, and use entirely DMX-capable modules or entirely pyro-only modules in each universe; the function “File > Export > Export firing system script(s)…” will export a separate script for each firing system or universe, which you can arrange to operate concurrently from separate controllers. The fireTEK module types in Finale 3D are, FireTEK M48, FireTEK M24, FireTEK DMX M48, FireTEK DMX M24. The DMX-capable modules are essentially two-in-one modules, supporting pyro ignitions and DMX output. In Finale 3D, you represent the pyro ignition part and the DMX part of the same module separately. Please use fireTEK DMX M48, fireTEK DMX M24 for the pyro ignitions part of a DMX-capable module; and use FireTEK DMX Device for the DMX part, as explained more fully here.
Slats Each fireTEK module distributes its ignition pins using 12-pin slats. Thus a full firing system pin address includes a module number (1-99), slat number (1-4 or 1-8), and pin number (1-12).
DMX support Each DMX-capable fireTEK module is capable of serving an independent DMX universe, or a DMX universe shared with other modules having the same module address.  The “Module Address Or DMX Universe” field in the script row indicates the module number for pyro ignition events and corresponding DMX universe for DMX events.  For each pair of pyro and DMX positions associated with a module in Finale 3D, please assign “Start Module” = X (for your choice of X) for the pyro position, and assign “Start Module” = X + 100 for the flame position.

In the real world, a fireTEK module with pyro and DMX has a single module number for both the pyro and DMX sides, but within the script the DMX module numbers are represented as X + 100, corresponding to module X in the real world.  See Table 1 in  Exporting a firing system script for flame systems for details.

DMX representation in the script DMX rows are mixed in with pyro rows in the script, sorted by event time.  DMX rows are distinguished by the value in the “Pin Address Or DMX Channel” field.   If the value < 100, the row is a pyro ignition row.  If the value is > 100, the row is a DMX event and the value for this field is the DMX channel number + 100, i.e., subtract 100 to get the actual DMX channel number.  DMX rows contain an optional duration field, which is either 0 (ignored) or an integer representing the duration of the event in 100ms time units, up to a maximum of 25 seconds (duration value = 250).  If the duration field is non-zero, the fireTEK system will automatically reset the DMX value to zero at the end of the duration.

For many types of DMX devices, the duration field facilitates a more efficient representation of events in the script, using one row instead of two.  Finale 3D uses the duration field to represent script events efficiently when possible, and uses ON/OFF pairs of events when the desired duration is not a multiple of 100ms or when the duration is longer than 25 seconds. With the duration field, many types of DMX events can be represented in a single row in the script, but complex DMX effects like adjustable angle shots of the Explo X2 Wave Flamer may require substantially more rows  (see Explo X2 Wave Flamer).

DMX resting state The fireTEK system does not require the at-rest DMX channel values to be zero, which is beneficial for stateful DMX devices like flame units with rotating nozzles, for which it is undesirable to return the nozzle to a resting angle in between two shots at the same angle, if that same angle is different from the resting angle.

After the header, each row in the script has a number of fields separated by the comma character.  The names of these fields and their descriptions are the following:

Table 3 – Specifications of script fields

Field name Description
Module The value 1-99 for module number or DMX universe.
Slat The value 1-4 for 48 pin modules, and 1-2 for 24 pin modules; the value 1 for DMX events.
Pin The value 1-12 for pyro ignitions, or 101-199 to represent DMX channels 1-99 in DMX events.
Time The time of ignition in milliseconds
Sequence The value 1-99 identifying a track for semi-automatic firing, or 0 for standard pyromusicals.
DMX Value The value 0-255 for DMX events, or 0 for pyro ignitions.
Duration The value 0 or 1-250. If non-zero, the integer represents the duration of the event in 100ms time units, up to a maximum of 25 seconds (duration value = 250).  The fireTEK system will automatically reset the DMX value to zero at the end of the duration, if the duration value is non-zero.
Size An optional text string indicating the size of the effect, e.g., 3″.
Position An optional text string indicating the position, e.g., Pos-01.
Name An optional text string indicating the name of the effect, e.g., Red Peony.

 

An example script containing six (6) shells, three (3) DMX safety channel events, and sixty-three (63) DMX flame shots across nine MAGICFX Flamaniac flame units. Please see Exporting a firing system script for flame systems for a full description of this example.

Module,Slat,Pin,Time,Sequence,DMX Value,Duration
10,1,1,1335,0,0,0
10,1,2,1835,0,0,0
10,1,3,1835,0,0,0
10,1,101,4900,0,128,0
10,1,113,5000,0,255,0
10,1,123,5100,0,255,0
10,1,133,5200,0,255,0
10,1,143,5300,0,255,0
10,1,153,5400,0,255,0
10,1,113,5500,0,0,0
10,1,163,5500,0,255,0
10,1,123,5600,0,0,0
10,1,173,5600,0,255,0
10,1,133,5700,0,0,0
10,1,183,5700,0,255,0
10,1,143,5800,0,0,0
10,1,193,5800,0,255,0
10,1,153,5900,0,0,0
10,1,163,6000,0,0,0
10,1,173,6100,0,0,0
10,1,183,6200,0,0,0
10,1,193,6300,0,0,0
10,1,101,6400,0,0,0
10,1,101,6674,0,128,0
10,1,111,6764,0,255,0
10,1,121,6764,0,255,0
10,1,131,6764,0,255,0
10,1,141,6764,0,255,0
10,1,151,6764,0,255,0
10,1,161,6764,0,255,0
10,1,171,6764,0,255,0
10,1,181,6764,0,255,0
10,1,191,6764,0,255,0
10,1,112,6964,0,255,0
10,1,122,6964,0,255,0
10,1,132,6964,0,255,0
10,1,142,6964,0,255,0
10,1,152,6964,0,255,0
10,1,162,6964,0,255,0
10,1,172,6964,0,255,0
10,1,182,6964,0,255,0
10,1,192,6964,0,255,0
10,1,113,7164,0,255,0
10,1,123,7164,0,255,0
10,1,133,7164,0,255,0
10,1,143,7164,0,255,0
10,1,153,7164,0,255,0
10,1,163,7164,0,255,0
10,1,173,7164,0,255,0
10,1,183,7164,0,255,0
10,1,193,7164,0,255,0
10,1,111,7264,0,0,0
10,1,121,7264,0,0,0
10,1,131,7264,0,0,0
10,1,141,7264,0,0,0
10,1,151,7264,0,0,0
10,1,161,7264,0,0,0
10,1,171,7264,0,0,0
10,1,181,7264,0,0,0
10,1,191,7264,0,0,0
10,1,114,7364,0,255,0
10,1,124,7364,0,255,0
10,1,134,7364,0,255,0
10,1,144,7364,0,255,0
10,1,154,7364,0,255,0
10,1,164,7364,0,255,0
10,1,174,7364,0,255,0
10,1,184,7364,0,255,0
10,1,194,7364,0,255,0
10,1,112,7464,0,0,0
10,1,122,7464,0,0,0
10,1,132,7464,0,0,0
10,1,142,7464,0,0,0
10,1,152,7464,0,0,0
10,1,162,7464,0,0,0
10,1,172,7464,0,0,0
10,1,182,7464,0,0,0
10,1,192,7464,0,0,0
10,1,115,7564,0,255,0
10,1,125,7564,0,255,0
10,1,135,7564,0,255,0
10,1,145,7564,0,255,0
10,1,155,7564,0,255,0
10,1,165,7564,0,255,0
10,1,175,7564,0,255,0
10,1,185,7564,0,255,0
10,1,195,7564,0,255,0
10,1,113,7664,0,0,0
10,1,123,7664,0,0,0
10,1,133,7664,0,0,0
10,1,143,7664,0,0,0
10,1,153,7664,0,0,0
10,1,163,7664,0,0,0
10,1,173,7664,0,0,0
10,1,183,7664,0,0,0
10,1,193,7664,0,0,0
10,1,114,7864,0,0,0
10,1,124,7864,0,0,0
10,1,134,7864,0,0,0
10,1,144,7864,0,0,0
10,1,154,7864,0,0,0
10,1,164,7864,0,0,0
10,1,174,7864,0,0,0
10,1,184,7864,0,0,0
10,1,194,7864,0,0,0
10,1,115,8064,0,0,0
10,1,125,8064,0,0,0
10,1,135,8064,0,0,0
10,1,145,8064,0,0,0
10,1,155,8064,0,0,0
10,1,165,8064,0,0,0
10,1,175,8064,0,0,0
10,1,185,8064,0,0,0
10,1,195,8064,0,0,0
10,1,4,8465,0,0,0
10,1,101,8674,0,0,0
10,1,101,8828,0,128,0
10,1,193,8928,0,255,0
10,1,5,8965,0,0,0
10,1,6,8965,0,0,0
10,1,183,9028,0,255,0
10,1,173,9128,0,255,0
10,1,163,9228,0,255,0
10,1,153,9328,0,255,0
10,1,193,9428,0,0,0
10,1,143,9428,0,255,0
10,1,183,9528,0,0,0
10,1,133,9528,0,255,0
10,1,173,9628,0,0,0
10,1,123,9628,0,255,0
10,1,163,9728,0,0,0
10,1,113,9728,0,255,0
10,1,153,9828,0,0,0
10,1,143,9928,0,0,0
10,1,133,10028,0,0,0
10,1,123,10128,0,0,0
10,1,113,10228,0,0,0
10,1,101,10328,0,0,0

Figure 1 – Example fireTEK script

 

Table 4 – Example files

Download link Explanation
magicfx_firetek_standard.fin Example standard pyromusical show file
magicfx_firetek_standard.csv Example standard pyromusical exported file (CSV)
magicfx_firetek_semi_auto.fin Example semi-automatic show file
magicfx_firetek_semi_auto.csv Example semi-automatic exported file (CSV)
g_flame_firetek_standard.fin Example G-Flame show file
g_flame_firetek_standard.csv Example exported script for G-Flame show (CSV)
explo_dmx_example_firetek.fin Example Explo X2 Wave Flamer show file
explo_x2_wave_flamer_example_firetek.csv Example exported script for Explo X2 Wave Flamer (CSV)
firetek_flame_and_pyro_example_file.fin Example Explo X2 Wave Flamer and pyro single DMX universe show file
firetek_flame_and_pyro_example.csv Example exported script for single DMX universe Explo X2 Wave Flamer and pyro show (CSV)
firetek_multiple_dmx_universe_flame_and_pyro_example_file.fin Example Explo X2 Wave Flamer multi-DMX universe show file
firetek_multiple_dmx_universe_flame_and_pyro_example.csv Example exported script for multi-DMX universe Explo X2 Wave Flamer show (CSV)