Software Documentation

Software Documentation


Intermediate Last updated: April 5, 2021

2 Assign DMX channel ranges to fixtures

Every DMX fixture requires a range of one or more channels to control its functions.  You can define the channel range manually in the “Configure position as DMX fixture” dialog, or you can use the function “Assign DMX channel ranges to fixtures” to assign DMX channel ranges automatically, back to back.  You can use this function to assign or re-assign the ranges for all fixtures or just a set of selected fixtures.  If assigning only the selected fixtures, the assignments will avoid collisions with the other fixtures and will fill in any channel gaps between them.

Figure 1 shows nine fixtures configured as Explo X2 Wave Flamer fixtures.  If you do the “Assign DMX channel ranges to fixtures” function for all fixtures, you will get the dialog of Figure 2.


Figure 1 – Master fixtures are displayed as blue squares.


The Explo X2 Wave Flamer fixture requires six channels.  Nine fixtures times six channels is 54 channels, so the summary in the dialog makes sense.   In the absence of specifying a DMX universe, the assigned ranges begin with DMX universe 1.


Figure 2 – Nine fixtures, each requiring six channels, requires 54 channels total.


Open the positions window to see the details of the ranges.  In this simple example, the nine fixtures shown in the right-most column of Figure 3 are obvious.  Other examples with slave fixtures, multiple DMX universes, and various kinds of fixtures requiring different numbers of channels can make the summary in the positions window more of a necessity.


Figure 3 – Master fixtures need non-overlapping DMX channel ranges.


Slave fixtures

Slave fixtures in Finale 3D are associated with their masters by their DMX Universe and DMX Channel Base fields, which define the channel ranges that the fixtures listen to.  The “Assign DMX channel ranges to fixtures” function preserves existing connections between slaves and their masters when used to re-assign existing channel ranges.  The masters will be re-assigned to the first available channel range, and their slaves will tag along, assigned to the same channel ranges as their masters.



The assignment algorithm supports assigning channel ranges to fixtures for the first time, and also re-assigning channel ranges.  In the case of re-assigning channel ranges, the algorithm preserves the existing DMX universes of fixtures that already have them defined, searching for available channel ranges within the same universes.  In the case of assigning channel ranges for the first time, the algorithm will search for the first available channel range in any universe, beginning with the first DMX universe with any existing assignments, or universe number 1 if starting from scratch.  Obviously, the algorithm can only assign channel ranges for pre-defined fixture types.  You can script for fixtures of type “<Any DMX Fixture>” but the channel assignment algorithm will leave those fixtures unassigned since it doesn’t know how many channels the fixtures require.

The assignment algorithm always avoids conflicts with existing, non-selected fixtures.   Thus if you have already assigned channel ranges for a partially scripted show, and you subsequently add more fixtures and assign channel ranges just to them, the new assignments will not conflict.  The algorithm also re-assigns fixtures that have existing DMX Universe and DMX Channel Base values before assigning fixtures for which those fields are blank.  Thus in the example of adding more fixtures to a partially scripted show, if you select all fixtures including the existing and the new fixtures and assign/re-assign channel ranges to them, the existing fixtures will be re-assigned first, preserving their universes, and the new fixtures will be assigned second, filling gaps and adding onto the end.

Finale 3D supports two levels of universes, with a subtle naming distinction: “Universe” and “DMX Universe”.  For Finale 3D, Universe splits a show at the highest level.  Finale 3D will export a separate firing system script for every Universe in the show, which may even represent different firing systems.  DMX Universe is a DMX term identifying a bank of 512 channels that a fixture can be assigned to listen to.   A firing system script corresponding to a single Universe may contain DMX data for multiple DMX Universes, which is an obvious requirement for firing systems that support multiple DMX universes in the same show (see Table 2 of Exporting for a list of firing systems that support multiple DMX Universes, and those that support a single, shared DMX Universe).  Most shows use a single firing system and a single Universe, so the most important thing to remember about the Universe field is just not to confuse it with DMX Universe.   In the context of DMX discussions, the word “universe” almost always means DMX Universe.


Error messages

The assignment function may return the errors listed in Table 1.



Table 1 – Error messages

Error message Explanation
Too many channels used Fixtures being re-assigned to channel ranges in their existing universes won’t fit in 512 channels.  This error can occur if you change the type of fixtures to a fixture type that requires more channels in its DMX personality.  The re-assignment function preserves the universe, but if each fixture requires more channels then they may no longer fit.
Unknown fixture type Fixtures of type “<Any DMX Fixture>” do not have a defined number of channels in their DMX personality, so you must assign their DMX Universe and DMX Channel Base manually.
Slave without master Slaves associate with masters that have the same DMX Universe and DMX Channel Base.  If a slave doesn’t have those fields, or if those fields refer to a non-existent master, then the assignment function may return an error.  As a convenience, if the show contains slaves and only a single master fixture, the assignment function will assign the slaves to whatever channel range it assigns the master fixture, since there are no other options.