Third-Party Developers

DMX4ALL- Development
Art-Net ™ Designed by and Copyright Artistic Licence Holdings Ltd.

Preliminary information

For communication with DMX4ALL products it is necessary to open a connection.

After connecting to the device you can use the DMX4ALL commands.

Please note that not all products support all commands!

The possible different types of connections

Open a RS232-COM port with the following parameters:

  • Baudrate: 38400 Baud (Some old interface can be switched to 19200 Baud)
  • Bytes: 8
  • Stop-Bits: 1
  • Parity: None
  • Handshake: None

After you open the connection and have the COM handle, you can use the standard transfer functions to write and read the data from the interface.

Possible with the following devices:

  • DMX Player XS

Open a USB-VCP-COM port with the following parameters:

  • Baudrate: 38400 Baud (Some old interface can be switched to 19200 Baud)
  • Bytes: 8
  • Stop-Bits: 1
  • Parity: None
  • Handshake: None

After you open the connection and have the COM handle, you can use the standard transfer functions to write and read the data from the interface.

Possible with the following devices:

  • NanoDMX
  • Mini-USB-DMX-Interface
  • USB-DMX STAGE-PROFI MK2
  • USB-DMX STAGE-PROFI MK3
  • DMX Player S
  • DMX Player L
  • DMX Player ONE
  • DMX Player L MK2
  • ArtNet-DMX TWIN PoE
  • DMX STAGE-PROFI 1.1 RDM

To communicate with the USB-Driver, you have to use the FTDI D2XX driver.
More informations you can find in the “D2XX Programmer’s Guide” from FTDI.
To send data to the interface, you have to open the device with FT_Open.
After you got a handle to the device, you can send the data via FT_Write and read back data with FT_Read.

Possible with the following devices:

  • Mini-USB-DMX-Interface
  • USB-DMX STAGE-PROFI MK2
  • DMX Player S
  • DMX Player L
  • DMX Player ONE

Example:

FTDI D2XX Driver Example

Open a LAN-VCP-COM port with the following parameters:

  • Baudrate: 38400 Baud (Some old interface can be switched to 19200 Baud)
  • Bytes: 8
  • Stop-Bits: 1
  • Parity: None
  • Handshake: None

After you open the connection and have the COM handle, you can use the standard transfer functions to write and read the data from the interface.

Possible with the following devices:

  • LAN-DMX-Interface
  • ArtNet-DMX STAGE-PROFI 1.1
  • ArtNet-DMX UNIVERSE DR1.1
  • ArtNet-DMX UNIVERSE 4.1
  • ArtNet-DMX UNIVERSE DR4.1
  • ArtNet-LED Dimmer 4
  • ArtNet-LED Dimmer 6
  • ArtNet-LED Dimmer 4 MK2
  • ArtNet Player 4
  • ArtNet-DMX TWIN PoE
  • DMX STAGE-PROFI 1.1 RDM
  • DMX UNIVERSE DR1.1 RDM
  • DMX TwinPoE AP RDM
  • ArtNet Player X

To control the device over the TCP connection please use the IP-address of the device and use the configured port (default 10001) to open the TCP connection.

The sent and received data are RAW-data packets with the DMX4ALL command data inside.

Possible with the following devices:

  • LAN-DMX-Interface
  • ArtNet-DMX STAGE-PROFI 1.1*
  • ArtNet-DMX UNIVERSE DR1.1*
  • ArtNet-DMX UNIVERSE 4.1
  • ArtNet-DMX UNIVERSE DR4.1
  • ArtNet-LED Dimmer 4
  • ArtNet-LED Dimmer 6
  • ArtNet-LED Dimmer 4 MK2
  • ArtNet Player 4
  • ArtNet-DMX TWIN PoE
  • DMX STAGE-PROFI 1.1 RDM*
  • DMX UNIVERSE DR1.1 RDM*
  • DMX TwinPoE AP RDM*
  • ArtNet Player X*

* = The DMX4ALL Command Options must be set to TCP !

To control the device over the UDP connection please use the IP-address of the device and use the configured port (default 10001) to send data packets.

The sent and received data are RAW-data packets with the DMX4ALL command data inside.

Possible with the following devices:

  • ArtNet-DMX STAGE-PROFI 1.1*
  • ArtNet-DMX UNIVERSE DR1.1*
  • DMX STAGE-PROFI 1.1 RDM*
  • DMX UNIVERSE DR1.1 RDM*
  • DMX TwinPoE AP RDM*
  • ArtNet Player X*

* = The DMX4ALL Command Options must be set to UDP !

The HTTP request must be send to the device using the following format:

xxx.xxx.xxx.xxx/dmx4all?cmd=command

xxx.xxx.xxx.xxx → IP-Address of the device
command → DMX4ALL Command

Example:

Set DMX address 1 to value 2552.0.0.10/dmx4all?cmd=C000L255
Start programm 12.0.0.10/dmx4all?cmd=P001

Possible with the following devices:

  • DMX STAGE-PROFI 1.1 RDM
  • DMX UNIVERSE DR1.1 RDM
  • DMX TwinPoE AP RDM
  • ArtNet-LED Dimmer 4 Mk2
  • ArtNet Player X

ASCII commands

Overview of all Devices that support ASCII commands

Check connectionGet InformationsSet ChannelSet Channel (Multiverse)Set Channel ALLSet Channel with fadeSet Channel ALL with fadeStop fadeStop fade ALLGet ChannelGet Channel from DMX-INPUTRun ProgramGet ProgramSet MasterDimmerGet MasterDimmerSet RED BrightnessGet RED BrightnessSet GREEN BrightnessGet GREEN BrightnessSet BLUE BrightnessGet BLUE BrightnessSet WHITE BrightnessGet WHITE BrightnessSet Output On/Off (BlackOut)Get Output On/Off (BlackOut)Set SpeedGet SpeedSet FreezeGet FreezeSet number of output channelsGet number of output channelsGet Settings
 
NanoDMX USB-InterfaceJaJaJa------Ja----------------------
Mini-USB-DMX-InterfaceJaJaJa------Ja-------------------JaJa-
USB-DMX STAGE-PROFI MK2JaJaJa------Ja-------------------JaJa-
USB-DMX STAGE-PROFI MK3JaJaJa------JaJa---------------------
 
LAN-DMX STAGE-PROFIJaJaJa------Ja----------------------
ArtNet-DMX STAGE-PROFI 1.1JaJaJa-JaJaJaJaJaJaJa---------------------
ArtNet-DMX UNIVERSE DR1.1JaJaJa-Ja----JaJa---------------------
ArtNet-DMX UNIVERSE 4.1JaJaJaJa-----Ja----------------------
ArtNet-DMX UNIVERSE DR4.1JaJaJaJa-----Ja----------------------
ArtNet-DMX TWIN PoEJaJaJaJaJa----Ja----------------------
DMX STAGE-PROFI 1.1 RDMJaJaJa-JaJaJaJaJaJaJaJaJa----------JaJa-------
DMX UNIVERSE DR1.1 RDMJaJaJa-JaJaJaJaJaJaJaJaJa----------JaJa-------
DMX TwinPoE AP RDMJaJaJaJa-----Ja----------------------
 
DMX Player XSJaJaJa------Ja-Ja-----------------JaJa-
DMX Player SJaJaJa------Ja-------------------JaJa-
DMX Player LJaJaJa------Ja-------------------JaJa-
DMX Player ONEJaJaJa------Ja-------------------JaJa-
DMX Player L MK2JaJaJa------Ja----------------------
ArtNet Player 4JaJaJa------Ja-JaJaJaJaJaJaJaJaJaJa--JaJaJaJaJaJa--Ja
ArtNet Player XJaJaJa------Ja-JaJaJaJaJaJaJaJaJaJaJaJaJaJaJaJaJaJa--Ja
 
ArtNet-LED Dimmer 4JaJaJa-JaJaJaJaJaJa-JaJaJaJaJaJaJaJaJaJa--JaJaJaJaJaJa--Ja
ArtNet-LED Dimmer 6JaJaJa-JaJaJaJaJaJa-JaJaJaJaJaJaJaJaJaJa--JaJaJaJaJaJa--Ja
ArtNet-LED Dimmer 4 MK2JaJaJa-JaJaJaJaJaJa-JaJaJaJaJaJaJaJaJaJa--JaJaJaJaJaJa--Ja
ArtNet-LED-Dimmer CC4                                
 
ArtNet-Relais/Analog Interface 4                               Ja
                                
 

ASCII commands Description

Pay attention to the upper and lower case.

Description:
Check if the connection is OK.

Definition:

TransmitC?
ReceiveG

Description:
Get informations about the device.

Definition:

TransmitI
Receivechar-array with informations about the device

Infotext from Device

Description:
Write a value (Level) to one Channel.

Definition:

TransmitCxxxLyyy
xxx = Channel (000 … 511)
yyy = Level (000 … 255)
ReceiveG

Definition:

Write a value (level) to a channel that spans a multiverse.

TransmitCxxxxxLyyy
xxxxx = Channel (000 … 65535)
Value depends on device output universes
Channel 0 – 511 → Universe 1
Channel 512-1023 → Universe 2
: : : : : : : : : : : : : : : : : : : : : : :
yyy = Level (000 … 255)
ReceiveG

Description:
Write a value (Level) to all Channles.

Definition:

TransmitCALLLyyy
yyy = Level (000 … 255)
ReceiveG

Description:
Writes a value (Level) to a channel that is reached via a fade with the given time will.

Definition:

TransmitCxxxTzzzzzLyyy
xxx = Channel (000 … 511)
yyy = Level (000 … 255)
zzzzz = Time, Unit 0,1s (00000 … 65535)
ReceiveG

Description:
Writes a value (Level) to all channels that is reached via a fade with the given time will.

Definition:

TransmitCALLTzzzzzLyyy
yyy = Level (000 … 255)
zzzzz = Time, Unit 0,1s (00000 … 65535)
ReceiveG

Description:
Stops a fade for the specified channel that was started with Set CHANNEL with fade or Set CHANNEL ALL with fade was started.

Definition:

TransmitCxxxT00000
xxx = Channel (000 … 511)
ReceiveG

Description:
Stops all fades started with Set CHANNEL with fade or Set CHANNEL ALL with fade.

Definition:

TransmitCALLT00000
ReceiveG

Description:
Read back a DMX output channel value.

Definition:

TransmitCxxx?
xxx = Channel (000 … 511)
ReceiveyyyG
yyy = Level (000 … 255)

Description:
Read a DMX input channel value.

Definition:

TransmitVxxx?
xxx = Channel (000 … 511)
ReceiveyyyG
yyy = Level (000 … 255)

Description:
Start a program.

Definition:

TransmitPaaa
aaa = Program (001…max. program)
ReceiveG

Description:
Request the actual executed program.

Definition:

TransmitP?
ReceiveyyyG
yyy = Actual program

Description:
Write the MasterDimmer value.

Definition:

TransmitLaaa
aaa = MasterDimmer value ( 000 … 255 )
ReceiveG

Description:
Read the MasterDimmer value.

Definition:

TransmitL?
ReceivebbbG
bbb = actual read MasterDimmer value

Description:
Write the brightness value for RED channels.

Definition:

TransmitRaaa
aaa = RED brightness value (000 … 255)
ReceiveG

Description:
Read the RED brightness value.

Definition:

TransmitR?
ReceivebbbG
bbb = actual read RED brightness value

Description:
Write the brightness value for GREEN channels.

Definition:

TransmitGaaa
aaa = GREEN brightness value (000 … 255)
ReceiveG

Description:
Read the GREEN brightness value.

Definition:

TransmitG?
ReceivebbbG
bbb = actual read GREEN brightness value

Description:
Write the brightness value for BLUE channels.

Definition:

TransmitBaaa
aaa = BLUE brightness value (000 … 255)
ReceiveG

Description:
Read the BLUE brightness value.

Definition:

TransmitB?
ReceivebbbG
bbb = actual read BLUE brightness value

Description:
Write the brightness value for WHITE channels.

Definition:

TransmitWaaa
aaa = WHITE brightness value (000 … 255)
ReceiveG

Description:
Read the WHITE brightness value.

Definition:

TransmitW?
ReceivebbbG
bbb = actual read WHITE brightness value

Description:
Switch output ON/OFF.

Definition:

TransmitOa
a = 0 (OUTPUT off) / a = 1 (OUTPUT on)
ReceiveG

Description:
Get the actual Output state.

Definition:

TransmitO?
ReceivebG
b = 0 (OUTPUT off)
b = 1 (OUTPUT on)

Description:
Write the speed value.

Definition:

TransmitSaaa
aaa = Speed value ( slow 000 … 255 fast )
ReceiveG

Description:
Read the actual speed value.

Definition:

TransmitS?
ReceivebbbG
bbb = actual read speed value

Description:
Stop the program execution.

Definition:

TransmitFa
a = 0 (Freeze off) / a = 1 (Freeze on)
ReceiveG

Description:
Read the actual Freeze-State.

Definition:

TransmitF?
ReceivebG
b = 0 (Freeze off)
b = 1 (Freeze on)

Description:
Set the number of channels used for the DMX output.

Definition:

TransmitNxxx
xxx= = Number of channels (000 … 511)
ReceiveG

Description:
Get the actual number of output channels.

Definition:

TransmitN?
ReceiveyyyG
yyy = Number of channels (000 … 511)

Description:
Read the settings from the device into one string.

Definition:

TransmitX?
ReceiveRxxx;Gxxx;Bxxx;Lxxx;Sxxx;Pxxx;Fb;Ob;G
xxx = Current value
b = Current state

Array commands

Overview of all Devices that support Array commands

Write DMX-OUTWrite DMX-OUT Channel 1-256 (Fast Mode)Write DMX-OUT Channel 257-512 (Fast Mode)Read back DMX-OUTRead DMX-IN
 
NanoDMX USB-InterfaceJaJaJaJa-
Mini-USB-DMX-InterfaceJaJaJaJa-
USB-DMX STAGE-PROFI MK2JaJaJaJa-
USB-DMX STAGE-PROFI MK3JaJaJaJaJa
 
LAN-DMX STAGE-PROFIJaJaJaJa-
ArtNet-DMX STAGE-PROFI 1.1JaJaJaJaJa
ArtNet-DMX UNIVERSE DR1.1JaJaJaJaJa
DMX STAGE-PROFI 1.1 RDMJaJaJaJaJa
DMX UNIVERSE DR1.1 RDMJaJaJaJaJa
 
DMX Player XSJa----
DMX Player SJa----
DMX Player LJa----
DMX Player ONEJa----
     

Array commands Description

The array transfer is used to transfer more than one data byte (array) in one command.
Each command begins with a header byte that defines the command.
After this command the control bytes are transferred.
After the last control byte the interface send the answer packet (Receive).

Please note, that the array of the transmitted data are maximum 255 bytes long.
Also the sum of the start channel and the changes channels must be a maximum of 255 (0xFF) !

Description:
The start channel defines the destination of the data bytes.
The number of channels gives the count of data bytes.

Definition:

TransmitReceive
0xFF
start channel L
start channel H
number of channels
first data byte
..
..
last data byte
(Block transfer header)
(0x00 … 0xFF)
(0x00 / 0x01)
(0x00 … 0xFF)
(0x00 … 0xFF)
G

HinweisDon`t write data to different universes in one command.

Example:
To set the channels 10-15 to the value 100,120,140,150,255,10, please transmit the following BYTES:
FF 09 00 06 64 78 8C 96 FF 0A (Transmitted bytes)
The interface send back the ASCII char „G“ if the command is OK and executed

Description:
Write one DMX value to output buffer.

Definition:

TransmitReceive
0xE2
channel low byte
data byte
(Block transfer header)
(0x00 … 0xFF)
(0x00 … 0xFF)

Description:
Write one DMX value to output buffer.

Definition:

TransmitReceive
0xE3
channel low byte
data byte
(Block transfer header)
(0x00 … 0xFF)
(0x00 … 0xFF)

Description:
Read back the DMX values from output buffer.

Definition:

TransmitReceive
0xFE
start channel L
start channel H
number of channels
(Block transfer header)
(0x00 … 0xFF)
(0x00 / 0x01)
(0x00 … 0xFF)
DATA[0]
..
..
DATA[n]
G

Description:
Read DMX values from the input signal.

Definition:

TransmitReceive
0xFC
start channel L
start channel H
number of channels
(Block transfer header)
(0x00 … 0xFF)
(0x00 / 0x01)
(0x00 … 0xFF)
DATA[0]
..
..
DATA[n]
G

MultiUniverse array transfer commands

Overview of all Devices that support MultiUniverse array transfer commands

Write DMX-OUTRead DMX-OUTRead DMX-IN
 
DMX-MultiPixx ControlJaJaJa
 
ArtNet-DMX STAGE-PROFI 1.1JaJaJa
ArtNet-DMX UNIVERSE DR1.1JaJaJa
DMX STAGE-PROFI 1.1 RDMJaJaJa
DMX UNIVERSE DR1.1 RDMJaJaJa
    

MultiUniverse array transfer commands Description

The MultiUniverse array transfer commands can handle more than 512 channels (1 universe).

Description:
The start channel defines the destination of the data bytes, also the universe.
To access universe 1 the destination channel must be 0 to 511,
to access universe 2 the destination channel must be 512 to 1023,
to access universe 3 the destination channel must be 1024 to 1535 and so on.

Definition:

TransmitReceive
0xD1
start channel H
start channel
start channel
start channel L
number of channels H
number of channels L
first data byte
..
..
last data byte
(Block transfer header)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
G

HinweisDon`t write data to different universes in one command.

Description:
The start channel defines the source of the data bytes, also the universe.
To access universe 1 the source channel must be 0 to 511,
to access universe 2 the source channel must be 512 to 1023,
to access universe 3 the source channel must be 1024 to 1535 and so on.

Definition:

TransmitReceive
0xD2
start channel H
start channel
start channel
start channel L
number of channels H
number of channels L
(Block transfer header)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
DATA[0]
..
..
DATA[n]

HinweisDon`t read data from different universes in one command.

Description:
The start channel defines the source of the data bytes, also the universe.
To access universe 1 the source channel must be 0 to 511,
to access universe 2 the source channel must be 512 to 1023,
to access universe 3 the source channel must be 1024 to 1535 and so on.

Definition:

TransmitReceive
0xD8
universe
start channel H
start channel L
number of channels H
number of channels L
(Block transfer header)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
(0x00 … 0xFF)
CHANNELS H
CHANNELS L
DATA[0]
..
..
DATA[n]

HinweisDon`t read data from different universes in one command.