Third-Party Developers
Art-Net specification
Art-Net was created by Artistic Licence to overcome the channel restriction of DMX while still utilizing its structure. It allows multiple DMX universes to be transported over a single Cat5 cable using ethernet technology.
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
RS232 - COM port
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
USB - Virtual COM Port (USB-VCP)
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
USB - FTDI D2XX driver
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:
Ethernet - Virtual COM Port (LAN-VCP)
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
Ethernet - Transmission Control Protocol (TCP)
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 !
Ethernet - User Datagram Protocol (UDP)
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 !
Ethernet - HTTP Requests
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 255 | 2.0.0.10/dmx4all?cmd=C000L255 |
Start programm 1 | 2.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 connection | Get Informations | Set Channel | Set Channel (Multiverse) | Set Channel ALL | Set Channel with fade | Set Channel ALL with fade | Stop fade | Stop fade ALL | Get Channel | Get Channel from DMX-INPUT | Run Program | Get Program | Set MasterDimmer | Get MasterDimmer | Set RED Brightness | Get RED Brightness | Set GREEN Brightness | Get GREEN Brightness | Set BLUE Brightness | Get BLUE Brightness | Set WHITE Brightness | Get WHITE Brightness | Set Output On/Off (BlackOut) | Get Output On/Off (BlackOut) | Set Speed | Get Speed | Set Freeze | Get Freeze | Set number of output channels | Get number of output channels | Get Settings | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
NanoDMX USB-Interface | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||
Mini-USB-DMX-Interface | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||
USB-DMX STAGE-PROFI MK2 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||
USB-DMX STAGE-PROFI MK3 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | |||||
LAN-DMX STAGE-PROFI | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||
ArtNet-DMX STAGE-PROFI 1.1 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||||||
ArtNet-DMX UNIVERSE DR1.1 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||
ArtNet-DMX UNIVERSE 4.1 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | |||||
ArtNet-DMX UNIVERSE DR4.1 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | |||||
ArtNet-DMX TWIN PoE | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||
DMX STAGE-PROFI 1.1 RDM | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||||||||||
DMX UNIVERSE DR1.1 RDM | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||||||||||
DMX TwinPoE AP RDM | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | |||||
DMX Player XS | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | |||||||
DMX Player S | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||
DMX Player L | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||
DMX Player ONE | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||||
DMX Player L MK2 | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | ||||
ArtNet Player 4 | - | - | - | - | - | - | - | - | - | - | - | |||||||||||||||||||||
ArtNet Player X | - | - | - | - | - | - | - | - | - | |||||||||||||||||||||||
ArtNet-LED Dimmer 4 | - | - | - | - | - | - | ||||||||||||||||||||||||||
ArtNet-LED Dimmer 6 | - | - | - | - | - | - | ||||||||||||||||||||||||||
ArtNet-LED Dimmer 4 MK2 | - | - | - | - | - | - | ||||||||||||||||||||||||||
ArtNet-LED-Dimmer CC4 | ||||||||||||||||||||||||||||||||
ArtNet-Relais/Analog Interface 4 | ||||||||||||||||||||||||||||||||
ASCII commands Description
Pay attention to the upper and lower case.
Check connection
Description:
Check if the connection is OK.
Definition:
Transmit | C? |
Receive | G |
Get Informations
Description:
Get informations about the device.
Definition:
Transmit | I |
Receive | char-array with informations about the device |
Set Channel
Description:
Write a value (Level) to one Channel.
Definition:
Transmit | CxxxLyyy xxx = Channel (000 … 511) yyy = Level (000 … 255) |
Receive | G |
Set Channel (Multiverse)
Definition:
Write a value (level) to a channel that spans a multiverse.
Transmit | CxxxxxLyyy xxxxx = Channel (000 … 65535) Value depends on device output universes Channel 0 – 511 → Universe 1 Channel 512-1023 → Universe 2 : : : : : : : : : : : : : : : : : : : : : : : yyy = Level (000 … 255) |
Receive | G |
Set Channel ALL
Description:
Write a value (Level) to all Channles.
Definition:
Transmit | CALLLyyy yyy = Level (000 … 255) |
Receive | G |
Set Channel with fade
Description:
Writes a value (Level) to a channel that is reached via a fade with the given time will.
Definition:
Transmit | CxxxTzzzzzLyyy xxx = Channel (000 … 511) yyy = Level (000 … 255) zzzzz = Time, Unit 0,1s (00000 … 65535) |
Receive | G |
Set Channel ALL with fade
Description:
Writes a value (Level) to all channels that is reached via a fade with the given time will.
Definition:
Transmit | CALLTzzzzzLyyy yyy = Level (000 … 255) zzzzz = Time, Unit 0,1s (00000 … 65535) |
Receive | G |
Stop fade
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:
Transmit | CxxxT00000 xxx = Channel (000 … 511) |
Receive | G |
Stop fade ALL
Description:
Stops all fades started with Set CHANNEL with fade or Set CHANNEL ALL with fade.
Definition:
Transmit | CALLT00000 |
Receive | G |
Get Channel
Description:
Read back a DMX output channel value.
Definition:
Transmit | Cxxx? xxx = Channel (000 … 511) |
Receive | yyyG yyy = Level (000 … 255) |
Get Channel from DMX-INPUT
Description:
Read a DMX input channel value.
Definition:
Transmit | Vxxx? xxx = Channel (000 … 511) |
Receive | yyyG yyy = Level (000 … 255) |
Run Program
Description:
Start a program.
Definition:
Transmit | Paaa aaa = Program (001…max. program) |
Receive | G |
Get Program
Description:
Request the actual executed program.
Definition:
Transmit | P? |
Receive | yyyG yyy = Actual program |
Set MasterDimmer
Description:
Write the MasterDimmer value.
Definition:
Transmit | Laaa aaa = MasterDimmer value ( 000 … 255 ) |
Receive | G |
Get MasterDimmer
Description:
Read the MasterDimmer value.
Definition:
Transmit | L? |
Receive | bbbG bbb = actual read MasterDimmer value |
Set RED Brightness
Description:
Write the brightness value for RED channels.
Definition:
Transmit | Raaa aaa = RED brightness value (000 … 255) |
Receive | G |
Get RED Brightness
Description:
Read the RED brightness value.
Definition:
Transmit | R? |
Receive | bbbG bbb = actual read RED brightness value |
Set GREEN Brightness
Description:
Write the brightness value for GREEN channels.
Definition:
Transmit | Gaaa aaa = GREEN brightness value (000 … 255) |
Receive | G |
Get GREEN Brightness
Description:
Read the GREEN brightness value.
Definition:
Transmit | G? |
Receive | bbbG bbb = actual read GREEN brightness value |
Set BLUE Brightness
Description:
Write the brightness value for BLUE channels.
Definition:
Transmit | Baaa aaa = BLUE brightness value (000 … 255) |
Receive | G |
Get BLUE Brightness
Description:
Read the BLUE brightness value.
Definition:
Transmit | B? |
Receive | bbbG bbb = actual read BLUE brightness value |
Set WHITE Brightness
Description:
Write the brightness value for WHITE channels.
Definition:
Transmit | Waaa aaa = WHITE brightness value (000 … 255) |
Receive | G |
Get WHITE Brightness
Description:
Read the WHITE brightness value.
Definition:
Transmit | W? |
Receive | bbbG bbb = actual read WHITE brightness value |
Set Output On/Off (BlackOut)
Description:
Switch output ON/OFF.
Definition:
Transmit | Oa a = 0 (OUTPUT off) / a = 1 (OUTPUT on) |
Receive | G |
Get Output On/Off (BlackOut)
Description:
Get the actual Output state.
Definition:
Transmit | O? |
Receive | bG b = 0 (OUTPUT off) b = 1 (OUTPUT on) |
Set Speed
Description:
Write the speed value.
Definition:
Transmit | Saaa aaa = Speed value ( slow 000 … 255 fast ) |
Receive | G |
Get Speed
Description:
Read the actual speed value.
Definition:
Transmit | S? |
Receive | bbbG bbb = actual read speed value |
Set Freeze
Description:
Stop the program execution.
Definition:
Transmit | Fa a = 0 (Freeze off) / a = 1 (Freeze on) |
Receive | G |
Get Freeze
Description:
Read the actual Freeze-State.
Definition:
Transmit | F? |
Receive | bG b = 0 (Freeze off) b = 1 (Freeze on) |
Set number of output channels
Description:
Set the number of channels used for the DMX output.
Definition:
Transmit | Nxxx xxx= = Number of channels (000 … 511) |
Receive | G |
Get number of output channels
Description:
Get the actual number of output channels.
Definition:
Transmit | N? |
Receive | yyyG yyy = Number of channels (000 … 511) |
Get Settings
Description:
Read the settings from the device into one string.
Definition:
Transmit | X? |
Receive | Rxxx;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-OUT | Write DMX-OUT Channel 1-256 (Fast Mode) | Write DMX-OUT Channel 257-512 (Fast Mode) | Read back DMX-OUT | Read DMX-IN | |
---|---|---|---|---|---|
NanoDMX USB-Interface | - | ||||
Mini-USB-DMX-Interface | - | ||||
USB-DMX STAGE-PROFI MK2 | - | ||||
USB-DMX STAGE-PROFI MK3 | |||||
LAN-DMX STAGE-PROFI | - | ||||
ArtNet-DMX STAGE-PROFI 1.1 | |||||
ArtNet-DMX UNIVERSE DR1.1 | |||||
DMX STAGE-PROFI 1.1 RDM | |||||
DMX UNIVERSE DR1.1 RDM | |||||
DMX Player XS | - | - | - | - | |
DMX Player S | - | - | - | - | |
DMX Player L | - | - | - | - | |
DMX Player ONE | - | - | - | - | |
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) !
Write DMX-OUT
Description:
The start channel defines the destination of the data bytes.
The number of channels gives the count of data bytes.
Definition:
Transmit | Receive | |
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 |
Don`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
Write DMX-OUT Channel 1-256 (Fast Mode)
Description:
Write one DMX value to output buffer.
Definition:
Transmit | Receive | |
0xE2 channel low byte data byte | (Block transfer header) (0x00 … 0xFF) (0x00 … 0xFF) |
Write DMX-OUT Channel 257-512 (Fast Mode)
Description:
Write one DMX value to output buffer.
Definition:
Transmit | Receive | |
0xE3 channel low byte data byte | (Block transfer header) (0x00 … 0xFF) (0x00 … 0xFF) |
Read back DMX-OUT
Description:
Read back the DMX values from output buffer.
Definition:
Transmit | Receive | |
0xFE start channel L start channel H number of channels | (Block transfer header) (0x00 … 0xFF) (0x00 / 0x01) (0x00 … 0xFF) | |
DATA[0] .. .. DATA[n] G |
Read DMX-IN
Description:
Read DMX values from the input signal.
Definition:
Transmit | Receive | |
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-OUT | Read DMX-OUT | Read DMX-IN | |||
---|---|---|---|---|---|
DMX-MultiPixx Control | |||||
ArtNet-DMX STAGE-PROFI 1.1 | |||||
ArtNet-DMX UNIVERSE DR1.1 | |||||
DMX STAGE-PROFI 1.1 RDM | |||||
DMX UNIVERSE DR1.1 RDM | |||||
MultiUniverse array transfer commands Description
The MultiUniverse array transfer commands can handle more than 512 channels (1 universe).
Write DMX-OUT
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:
Transmit | Receive | |
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 |
Don`t write data to different universes in one command.
Read DMX-OUT
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:
Transmit | Receive | |
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] |
Don`t read data from different universes in one command.
Read DMX-IN
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:
Transmit | Receive | |
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] |
Don`t read data from different universes in one command.