Originally,
DMX–512 is a protocol for sending channel level commands
from a stage lighting controller to a dimmer pack but now
it is more and more used to control many DMX compatible
device as: dimmers, automatic projectors, smoke machines
,colour changers, gliding film projectors.
This MXM provides all the commands to control groups of
DMX512 channels through several DMX512 hardware devices.
Input
and/or Output are controlled. The input sensing can analyse
incoming DMX stream: commands are available for live-recording,
restoring of the DMX–512 signal.
This Mxm can also create and playback memories and save
channels values in an external file.
This Mxm includes a graphical cue editor interface. This
interface allows programmer to create, edit, and retrieve
cues on selected channels. A graphical track ball allows
programming of several channels for X and Y to ease control
of roboscan like projectors.
It is possible to record live DMX coming from a light desk,
and to edit DMX cues automatically created with a user friendly
graphical interface.
Recording parameters can be set in the Mxm setup window: sampling frequency, linearity error tolerance. DMX shows
are recorded in an external file. Recorded shows can be
easily be edited with the graphical cue editor interface.
Recorded shows can be played back from Manager. They can
be synchronised to any time code i.e.: external time code,
internal Manager time code, external device time code, etc.
MxM Installation
No specific installation required.
Device Setup
The
device is created through this setup dialog box which is different if running under Manager or Showmaster:
A DMX Device may use an output DMX line or an input DMX
line or both.
The input DMX line is used for DMX data recording and or
monitoring. In order to record DMX data for a device, select
an input DMX line. To play the recorded data on the same
device, select an output DMX Line.
First Channel
This is the index of first channel of the device. For example,
if a first device with a count of ten channels on a line
is created and a second device is created with a count of
twenty channels on the same line, the first device will
operate on channels 1 to 10 and the second device on the
channel 11 to 20. This parameter can be changed manually
after device creation. If the Mxm detects that one or more
DMX channels are shared by several devices on the same output
line, a warning is shown under the output line selection
box.
Count of channels
The count of channels assigned to this device.
Output Line
The output resource line which is used by this device (refer
to Manager User’s Guide for resource configuration).
Input Line
The input resource line of the resource which is used by
this device (refer
to Manager User’s Guide for resource configuration).
Monitor variables (Setup)
This button allows to define monitoring variables for specified
input channels.
Monitoring:
On: to create a Manager variable that monitor the selected channel.
Off: to cancel the monitoring variable of this channel.
All: to create Manager variables that monitor all the channel of the device.
None: to cancel all the monitoring variables.
Level Range
Indicates if levels range is between 0–100% or 0–255 in
real values.
Save memories path
This path is where the memories created by this device will
be saved on disk.
If the user selects an existing memory file located outside of the current project user data folder: the specified memory file is copied into the current project user data folder (overwriting any existing memory file in the current project user data folder which has the same name).
Note: that this path is relative to the current project user data folder.
Acquisition parameters
This parameters are used by the software during the recording.
Default values are provided but they can be changed to adapt
to any system.
Sampling frequency is the count of reading per second.
With a frequency of 20 Hz, the DMX signal is read every
50 milliseconds (note: a full frame of 512 DMX channels
lasts 33 milliseconds).
Linearity error tolerance and Linearity sampling width are
used when the record is analysed for producing linear moves
between values sampled.
For example: if the first parameter is 5 and the second is
20, any difference between two consecutive values under
5 or lasting less than 20 samples will be smoothed. With
values of 1 for each, no smoothing will be done.
Device Setup under Showmaster
First Channel
This is the index of first channel of the device. For example,
if a first device with a count of ten channels on a line
is created and a second device is created with a count of
twenty channels on the same line, the first device will
operate on channels 1 to 10 and the second device on the
channel 11 to 20. This parameter can be changed manually
after device creation. If the Mxm detects that one or more
DMX channels are shared by several devices on the same output
line, a warning is shown under the output line selection
box.
Count of channels
The count of channels assigned to this device.
Output Line
The output resource line which is used by this device (refer
to Manager User’s Guide for resource configuration).
Level Range
Indicates if levels range is between 0–100% or 0–255 in
real values.
Save memories path
This path is where the memories created by this device will
be saved on disk. Note that this path is relative to the current project user data folder.
Record Setup
(Not available in Showmaster)
The Record Setup dialog box allows to specifiy how cues are
generated during the record process.
Record File
Name of the recorded file
Cue Type
Single Cue: A file (original DDF file format
with the filename specified in “Record File”)
is created during the recording process. A single “Restore
Acquisition” (see bellow) command is inserted in the
timeline when the recording is done.
Multiple Cues: the DMX input levels of the device
are analysed during the recording process and “Send
Cue” commands (see bellow) are generated on the timeline.
Note that the analysing process may take several seconds
after the end of the recording.
Multiple Cues from existing original DDF file: this mode is provided
as a tool to convert an existing
DDF file into multiple cues. Once this mode is selected,
click on record start and record stop to generate “Send
Cue” commands on the timeline. The name of the file
to convert is specified by “Record File”.
Acquisition and Analysis parameters
These are the same parameters as the ones in the Device
Setup dialog box.
Device Commands
The
commands marked with *
are not available in Showmaster.
Send Cue
This command sends DMX levels as they have been
programmed by insertion of a Dmx Cue in the task. For
the creation of the cue, a dialog box appears:
The values of the channels can be changed with the trackball
or by introducing values in the edit controls.
Each channel can be selected as a X axis (Pan) or a Y axis (Tilt)
When a channel is ‘IN’, it means that its value will
be sent when the cue is sent. When it is not, its value
is not recorded in the cue. Each time a channel is moved,
it becomes ‘IN’. You can give out or force this property
with the ‘In Cue’ and ‘Out Cue’ controls.
Cue Name:[String] Label for the cue
Fade Duration:[Time] Cue
duration represents the fade value, the time that the
channels will take for reaching the values programmed.
Cue Values:[Private] The cue block as it
has been programmed (see picture above)
Usage: This command can be used to create DMX
lighting timelines.
Master Level:[Real] Master level for the cue in percentage.
Set levels out
Set a block of channels at the same level in a specified
fade-time
From channel number:[Integer] first channel of the block
To channel number:[Integer] last channel of the block
At level (0–255):[Integer] the level value
Fade time:[Time] the fade time
Usage: This command is an easy way to create simple
cues.
Get output level
Get the output value of a channel in real-time
Channel number:[Integer] channel number
Return value[Integer] value filled by the command in return
Usage: This command can be used for monitoring
DMX out.
Get input level *
Get the input value of a channel in real-time
Channel number:[Integer] channel number
Return value[Integer] value filled by
the command with the channel value
Usage: This command can be used for monitoring
DMX in, for conditionally start task at given values…
Set output levels as string
Set a block of channels at differents levels defined in a String in a specified
fade-time
From channel number:[Integer] first channel of the block
To channel number:[Integer] last channel of the block
Output Levels Strings:[String] the level values (each values must be separated by ‘\n’ character)
Fade time:[Time] the fade time
Usage: This command is an easy way to drive multiple channels by using only one cue.
It can also be used to merge the outputs of several DMX devices (see also ‘Get output levels as string’ command).
Get output levels as string
Get the output values of a block of channels in real-time
From channel number:[Integer] first channel of the block
To channel number:[Integer] last channel of the block
Output Levels Strings:[String] the level values (each values are separated by ‘\n’ character. To enter ‘\n’ character into the string, use Ctrl+Enter shortcut, do do type the two chars ‘\’ ‘n’).
Usage: This command can be used for monitoring
DMX out.
It can also be used to merge the outputs of several DMX devices (see also ‘Get output levels as string’ command).
Get input levels as string
Get the input values of a block of channels in real-time
From channel number:[Integer] first channel of the block
To channel number:[Integer] last channel of the block
Input Levels Strings:[String] the level values (each values are separated by ‘\n’ character. To enter ‘\n’ character into the string, use Ctrl+Enter shortcut, do do type the two chars ‘\’ ‘n’)
Usage: This command can be used for monitoring
DMX in.
It can also be used to repeat the inputs directly on the outputs of the same or on others DMX devices (see also ‘Get output levels as string’ command).
Set Memories Path
Set the name of the file where the memories are read
from and saved to.
Memories Path[String] Directory/Name of the file
Usage: Management of different memory files.
Note that this path is relative to the current project user data folder when running under Showmaster.
Add memory
Create a memory with the current values of the specified
block of channels
From channel number[Integer] first channel number of the block
To channel number[Integer] last channel number of the block
Memory name[String] Name of the memory to save (must be unique)
Send memory
Send the specified memory
Memory name[String] Name of the memory to send.
Fade time[Time] Fade time.
Read memory
Read the content of a memory into the specified return
variables
Memory name[String] Name of the memory to read
From channel on return[Integer] value
filled by the command with the value of the first channel
To channel on return[Integer] value filled
by the command with the value of the last channel
Values list on return[String] list filled
by the command with the values of the channels
Delete memory
Remove the specified memory from the current file
Memory name[String] Name of the memory to delete.
Start acquisition *
Start acquisition on the current DMX line of the device
File name[String] Name of file for saving
Usage: Recording of a show created with another
DMX controller.
Stop acquisition
Stop the current acquisition and save the specified
file.
Usage: The extension of the saved file is .DDF.
If another extension has been given, it is erase by this
new extension. This file contains all the sample, without
analyse.
Restore acquisition
Send the DMX values recorded in the specified file.
File name[String] Name of file to restore,
with or without extension
Timecode reference[Time] the time variable
on which the restoring will be slaved
Timecode offset[Time] the time offset
to subtract to the Timecode reference
File type[Enum]
“Editable file”: The .LDS file will be restored.
“Original file”: The .DDF file will be restored
Timecode Type[Enum]
“External”: The time variable specified by Timecode reference is used.
“Internal”: Internal timecode is used.
Stop restoring
Stop the current restoring.
Device Variables
The variables marked with * are not available in Showmaster.
Status
[Enum] current status of the device.
“Idle”: the device is not running
“Sending”: the card send DMX
“Receiving”: the card listen to DMX inputs
“Sending & Receiving”: the card send end listen to DMX
“Acquiring”: the device is currently acquiring
“Analysing”: the device is currently creating an editable file
“Restoring Editable”: the device is currently restoring an editable file.
“Restoring Original”: the device is currently restoring an original file
“Error”: an error has occurred (see the “Message” variable).
Message
[String] explicit messages of the device.
“File name error”
“Acquisition terminated”
“Creating editable file”
“Error reading DDF file”
“Compatibility error with DDF format”
“Error opening DDF file”
“Error creating LDT file”
“Error analysing DDF file”
“Error writing in LDT file”
“Error opening LDT file”
“Error creating LDF file”
“Error reading LDT file”
“No DMX–512 variations”
“Error”
“Editable file created”
“Error in file header”
“Error: timecode is NULL”
“No cues in the file”
“Impossible to open LDS file”
“Impossible to open DDF file”
“DDF file is empty”
MemoryList
[String] list of all the memories in the current memoryfile.
RestoreTimecode
[Time] timecode during restoring and acquiring.
DMXin_1 to X*:
(X: number of input channel set at creation)
[Integer] Return DMX value of specified input channel
Revisions
V 1.0.1
Added: Support for Showmaster.
V 1.0.2
Bug Fixed: device sometimes stops sending DMX data after several “Restore Acquisition” and
V 1.0.3
Added: Additional support of Showmaster.
Bug Fixed: incorrect fade times of “Send Cue” commands when importing a V3 project.
V 1.0.4
Fixed: current project user data path is not properly handled for memories path under Showmaster.
Fixed: Inconsistent DMX output levels while editing cue.
Fixed: fade in progress is not stopped if a following fade has a fade time less than 40 ms.
Fixed: “restore last values” does not work.
V 1.0.5
Fixed: no more DMX output after a positracked timeline as been paused on the first DMX cue.
V 1.0.6
Fixed: the Control Panel DMX output values are sometimes different from the real DMX output values.
Fixed: device record setup dialog doesn’t use $CURRENTPRJ_USERDATA path macro under Showmaster.
Added: Support for Showmaster Pro.
Fixed: acquiring was not stopped if restoring was called during acquisition and vice versa.
V 1.1.0
Added: ‘Master Level’ parameter in SendCue command.
V 1.1.1
Modified: Internal change. DDF files are now always loaded in memory when restoring.
V 1.1.2
Fixed: trouble can happen when many DMX devices are used.
V 6.0.0
Modified: Support of Manager V6/Showmaster V2.
V 6.0.1
Fixed: Record Setup dialog box didn’t close when the filename is incomplete.
V 6.0.2
Fixed: Setup dialog doesn’t open on the correct screen on a multi-screen configuration.
V 6.0.3
Fixed: Device variables are not reset after a project load (Requires Manager 6.0.3+).
Modified: Internal changes.
V 6.0.4
Fixed: Memories Device’s variable is empty after a project load (Requires Manager 6.0.4+).
V 6.1.0
Added: Support for Showmaster LE platform.
V 6.1.1
Modified: Now loads DDF files in memory regardless of the MxM configuration settings.
Changed: Configuration file distribution.
Additional Internal Changes.
V 6.1.2
Fixed: DMX recording doesn’t set the Timecode reference parameter properly in the recorded cue(Requires Manager 6.1.0+ Showmaster Editor 2.1.1+).
Improved: Configuration file distribution.
V 6.1.3
Modified: Device Setup Dialog under Showmaster: if the user selects a memory file outside of the current project user data folder: the file is copied to the current project user data folder and the memory path is forced to $CURRENTPRJ_USERDATA.
Fixed: The Control Panel doesn’t respond normally when Manager is in ‘User’ or ‘Run’ mode.
Fixed: The Cue window and the ControlPanel don’t display the DMX channels properly if the text magnifying settings (DPI) is greather than 100% into Windows system.
Fixed: The Setup dialog box is not always visible at the device creation time.
V 6.1.4
Fixed: The Cue editor window doesn’t display the last row of channels if the number of channels is not a multiple of 8.
V 6.1.5
Added: ‘Set output levels as string’, ‘Get output levels as string’ and ‘Get input levels as string’ have been added in order to allow to merge the outputs of several DMX devices or to repeat inputs directly on the outputs.
V 6.1.6
Fixed: Random crash when a variable is used as an external timecode for restoring DDF file.
Modified: Restore Acquisition DDF file processing is optimized when there’s a large number of devices.
V 6.2.0
Added: Allows record feature for Showmaster LE and Showmaster ST platforms.
Added: Compatibility for Overture CS.
V 6.2.1
Fixed: Convertion of DMX values from 100% to 255 and from 255 to 100% where not rounded correctly
Fixed: If the ‘Output Levels String’ parameter of command ‘Set Output Levels As String’ references an empty user variable or is empty, attempting to save the project after executing the command crashes and corrupts the project
V 6.2.2
Modified: Internal change.
V 6.7.0
Improved: Support for High DPI displays (require Manager 6.7.0+ or Showmaster Editor 2.7.0+)
Changed: Compatibility for Manager 6.7.0 and Showmaster Editor 2.7.0
V 6.7.1
Fixed: random crash when signaling end of function execution