Open Function (DDF-Syntax) DMXC3

From English DMXC-Wiki
Books.png Open Function (DDF-Syntax) DMXC3 Article describes
DMXControl 3.3.0
Arrow back.png Stage Effects
Table of Contents
Part 1: Basics
Part 2: Functions
Part 3: Procedures
Part 4: Examples

With the help of open functions, all functions of a device in DMXControl 3 are mapped, which (currently) cannot be implemented through a native function such as Dimmer, Strobe, Color Wheel, or comparable. If a function of a device cannot be represented natively through one of the specific functions such as goborotation for the gobo rotation of a gobo wheel or strobe for the (simply put) flashing of the device, so-called general functions or completely free functions can be defined in the DDF.

General Functions

Index

This function can be used, for example, when the lenses of a beam effect device can be positioned at a certain angle.

Important Hint For indexing of gobos, the function index should not be used. The slider Gobo index in the Gobo window can only be used via the goboindex function.


Case Code example
Standard
<index dmxchannel="0">
  <range range="60" mindmx="0" maxdmx="127" minval="0" maxval="60" />
</index>

Index on DMX channel 1:

  • Alignment of the lens or similar at an angle between at DMX value 0 and 60° at DMX value 127.
Attribute range mindmx maxdmx minval maxval
Description Maximum rotation angle for the lens DMX value for the start position DMX value for the end position Start position of the lens End position of the lens
Permissible attribute value to 720° 0 to 255 0 to 255 to 720° to 720°

Rotation

This function can be used, for example, when the lenses of a beam effect device can be rotated or to control the rotation of a mirror ball motor.

Important Hint For rotating gobos, the function rotation should not be used. The slider Gobo rotation in the Gobo window can only be used via the goborotation function.


Case Code example
Standard
<rotation dmxchannel="0">
  <step type="stop" mindmx="191" maxdmx="192" />
  <range type="cw" mindmx="190" maxdmx="128" minval="0.05" maxval="5" />
  <range type="ccw" mindmx="193" maxdmx="255" minval="0.05" maxval="5" />
</rotation>

Rotation on DMX channel 1:

  • No rotation between DMX value 191 and DMX value 192.
  • Clockwise rotation at 5 1/s at DMX value 128, decreasing to 0.05 1/s at DMX value 190.
  • Counterclockwise rotation at 0.05 1/s at DMX value 193, increasing to 5 1/s at DMX value 255.
Attribute type mindmx maxdmx minval maxval
Description DMX value for minimum rotation speed DMX value for maximum rotation speed Minimum rotation speed Maximum rotation speed
Permissible attribute value stop

cw
ccw

0 to 255 0 to 255 0.01 1/s to 10 1/s 0.01 1/s to 10 1/s

Cool

Heat

Free Functions

Since not all functions of a DMX device can be accurately represented, there are elements that can be freely defined. However, these are only output in the Device Control. The advantages of the Hardware Abstraction Layers (HAL) can also be applied to these freely defined functions.

The following elements are currently available to freely define functions of a DMX device:

  • rawstep: Generates a list with options for functions.
  • raw: Generates a simple slider.
  • const: Constantly sends
a specific DMX value on a DMX channel.


Important hint All the elements mentioned above are completely device-specific. After replacing the device, the HAL cannot automatically apply values stored in Cuelists etc. to the new device. These elements should only be used if mapping the function through a native function is not possible.

rawstep

The rawstep element generates a list in the Device Control to select specific functions of the DMX device. Typical use cases include:

  • Selection of different operating modes of a DMX device such as direct DMX control, playing automatic programs, activation of music control
  • Inserting and removing an animation disc in a moving head
  • Switching the mode for pan-tilt movement from the normal, "classic" control mode to endless movement mode

In contrast to the fixed defined functions, with rawstep, in addition to the DMX channel, a name or a short description of the DMX channel must be specified in the name attribute. The description of each step can be freely chosen. The chosen description does not affect the operation of the HAL.


Case Code example
Standard
<rawstep dmxchannel="0" name="Mode">
  <step caption="DMX" mindmx="0" maxdmx="9" />
  <step caption="Auto" mindmx="10" maxdmx="199" />
  <step caption="Music" mindmx="200" maxdmx="255" />
</rawstep>

Freely defined function with the name "Mode" on DMX channel 1:

  • Activation of DMX mode between DMX value 0 and 9.
  • Activation of automatic mode between DMX value 10 and 199.
  • Activation of sound-to-light control between DMX value 200 and 255.
Attribute caption mindmx maxdmx
Description Description of the function Minimum DMX value to activate the function Maximum DMX value to activate the function
Permissible attribute value Text 0 to 255 0 to 255


Important hint The text for the description must not contain an ampersand (&). Otherwise, the DDF cannot be loaded.

raw

The raw element generates a single slider in the Device Control. Typical use cases for this are:

  • Control of the playback speed of automatic programs
  • Adjustment of microphone sensitivity for sound-to-light control
  • Speed and direction for endless movements of moving heads
  • Direction and speed for animation discs
  • Use for additional motion axes
  • Adjustment for effect speeds for color and gobo wheels


Important Hint If multiple internal programs of the present device can be selected and their playback speed changed via a DMX channel, these should be implemented using the rawranges element.

In contrast to the fixed defined functions, with raw, in addition to the DMX channel, a name or a short description of the DMX channel must be specified in the name attribute.


Case Code example
Speed controller for automatic programs in simplified version
<raw dmxchannel="0" name="Macro speed" />

Freely defined function with the name "Speed" on DMX channel 1:

  • Speed of the automatic programs increasing from value 0 (lowest speed) at DMX value 0 to value 255 (maximum speed) at DMX value 255.
Speed controller for automatic programs with own value range
<raw dmxchannel="0" name="Macro speed" >
  <range type="linear" mindmx="0" maxdmx="255" minval="0" maxval="100" />
</raw>

Freely defined function with the name "Speed" on DMX channel 1:

  • Speed of the automatic programs increasing from 0% (lowest speed) at DMX value 0 to 100% (maximum speed) at DMX value 255.
Template for animation disc
<raw dmxchannel="0" name="Animation disk rotation" >
  <step type="stop" mindmx="125" maxdmx="130" />
  <range type="cw" mindmx="131" maxdmx="255" minval="0.05" maxval="2" />
  <range type="ccw" mindmx="124" maxdmx="0" minval="-2" maxval="-0.05" />
</raw >

Freely defined function with the name "Rotation Animation Disc" on DMX channel 1:

  • Animation disc static between DMX value 125 and 130.
  • Clockwise rotation of the animation disc at 0.05 1/s at DMX value 131, accelerating to 2 1/s at DMX value 255.
  • Counterclockwise rotation of the animation disc at -2 1/s at DMX value 124, decreasing to -0.05 1/s at DMX value 0.
Attribute type mindmx maxdmx minval maxval
Description Minimum DMX value to activate the function Maximum DMX value to activate the function Minimum value Maximum value
Permissible attribute value linear

stop
cw
ccw

0 to 255 0 to 255 No restriction No restriction

rawranges

The rawranges element generates a slider in the Device Control for multiple different functions with a variable value range. The functions can be selected via the associated, automatically generated dropdown menu. Typical use cases for this are:

  • Changing the playback speed of internal programs

For a clear assignment in the Device Control, in addition to the dmxchannel attribute, a name or a short description of the DMX channel must also be specified in the name attribute. The basic definition does not differ from the raw element, but is only supplemented by the type attribute, in which the description of the respective function on the DMX channel is made.


Case Code example
Selection and playback speed for automatic programs
<rawranges dmxchannel="0" name="Auto show" >
  <step type="Off" mindmx="0" maxdmx="31" />
  <range type="Show 1" mindmx="32" maxdmx="63" minval="0" maxval="100" />
  <range type="Show 2" mindmx="64" maxdmx="95" minval="0" maxval="100" />
  <range type="Show 3" mindmx="96" maxdmx="127" minval="0" maxval="100" />
  <range type="Show 4" mindmx="128" maxdmx="191" minval="0" maxval="100" />
  <range type="Show 5" mindmx="192" maxdmx="255" minval="0" maxval="100" />
</rawranges>

Freely defined function with the name "Auto show" on DMX channel 1:

  • Internal show programs switched off between DMX value 0 and 31.
  • Activation of Show 1 and setting the speed from 0% at DMX value 32 to 100% at DMX value 63

.

  • Activation of Show 2 and setting the speed from 0% at DMX value 64 to 100% at DMX value 95.
  • ...
Attribute type mindmx maxdmx minval maxval
Description Minimum DMX value for the function Maximum DMX value for the function Minimum value Maximum value
Permissible attribute value Short description of the function 0 to 255 0 to 255 No restriction No restriction

const

The const element is used whenever a specific DMX value needs to be set permanently on a DMX channel, but otherwise this DMX channel is not used. Examples could include DMX channels where various internal programs of the DMX device are stored but should not be used.

No graphical user interface is provided for the const element. Adjustment of the set DMX value is not possible.

In contrast to the fixed defined functions, with const, in addition to the DMX channel, a name or a short description of the DMX channel must be specified in the name attribute. The val attribute specifies the DMX value that should be permanently set on this DMX channel.


Case Code example
Standard
<const dmxchannel="0" name="Macro Effects" val="0" />

Macro effects on DMX channel 1:

  • Permanently set DMX value 0.