• If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • Dokkio Sidebar (from the makers of PBworks) is a Chrome extension that eliminates the need for endless browser tabs. You can search all your online stuff without any extra effort. And Sidebar was #1 on Product Hunt! Check out what people are saying by clicking here.


Example DMX Declaration

Page history last edited by Dave Thaler 6 years, 3 months ago Saved with comment

Each DMX trigger declaration appears in the DMXcommands.xml inside the containing <DMX_CONTROL version="2.00"> element, and contains the following parts.


Anything between a <!-- and --> is considered commented out.


event - This tag is what is used to define separate triggered effects.  It must be a child element under <DMX_CONTROL>, and has mandatory type and optional continuous attributes.


  • type - This is where you tell the program which DMX cue to watch for.


  • continuous - Do you want this effect to loop as long as the trigger is happening, possibly cutting off in the middle?  or do you want it to fire off once, completely, and not again until triggered again?  See the DMX Cues page for info on which cues are "states" safe to use continuous effects with.  If absent, continuous defaults to "no".


timeblock - This tag breaks up the event into sections, played sequentially.   It must be a child element under <event>, and has a mandatory mseconds attribute.


  • mseconds - How long is this timeblock, in milliseconds.   Triggers appear to be fired approximately every 31 to 32 milliseconds, and so durations get rounded to the nearest multiple of that.


setvalue - Here's where the magic happens.  This tag is a command for a single DMX channel.  It must be a child element under <timeblock>, and has mandatory index, value, and change attributes.


  • index - The DMX channel you're addressing with this setvalue command.  Valid integers are between 0-511. Artemis will increment the index by 1 to get a DMX channel address of 1-512.


  • value - Any integer from 0-255.


  • change - During this timeblock, if not 0, Artemis will increment or decrement the value by this amount over 1000 ms, but the value is bounded by the range of 0-255.  For example change="-100", then it will decrement the value by 1 every 10 ms.  change is not limited to +-255, for example change="512" will take value="0" to 255 in 500 ms.  Keep in mind that changes are only updated every 31 or 32 milliseconds.


The event below creates a yellow light on DMX channels 6 though 8 during tractoring events, and fades it out for a half second and in for a half second.  


  <!-- ********************************************************************************************* -->

  <event type="TRACTORED_FOR_DOCKED" continuous="yes">


    <!-- pulsing yellow light -->

    <timeblock mseconds="500">

      <setvalue index="5" value="200" change="-100"/>    <!-- red   value of first light box -->

      <setvalue index="6" value="200" change="-100"/>    <!-- green value of first light box -->

      <setvalue index="7" value="13" change="0"/>    <!-- blue  value of first light box -->


      <timeblock mseconds="500">

      <setvalue index="5" value="150" change="100"/>    <!-- red   value of first light box -->

      <setvalue index="6" value="150" change="100"/>    <!-- green value of first light box -->

      <setvalue index="7" value="13" change="0"/>    <!-- blue  value of first light box -->




Comments (1)

MarkBell said

at 4:21 pm on Oct 23, 2014

Clarified a few things and removed the beginning of an abandoned sentence.

You don't have permission to comment on this page.