FWsim Pro can export your show data to a variety of firing systems (see list of supported systems).
When creating a new show, FWsim Pro asks you which firing system to use. You can change that later in the sidebar.
With most firing systems, FWsim Pro can generate the channel assignment for you.
First, add enough modules in the “Modules” tab in the sidebar. Then drag each module to the appropriate firing position in the 3D window. The module number will be displayed next to the name of the firing position. For example:

In the “export” sidebar, you can also define whether to export a stepper as one firing impulse (with the other shots connected pyrotechnically), or if you want to export one firing impulse per shot:

This setting can also be changed for each stepper individually. In order to do that, click the stepper and go back to the “Export” tab in the sidebar.
To assign channels, click Export → “Auto-Address”. Channel assignments are not updated automatically when you export.
Channel assignment can be customized through a variety of options:
In the sidebar of the main window, under “Export”, you can define the default stepper export setting for this show:
When creating a stepper, FWsim can automatically put the individual stepper shots on the correct positions. This is important for automatic channel assignment and for exporting plans. In order to make that work, you’ll need to follow a few guidelines:
When you follow these guidelines, FWsim will recognize that each individual stepper shot belongs to a specific position. If you have an unusual case in which these instructions do not work, please let us know.
When a single module is shared between multiple positions, you may want to control exactly which rails (or pin ranges) are used for each position. This prevents all cues from being assigned to the same rail regardless of their position.
You may want to connect some cues pyrotechnically - so that several cues receive only one channel on the firing system.
To do that, you can chain several cues together. By chaining cues, only one firing impulse will be generated in the exported data. The chains will be illustrated in the timeline with arrows.
You can chain cues together in several ways:
After creating the chain, select Export → “Auto-Address” and the channels will be updated.
FWsim Pro offers powerful features for handling chains. There are three kinds, covered below: flexible chains, created directly on the timeline with arbitrary timing; fixed-interval chains, which enforce a specific timing; and pre-fab chains, where you save the entire assembly (the chain and all the effects attached to it) to your effects library so it can be re-used and inserted into other shows. The end of the section gives guidance on which type to use.
To create a simple connection on the timeline, select your shots, right-click, choose Connect Cues and select the flexible option. You can also press CTRL+D for quick access to this menu.
When you then run auto-addressing from the Export menu, only the first shot receives a channel on the firing system; the remaining shots in the chain do not.
The spacing between the cues can be changed at any time, which is why they are called flexible chains. Flexible chains can also be created between cues on different positions. This is the only chain type that allows that.
In the PDF export, flexible chains are specially marked (with circle and arrow symbols shown to the left of the entry), and FWsim keeps the chained cues together.
Fixed-interval chains mirror the real fused chains you can buy from manufacturers, which come at a fixed interval such as 5 × 1 s.
To create one, select several shells that are all on the same position, right-click and choose Connect Cues, then pick one of the fixed-interval options (for example “5 × 1 s”). Shells that were previously spaced irregularly immediately jump to match the interval defined on the chain.
Once a fixed-interval chain is applied:
In the PDF export, fixed-interval chains get the same special markings as flexible chains. In addition, a summary of all the fixed-interval chains used in the show is listed at the bottom of the export.
If you use fuses with intervals that are not in the built-in list, you can define your own. See Defining your own chain fuses.
The chains above are built directly on the timeline. If you instead want a reusable chain, including its specific effects, saved as a single library item, use a pre-fabricated (pre-fab) chain.
Note: We previously recommended to use a Cake in the effects editor to replicate prefab chains. As of 2026, this is no longer the recommended approach - we suggest you create prefab chains instead. If you previously used cakes for this purpose, please find instructions here on how to move over to the new system.
To create one, select several effects on the same position, right-click and make a standard chain, choosing either flexible timing or one of the fixed-interval options. Then select the entire assembly, right-click and choose Save to Library as Pre-Fab Chain. You can now insert this pre-fab into any of your shows.
A pre-fab behaves as one saved product:
In the PDF export, there are three things to know about pre-fab chains:
If you used cakes in the effect editor to simulate pre-fab chains, you will have encountered the following disadvantages:
To switch over to the new prefab system, please do this:
When you select several cues and right-click “Chain Cues”, FWsim offers a list of pre-defined chain fuses - for example “5 × 2 s”, which connects five cues with a fixed 2-second delay between each shot. These pre-defined chains correspond to real-world fused chain products (sometimes called “delays” or “retards”), so that the timing in your show matches the product you actually fire.
FWsim ships with a set of standard chain fuses, but you can also define your own - for instance to match the exact products offered by your supplier.
To do that, create a plain text file named chains.txt and place it in your effects folder. This is usually “Documents” - “FW-Sim” but may be different if you changed the locations under “Custom Effect File Storage Locations” in the preferences (see sharing your inventory). Each line in the file describes one chain, using this format:
ID|Description|Intervals
For example:
MY-CHAIN-3x1|3 × 1 s|1 1 1
MY-CHAIN-5x2|5 × 2 s|2 2 2 2 2
U505928|CHAINE 5 RETARDS A 2s|2 2 2 2 2
| The three fields are separated by the pipe character ( | ): |
You can optionally append extra data after the intervals, again separated by pipes, as key=value pairs - for example a price or a product reference:
U505928|CHAINE 5 RETARDS A 2s|2 2 2 2 2|Reference=U505928|Price=6.78
A few things to keep in mind:
When working on large shows, manually chaining every pair of simultaneous cues can be time-consuming. FWsim offers a fully automatic alternative: the Combine Cues feature.
To enable it, go to the sidebar, find “Settings for this show”, scroll down, and click “Advanced Settings”. Here you can enable the “Combine Cues” option and set a timing window — for example, 5 milliseconds.
When you then run Auto-Address, FWsim will automatically combine any cues on the same position that fall within that timing window onto a single channel. This can save dozens or even hundreds of channels on a large-scale pyromusical, without requiring you to create chains by hand.
Use manual chaining when you need precise control over specific cues, and automatic combining when you want to optimize the entire show efficiently.
To assign channels manually, click a cue and select the “Export” tab in the sidebar.
For a stepper, this tab will look like this:

For a single shot, you will get the following display:

You can enter the address in several different formats. For example, to enter “Module 2, Pin 5”, you can type “2/5” or “2.5”. As soon as you enter an address manually, a lock will apear. The lock means that this address can no longer be changed by the automatic channel assignment. This is useful when you want to use automatic channel assignment, but set some specific channels manually.
If you don’t want the lock, click it and the channel will be unlocked again. During the next automatic channel assignment, ths channel assignment will be overwritten without confirmation.
Some firing systems support “sections”: After each sequence is fired, the system pauses and waits for a button press before continuing. This is also known as “Semiautomatic Firing”. FWsim can currently export sections to the following firing systems:
Cobra, Firelinx, FireOne, Firetek (old format), Firetek New Format (v4 or newer), Firetek USB Transfer (old modules only), Piroshow, Pyromac, Pyroneo, RFRemotech
If your firing system is not listed and you want to export sections, please contact us.
In order to create a sequence:
Many firing systems offer a dedicated music player. Usually, this player is its own module and starts the music when firing channel 1.
There are two ways of assigning a channel to music:
Some pyrotechnic firing systems support synchronization with SMPTE timecode. The firing system listens to an incoming timecode signal and plays the show based on that time basis. The timecode is an audio signal containing the current show time in a digitally encoded format.
This provides an elegant way to synchronize your show with music: the SMPTE timecode goes on the left audio channel and is sent to the firing system, while the music goes on the right channel and is sent to the speakers.
FWsim can create this combined audio file for you. Click Export and select “Music and SMPTE”. The resulting file will have the digital time signal on the left channel and your music on the right channel.
The export asks you for the frame rate of the timecode. Firing systems differ here: some accept several frame rates, others only ever work with one, and sending the wrong one means your show does not run in sync. The following table lists the systems for which we could verify the requirement in the manufacturer’s own documentation. The last column links to that source, so you can check it yourself.
| Firing system | SMPTE frame rate | How the timecode gets in | What the manufacturer says |
|---|---|---|---|
| Cobra | 30 FPS (this rate only) | RCA audio port on the 18R2 (SMPTE upgrade kit), music on the left channel and timecode on the right | COBRA’s help center states that COBRA supports the 30 FPS SMPTE format and that the 18R2 takes the timecode feed through an RCA audio port. (Source) |
| Explo X2 | 24 / 25 / 30 FPS | Explo Timecode Modem on the TX2 transmitter; one stereo channel can carry the timecode and the other the music | The X2 manual states the frame rate of the SMPTE TC signal can be changed between 24, 25 and 30 fps; the Timecode Modem reads SMPTE and is made for the TX2 transmitters. (Source) |
| Firelinx | 24 / 25 / 29.97 / 30 FPS | audio input, uncompressed WAV - timecode on one stereo channel, music on the other | The Firelinx FAQ: Firelinx supports 24, 25, 29.97 and 30 fps SMPTE and has to be configured for the rate you send; it also insists on WAV rather than MP3. (Source) |
| fireTEK | 24 / 25 / 30 FPS | RCA connector (timecode in and out) | The FTQ-99Sx specifications give the timecode input format as “24fps, 25fps and 30fps Autodetect”, output as 25 or 30 fps, “In and Out via RCA connector”, for SMPTE LTC. (Source) |
| Galaxis | 25 FPS (this rate only) | SMPTE input socket of the PFC Advanced, fed with the timecode as an audio signal | The PFC Advanced manual titles its timecode chapter “SMPTE-Zündmodus (Timecode SMPTE 25fps)” and even explains why it is 25 fps. (Source) |
| Pyromac | 24 / 25 / 30 FPS | SMPTE-in on the Synchronizer, balanced or unbalanced (XLR3 combo jack) | The Synchronizer’s specifications list “SMPTE at 24, 25, 30 FPS” and a balanced/unbalanced SMPTE input. (Source) |
| PyroNeo | 24 / 25 / 29 / 30 FPS | SMPTE socket of the Commander - the wiki says the recorded timecode has to be fed in as an audio signal | The PyroNeo wiki: the Commander can use SMPTE timecode in 24, 25, 29 and 30 FPS (drop or non-drop) and detects the format automatically. (Source) |
If your system is not in this table, that does not mean it cannot use SMPTE timecode - it only means we could not confirm all the details from a manufacturer source. Please check the manual of your firing system for the frame rate it expects.
If you are using a Cobra firing system, set the Timecode option to “timecode1” or “timecode2” when exporting your Cobra script. With timecode1, the system continues firing if the timecode signal is lost. With timecode2, a loss of signal stops the show.
Click Export → “Export to Firing System” to export your show to the previously defined system. We have more specific instructions available for some systems - please check our (list of supported systems).
If your system is not supported yet, there are two things you can do:
send us a message and let us know what system you would like to use. We are always interested in supporting more systems.
You could use the CSV export, and try to make it work for your firing system. You could also export via CSV and then shuffle the data around with Microsoft Excel or other software. If you need help, please let us know.