RS 232 Interfacing DX1208 Control Protocol V1002

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 49

DownloadRS-232 Interfacing DX1208 Control Protocol V1002
Open PDF In BrowserView PDF
RS-232 Control Protocol
(EAWC DX1208)

Rev 1.002 – 31 August 2009
http://www.eaw.com

LOUD Technologies, Inc.

11/19/2009

Revision History
Revision
1.002

Date
08/31/09

1.001

08/13/09

1.000

08/11/09

Description
 Removed (the previous) Appendix F and edited the ‘Handshaking’
section to reflect the fact that message forwarding has been
disabled. Stateless controllers which poll are assumed.
 Changed ‘library’ to ‘preset’ for clarity and simplicity.
 Added Preset Load example.
 Initial import from (EAWC DX Family) Bucket Net Spec.
 Removed non-RS-232 related messages.
 Added RS-232 interfacing-specific sections.

2

LOUD Technologies, Inc.

11/19/2009

Table of Contents
REVISION HISTORY ................................................................................................................................. 2
TABLE OF CONTENTS ............................................................................................................................. 3
OVERVIEW ................................................................................................................................................. 5
RS-232 ........................................................................................................................................................... 5
HANDSHAKING ......................................................................................................................................... 6
BUCKET NET PROTOCOL ...................................................................................................................... 7
MESSAGE FORMAT ...................................................................................................................................... 7
HEADER FORMAT ........................................................................................................................................ 8
DATA FORMAT ............................................................................................................................................ 8
BUCKET NET MESSAGES ....................................................................................................................... 9
PING (0X00) ...............................................................................................................................................10
STATUS QUERY (0X01) ..............................................................................................................................10
MEMORY READ (0X05) ..............................................................................................................................10
ASSIGN DEVICE INSTANCE (0X06) .............................................................................................................11
WHO IS OUT THERE (0X08)........................................................................................................................11
ASSIGN DEVICE LABEL (0X0F)..................................................................................................................12
PING RESPONSE (0X30) ..............................................................................................................................12
STATUS QUERY RESPONSE (0X31) .............................................................................................................13
Hardware Information...........................................................................................................................13
Device Dependent Information..........................................................................................................13
DX Family Device Dependent Information ...................................................................................13
Boot Status.............................................................................................................................................14
Code Execution Error............................................................................................................................15
Hardware Serial Number ......................................................................................................................17
Communication Status ...........................................................................................................................17
Firmware Version ..................................................................................................................................17
Operational Status .................................................................................................................................18
Debug Log Address ...............................................................................................................................18
Current Time .........................................................................................................................................19
IP Address .............................................................................................................................................19
MEMORY READ RESPONSE (0X35) .............................................................................................................20
WHO IS OUT THERE RESPONSE (0X38) ......................................................................................................20
METERS (0X51) ..........................................................................................................................................21
FAT CHANNEL METERS (0X52) ..................................................................................................................22
PARAMETER EDIT (0X54) ...........................................................................................................................24
Parameter IDs .......................................................................................................................................26
DATA REQUEST (0X5B)..............................................................................................................................27
Meters ....................................................................................................................................................27
Fat Channel Meters ...............................................................................................................................28
Parameter Edit ......................................................................................................................................29
IDENTIFY DEVICE (0X5C) ...........................................................................................................................30
PRESET INFO (0X71) ...................................................................................................................................30
PRESET INFO RESPONSE (0X72)..................................................................................................................31
PRESET STORE (0X73) ................................................................................................................................31
PRESET LOAD (0X74) .................................................................................................................................31
PRESET CLEAR (0X75)................................................................................................................................32
APPENDIX A – DEVICE FAMILY ..........................................................................................................33

3

LOUD Technologies, Inc.

11/19/2009

APPENDIX B – DEVICE INSTANCE ......................................................................................................33
APPENDIX C – CHANNEL/TYPE IDS ...................................................................................................33
APPENDIX D – EFFECT AND PARAMETER IDS ...............................................................................34
EFFECT IDS ................................................................................................................................................34
PARAMETER IDS (BY EFFECT) ....................................................................................................................34
1 - FADER EFFECT ......................................................................................................................................34
2 - MUTE EFFECT........................................................................................................................................34
4 - SETUP EFFECT .......................................................................................................................................34
5 - EQ EFFECT ............................................................................................................................................35
6 - FILTER EFFECT ......................................................................................................................................35
7 - COMPRESSOR EFFECT ............................................................................................................................36
8 - GATE EFFECT ........................................................................................................................................36
11 - DUCKER EFFECT..................................................................................................................................36
12 - DELAY EFFECT ....................................................................................................................................36
17 - SOLO EFFECT.......................................................................................................................................36
25 - MATRIX LEVEL EFFECT .......................................................................................................................37
50 - UNIVERSAL REMOTE EFFECT ..............................................................................................................37
51 - LOGIC INPUT EFFECT ...........................................................................................................................37
53 - LOGIC OUTPUT EFFECT .......................................................................................................................38
69 - MATRIX ENABLE EFFECT ....................................................................................................................38
101 - LABEL EFFECT...................................................................................................................................38
224 - AUTOMIX EFFECT ..............................................................................................................................38
240 - GLOBAL EFFECT ................................................................................................................................39
243 - DUMMY EFFECT ................................................................................................................................39
APPENDIX E – DX FAMILY CONFIGURATION FILES ....................................................................40
APPENDIX F – EXAMPLES .....................................................................................................................42
1 - PING ......................................................................................................................................................42
2 - IDENTIFY DEVICE ..................................................................................................................................43
3 - STATUS QUERY: HARDWARE INFORMATION ........................................................................................43
4 - DATA REQUEST: METERS .....................................................................................................................44
5 - METERS .................................................................................................................................................45
6 - DATA REQUEST: PARAMETER EDIT ......................................................................................................46
7 - PARAMETER EDIT ..................................................................................................................................47
8 - PRESET LOAD ........................................................................................................................................49

4

LOUD Technologies, Inc.

11/19/2009

Overview
This document is intended for use in interfacing remote controller hardware with EAWC DX
Family installed sound mixers via the rear RS-232 port. It specifies the details of the physical
interface, the interface protocol (Bucket Net), and the hierarchy of device parameters, as well as
presenting some specific examples of ‘finished’ RS-232 control messages.
The bulk of this document is comprised of reduced specification for the Bucket Net protocol,
tailored to be specific to the needs of RS-232 controller interfacing. DX Family Devices ‘speak’
Bucket Net over RS-232, USB, and Ethernet. The DX Navigator software GUI for use with DX
Family devices can communicate (using Bucket Net) across any (or all) of these communications
channels. RS-232 controllers can similarly interface using Bucket Net messaging.
This document is intended to be generic to the entire DX Family of devices. Interface designers
will need to consult the (parameter) Configuration File specific to the DX Family member their
particular controller is intended to connect to in order to access the specific parameter lists for
that device.

RS-232
DX Family devices utilize a standard RS-232 interface, running at 115200 baud, with 8 data bits,
no parity bit, 1 stop bit, and no flow control.
Bucket Net messages are composed of 32-bit words. Those words should be broken down into 4
8-bit words for transmission over RS-232 and sent least significant byte (LSB) first.

http://www.eaw.com
5

LOUD Technologies, Inc.

11/19/2009

Handshaking
DX Family devices do not use flow control to regulate RS-232 communications; there is no
hardware handshaking. Additionally, Bucket Net does not specify any particular software
handshaking protocol. It is up to developers to insure that they:




Provide adequate time for each message to be handled and for any responses to be
generated,
Handle those responses,
Maintain synchronization of parameter data between the controller and device.

There are a number of factors which complicate this task:




Some Bucket Net messages generate responses, but many do not generate any
acknowledgement at all.
Some Bucket Net messages can generate multiple responses, and the number of
responses, while consistent for any specific message, may be unpredictable until the first
time the message is sent.
There is no easy way in Bucket Net to ‘get’ a parameter value in order to verify a ‘set’.

Note that all messages received on a particular communications channel are serialized by the DX
Family device. No valid message directed at the device is dropped, and each message must be
handled in sequence before the next can be handled.
Specific suggestions for dealing with the points above:







‘Throttling’ parameter changes so that, for instance, slider pulls, don’t generate edits
more often than the human eye and/or ear can perceive them (a few Hz), should allow
plenty of time for the device to keep up.
Waiting for all expected responses to arrive (with a timeout on the order of hundreds of
milliseconds) and checking for errors (comm status, code execution, and/or event log) if
any is not received. (Although note that errors from all communications interfaces are
handled by the same registers.)
Sending simple messages which generate a response (e.g. Ping, Status Query) can be
used to verify that preceding messages have been received and handled. (Though
watch out for invalid or misdirected messages, which will be ignored.)
The ‘scratch’ buffer can be used to buffer presets (or potentially other specifically edited
parameters) without changing device state.
The ‘Dummy’ effect of the Global Type is specifically reserved for host use; its 32
unsigned long global parameters are never touched by the DX Family device, and can be
used to ‘mark’ progress, flag the end of multiple responses, etc.

http://www.eaw.com
6

LOUD Technologies, Inc.

11/19/2009

Bucket Net Protocol
Bucket Net is an extensible messaging protocol intended primarily for use as a control protocol
for digital audio devices. It is intended to be independent of any particular communications
method, processor, or memory device.

Message Format
Bucket Net messages consist of a series of 32-bit words; they are of variable length. Each
message has a 3 word header segment. Messages may or may not have an additional, message
specific, data segment. The data segment, if present, will have a maximum length of 255 32-bit
words, for a maximum message length of 258 words.
In order to be properly handled, messages should be 32-bit aligned with respect to memory. All
messages should consist of an integral number of 32-bit words; pad bytes should be postpended
as necessary to satisfy this requirement. Unused bytes and pad bytes should be filled with the
hexadecimal value 0xFF. (WARNING: While the value 0xFF is specified by the current and
previous versions of the Bucket Net Specification, many Bucket Net implementations seem to
expect a fill value of 0x00!)

http://www.eaw.com
7

LOUD Technologies, Inc.

11/19/2009

Header Format
A Bucket Net message header consists of 3 words, divided into 9 fields (some multibyte):

W
O
R
D

0
1
2
3
…

LSB
0
SYNC
MSGID LO
MSGCHKSUM LO
(DATA BYTE 0)

1
LENGTH
MSGID HI
MSGCHKSUM HI
(DATA BYTE 1)

2
DESTINST
SRCINST
HDRCHKSUM LO
(…)

MSB
3
DESTFAM
SRCFAM
HDRCHKSUM HI

= header segment
= data segment
SYNC – The byte 0xA5 is used to signify the start of a Bucket Net message.
LENGTH – The length (in 32-bit words) of the data segment.
DESTINST – The 8-bit instance designation of destination device.
DESTFAM – The 8-bit family designation of the destination device.
MSGID – The 16-bit message specific message identifier (ID).
SRCINST – The 8-bit instance designation of the source device.
SRCFAM – The 8-bit family designation of the source device.
MSGCHKSUM – The 16-bit message checksum. This checksum is computed by taking the 1’s
complement of the sum of the bytes in the data segment. (And so has the value 0xFFFF if
‘LENGTH’ is 0.)
HDRCHCKSUM – The 16-bit header checksum. This checksum is computed by taking the 1’s
complement of the sum of the other 10 bytes in the header segment (including the message
checksum).
Note that while the family designation of a particular host or device is fixed, the instance
designation may be initialized to 0xFE (BUCKETNET_DEVICE_UNINITIALIZED) and assigned
during communications set up.
Note further that the value 0xFF (BUCKETNET_DEVICE_GLOBAL) is generally reserved for
broadcast use, and thus should not be assigned to a particular instance (or family). All devices
should handle a broadcast message.

Data Format
Whether a particular message has a data segment, and, if so, the contents of that segment, are
message ID dependent. Details of specific message IDs and their respective data segments’
formats are presented in the next section. Note the general caution (see ‘Message Format’) that
all messages must consist of an integral number of 32-bits words, with pad bytes inserted as
necessary.

http://www.eaw.com
8

LOUD Technologies, Inc.

11/19/2009

Bucket Net Messages
A number of Bucket Net messages (message IDs) have been defined:

Message

ID

Description

Ping
Status Query
Memory Read
Assign Device Instance
Who Is Out There
Assign Device Label
Ping Response
Status Query Response
Memory Read Response
Who Is Out There
Response
Meters
Fat Channel Meters
Parameter Edit
Data Request

0x00
0x01
0x05
0x06
0x08
0x0F
0x30
0x31
0x35
0x38

Query the device for its firmware version information.
Query the device for specific status information.
Read 32-bit data from memory.
Assign a device instance number.
Query the device for its serial number.
Assign a device (ASCII) label.
Requested firmware version info.
Requested status info.
Requested 32-bit data from memory.
Requested serial number.

*
*
*
*

0x51
0x52
0x54
0x5B

* Requested meter values.
* Requested ‘fat channel’ meter values.
Sets the specified parameter(s).
Request (to set locally) a specified type of data from the
(remote) device (e.g. meters, parameter values).
Identify Device
0x5C
Override the front panel LEDs for device ID purposes.
Preset Info
0x71
Request information about a preset.
Preset Info Response
0x72 * Requested preset info.
Preset Store
0x73
Store the current state to a preset.
Preset Load
0x74
Load the current state from a preset.
Preset Clear
0x75
Clear a preset..
* DX Family devices generate, but do not handle, this message ID.

http://www.eaw.com
9

LOUD Technologies, Inc.

11/19/2009

Ping (0x00)
Correctly addressed devices should respond with a Ping Response message.
Ping messages have no data segment.

Status Query (0x01)
Correctly addressed devices should respond with a Status Query Response message.
Status Query messages have an optional (16-bit) data segment. If no data segment is present,
the default status code for the device should be handled. (DX Family default: 0x00.):

LSB
0
3 STATUS_CODE_LO
Status Codes
0x0000
0x0004
0x0005
0x0007
0x0009
0x000B
0x000D
0x0011
0x0013
0x0015

1
2
STATUS_CODE_HI

MSB
3

Hardware Information
Boot Status
Code Execution Error
Hardware Serial Number
Communication Status
Firmware Version
Operational Status
Debug Log Address
Current Time
IP Address

Memory Read (0x05)
Correctly addressed devices should respond with a Memory Read Response message.
Memory Read messages have a 2 word data segment consisting of a control code and the
address of the read (byte addressing is assumed):

LSB
0
1
3 CONTROL_CODE_LO …
4 ADDRESS_LO
…

2
…
…

MSB
3
CONTROL_CODE_HI
ADDRESS_HI

While the control codes are technically the same as those used in Memory Write messages, only
the data length field (least significant byte) is applicable to reads.

http://www.eaw.com
10

LOUD Technologies, Inc.

11/19/2009

Assign Device Instance (0x06)
Assign Device Instance messages have a 3 word data segment:

LSB
0
3 DESTINST
4 SERIAL_1
5 SERIAL_5

1
DESTFAM
SERIAL_2
SERIAL_6

2

MSB
3

SERIAL_3
SERIAL_7

SERIAL_4
SERIAL_8

If the 64-bit serial number contained in the second and third data words matches the device serial
number, or if the serial number 0xFFFFFFFFFFFFFFFF is specified, then the device should
update its device family and instance values to match the 8-bit values specified in the first data
word (unless the specified value is 0xFF, in which case that field should not be changed).
Example: The device instance value 0xFE indicates that the device instance is uninitialized. In
order to reset a device to uninitialized state, a data segment of 0xFE, 0xFF, fill, fill, 0xFFFFFFFF,
0xFFFFFFFF should be sent, overwriting the instance to 0xFE, but not changing the family, of
any receiving device.

Who Is Out There (0x08)
Correctly addressed devices should respond with a Who Is Out There Response message.
Who Is Out There messages have no data segment.

http://www.eaw.com
11

LOUD Technologies, Inc.

11/19/2009

Assign Device Label (0x0F)
Assign Device Label messages have an 8 word data segment, consisting of a single, NULL
terminated, ASCII character string to be used as a device name or label:

LSB
0
3
LABEL_1
4
LABEL_5
5
LABEL_9
6
LABEL_13
7
LABEL_17
8
LABEL_21
9
LABEL_25
10 LABEL_29

1
LABEL_2
LABEL_6
LABEL_10
LABEL_14
LABEL_18
LABEL_22
LABEL_26
LABEL_30

2
LABEL_3
LABEL_7
LABEL_11
LABEL_15
LABEL_19
LABEL_23
LABEL_27
LABEL_31

MSB
3
LABEL_4
LABEL_8
LABEL_12
LABEL_16
LABEL_20
LABEL_24
LABEL_28
LABEL_32

Ping Response (0x30)
Generated in response to a Ping message. The data segment of a Ping Response consists of
one word:

LSB
3

0
OS_BUILDNUMBER

OS Build Type
Release Type (bits 0-3)

OS Type (bits 4-7)

MSB
1
OS_BUILDTYPE

2
OS_VERSION_LO

0x00 = Release
0x01 = Development
0x02 = Alpha
0x03 = Beta
0x00 = Boot
0x10 = BIST
0x20 = OS
0x30 = Production Test

http://www.eaw.com
12

3
OS_VERSION_HI

LOUD Technologies, Inc.

11/19/2009

Status Query Response (0x31)
Generated in response to a Status Query message. The data segment of a Status Query
Response depends on the status code passed in the original message. The first word of the data
segment always echoes this (16-bit) code back; further words are filled based on the code itself:

LSB
0
3 STATUS_CODE_LO
4 DATA…

1
2
STATUS_CODE_HI

MSB
3

A table of status codes is listed under the Status Query message.

Hardware Information
The status code specific data of an SQ: Hardware Information response consists of at least 3
data words, possibly more. The required 3 words encode details of the hardware and software
model and version numbers. Any further data words are device dependent:

3
4
5
6
7

LSB
Status_Code = 0
OS_BUILDNUMBER OS_BUILDTYPE
MANUFACTID_LO
…
DEVICEMEM_LO
DEVICEMEM_HI
Device dependent…

MSB
OS_VERSION_LO OS_VERSION_HI
…
MANUFACTID_HI
DEVICEFAM_LO
DEVICEFAM_HI

Device Dependent Information
Model

Manufacturer
ID

Device Family

Family
Member

Information Description

DX1208
DX200

0x00000066
0x00000066

0x0002
0x0002

0x0000
0x0001

Device Label
Device Label

DX Family Device Dependent Information
Device Label (ASCII)

Description
32 bytes of ASCII character data

http://www.eaw.com
13

LOUD Technologies, Inc.

11/19/2009

Boot Status
The status code specific data of an SQ: Boot Status response consists of 2 data words. The first
concatenates the 16-bit boot status with the 16-bit boot time (see Assign Boot Time). The second
indicates the address (in FLASH) of the boot code:

3
4
5

LSB
Status_Code = 4
BOOT_STATUS_LO BOOT_STATUS_HI BOOT_TIME_LO
BOOT_ADDR_LO
…
…

Boot Status
0
0x8000
0x8001
0x8FFF

Boot OK
Boot Held Off By Command
Boot Held Off By Key
Boot Held Off By Failure

Boot Address
-1
-2
other

Address Absent
Address Corrupt
Boot Address

http://www.eaw.com
14

MSB
BOOT_TIME_HI
BOOT_ADDR_HI

LOUD Technologies, Inc.

11/19/2009

Code Execution Error
The status code specific data of an SQ: Code Execution response consists a single data word, a
(device specific) code representing the most recent error generated by the device:

3
4

LSB
Status_Code = 5
ERROR_CODE_LO

MSB
…

…

Note that reading the error code also clears the error register.
Error Code
-9
-8
-7
-6
-5
-4
-3
-2
-1
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

No Error – TCP Connection Refused
No Error – Excess Remotes Ignored
No Error – Preset Load
No Error – Preset Clear
No Error – Preset Store
No Error – Logout
No Error – Login
No Error – Power On
No Error – Reply In Place
No Error
Unknown Error
Out of Memory
VDK – Out of Threads
Login Disabled
Bad Password
Insufficient Permission
Session Timed Out
Bucket Overflow
Bucket Timeout
BucketNet Error
BucketNet – Unimplemented Message
BucketNet – Unimplemented Option
BucketNet – Unimplemented Status Code
BucketNet – Unimplemented Request ID
BucketNet – Payload Size Mismatch
BucketNet – Payload Underflow
BucketNet – Payload Overflow
BucketNet – Bad Address
BucketNet – Bad Data
BucketNet – Bad Flags
BucketNet – Bad Format
BucketNet – Bad Type
BucketNet – Bad Instance
BucketNet – Bad Effect
BucketNet – Bad Parameter
BucketNet – Bad Source
BucketNet – Bad Destination
BucketNet – Checksum Mismatch
BucketNet – Multiblock Format Required
http://www.eaw.com
15

ERROR_CODE_HI

LOUD Technologies, Inc.

30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61

11/19/2009

FishNet Error
FishNet – Unimplemented Message
FishNet – Bad Sync
FishNet – Bad Source
FishNet – Bad Destination
FishNet – Bad Length
FishNet – Bad ID
FishNet – Checksum Mismatch
FishNet – NACK Received
FishNet – ERROR Received
FLASH Erase Error
FLASH Write Error
FLASH Read Error
Invalid FLASH Image
SDRAM Error
ADI – System Services Init Failure
ADI – ISR Init Failure
Ethernet Error
Ethernet – UDP Error
Ethernet – TCP Error
Remote Not Responding
Remote Dropped
RS-485 Transmit Error
RS-485 Receive Error
RTC Not Ready Error
SHARC Not Ready Error
SHARC Error
S/PDIF Error
Transmit Failure
UART Error
UART RX FIFO Overflow
USB RX FIFO Overflow

http://www.eaw.com
16

LOUD Technologies, Inc.

11/19/2009

Hardware Serial Number
The status code specific data of an SQ: Hardware Serial Number response consists of 2 data
words, consisting of the 64-bit device serial number:

LSB
3 Status_Code = 7
4 SERIAL_1
5 SERIAL_5

MSB
SERIAL_2
SERIAL_6

SERIAL_3
SERIAL_7

SERIAL_4
SERIAL_8

Communication Status
The status code specific data of an SQ: Communication Status response consists of a single
data word encoding the current status of communications:

LSB
3 Status_Code = 9
4 COMM_STATUS

MSB

Note that reading the communications status also clears any communications error.
Communications Status
Bit
Description*
0
General Error
1
Buffer Overrun Error
2
Checksum Failure
*A ‘1’ in the appropriate bit means the error has occurred; ‘0’ means no error.

Firmware Version
The status code specific data of an SQ: Firmware Version response is of variable length,
depending on the status of the various processors running in the DX Family device:

LSB
3 Status_Code = 11
4 OS_BUILDNUMBER
5 OS_BUILDNUMBER

MSB
OS_BUILDTYPE
OS_BUILDTYPE

OS_VERSION_LO OS_VERSION_HI
OS_VERSION_LO OS_VERSION_HI

If the device is in boot, only one additional word will be generated, encoding the Blackfin boot
firmware version number.
If the device is not in boot (in its ‘OS’), and the DSP is not ready (due to error), then only one
additional word will be generated, encoding the Blackfin OS firmware version.
If the device is not in boot, and the DSP is ready, then two additional words will be generated,
encoding first the Blackfin OS firmware version, and then the SHARC DSP firmware version.

http://www.eaw.com
17

LOUD Technologies, Inc.

11/19/2009

Operational Status
The status code specific data of an SQ: Operational Status response consists of a single data
word which encodes the operational status of the SHARC DSP:

LSB
3 Status_Code = 13
4 OPS_STATUS_LO

MSB
…

…

OPS_STATUS_HI

Note that the response to this status code is extremely device specific.
SHARC DSP Operational Status Bits
0-1
Ready (10 = ready)
2
DXLink Valid (1 = valid)
3
DXLink Locked (1 = locked)
4
Audio Locked (1 = locked)
5
S/PDIF Reset Request (0 = stop, 1 = run)
6-30
Reserved
31
Error (1 = error)

Debug Log Address
The status code specific data of an SQ: Debug Log Address response consists of 4 data words,
in 2 pairs of 2 words. Each pair communicates the base address and length in bytes of one page
of the Event (Debug) Log in FLASH:

3
4
5
6
7

LSB
Status_Code = 17
LOG0_ADDR_LO
LOG0_BYTES_LO
LOG1_ADDR_LO
LOG1_BYTES_LO

MSB
…
…
…
…

…
…
…
…

LOG0_ADDR_HI
LOG0_BYTES_HI
LOG1_ADDR_HI
LOG1_BYTES_HI

The DX Family Event Log is used in a ping-pong fashion: once one page fills, the other is erased
and begins to fill, so that there is always one full page of events in the history (once any page has
filled). Each ‘line’ of the Event Log represents a single system event:
Event Line Format
(32-bit) Word
0
1
2
3
4-15

Description
Timestamp (see Status Query: Current Time)
Firmware Version (see Status Query: Firmware Version)
Event Code (see Status Query: Code Execution Error)
Event Modifier (Event Code specific)
Event Desription (48 character NULL-terminated ASCII string)

Uninitialized (erased) FLASH bytes read as 0xFF. Note that the value 0xFFFFFFFF is not a valid
Blackfin RTC timestamp.

http://www.eaw.com
18

LOUD Technologies, Inc.

11/19/2009

Current Time
The status code specific data of an SQ: Current Time response consists of 2 data words; non-DX
Family devices may use 3, depending on the value of the first word.

LSB
3 Status Code = 19
4 FLAG_1
5 TIME_LO (0-31)
(if 64-bit time)
6 TIME_LO (32-63)
Flag Bits
Bits
0
1-7

MSB
…

…

TIME_HI (0-31)

…

…

TIME_HI (32-63)

0 = Below 50kHz (Time Format = 32-bit)
1 = Above 50kHz (Time Format = 64-bit)
Reserved (set to 0)

DX Family devices use the Blackfin RTC time format:
Blackfin RTC Time Format Bits
0-5
Seconds (0-59)
6-11
Minutes (0-59)
12-16
Hours (0-23)
17-31
Days (0-32767)
NOTE: DX Family device times typically represent elapsed time since unit ‘birth’, counting up
from 0. They are not set to reflect the accurate time of day.

IP Address
The status code specific data of an SQ: IP Address response consists of a single data word, the
current IP address for the device in 32-bit unsigned integer (network) format:

LSB
3 Status Code = 21
4 IP_ADDR_LO

MSB
…

…

IP_ADDR_HI

Note that reading the IP address of a device which is using dynamic addressing will refresh the
dynamic IP address (update the global parameter to match the current system address).

http://www.eaw.com
19

LOUD Technologies, Inc.

11/19/2009

Memory Read Response (0x35)
Generated in response to a Memory Read message. The data segment of a Memory Read
Response consists of one or more words:

LSB
0
3 ADDRESS_LO
4 DATA_LO
… MORE DATA…

1
…
…

2
…
…

MSB
3
ADDRESS_HI
DATA_HI

The address field should correspond to the address in the originating Memory Read. The count
of (32-bit) data words should correspond to the length specified in the control codes.
NOTE: Memory Reads have limited utility with respect to the DX Family. They are used primarily
to access the Event Log (see Status Query: Debug Log Address). Most system data and
parameters are ‘read’ using either specific Status Query messages or via Data Request
messages.

Who Is Out There Response (0x38)
Generated in response to a Who Is Out There message. The data segment of a Who Is Out
There Response consists of 2 words which can be concatenated to form the 64-bit device serial
number:

LSB
0
3 SERIAL_1
4 SERIAL_5

1
SERIAL_2
SERIAL_6

2
SERIAL_3
SERIAL_7

http://www.eaw.com
20

MSB
3
SERIAL_4
SERIAL_8

LOUD Technologies, Inc.

11/19/2009

Meters (0x51)
(Usually) generated in response to a Data Request message. The data segment of a Meter
message consists of one or more blocks, each of which in turn consists of at least 2 words.
The first word concatenates the 8-bit Meter Type, the 8-bit Meter Flags, and the 8-bit Instance
and Type IDs indicating the channel type and number of the first meter value. All subsequent
words in the block of data will contain meter values in the format indicated by the flags, beginning
with the indicated device Type and Instance and incrementing the instance by one for each new
value:

3
4
5
…
…
…
…

LSB
0
METER_TYPE
METER_VALUE_LO
METER_VALUE_LO
MORE VALUES…
METER_TYPE
METER_VALUE_LO
MORE VALUES…

1
METER_FLAGS
…
…

2
PARMID_INST
…
…

MSB
3
PARMID_TYPE
METER_VALUE_HI
METER_VALUE_HI

METER_FLAGS
…

PARMID_INST
…

PARMID_TYPE
METER_VALUE_HI

Meter Type Bits
0-3 Meter Placement
0000 = Pre-DSP (Channel Input)
0001 = Post-DSP (Channel Output)
4-6 Meter Type
000 = Peak
7
Reserved (= 0)
Meter Flag Bits
0-2 Meter Data Format
000 = 8-bit signed
001 = 16-bit signed (8.8)
010 = 32-bit float (IEEE float)
3-7 Meter Words
This field indicates the number of 32-bit words of meter values in
this block. Each word may contain multiple values, depending on
the format specified (e.g. up to 4 in the case of an 8-bit format).
A value of zero in this field indicates that meter values for all
instances of the specified PARMID_TYPE are being supplied.
Otherwise the first value begins from the instance specified by
PARMID_INST.
Example: If PARMID_INST is 0x09, the Meter Data Format
requested is an 8-bit format, and Meter Words is 2, then this block
of the Meter message contains meter data for channels 9 to 16 of
this type.

http://www.eaw.com
21

LOUD Technologies, Inc.

11/19/2009

Fat Channel Meters (0x52)
(Usually) generated in response to a Data Request message. ‘Fat Channel’ meters are the
meters associated with effects (such as gates, automixers, etc.), as opposed to (plain) meters,
which are associated with types (channels). The data segment of a Fat Channel Meter message
consists of one or more blocks, each of which in turn consists of at least 3 words.
The first word concatenates the 8-bit Meter Flags, and the 8-bit Instance, Effect, and Type IDs
indicating the channel type and number, as well as the effect, of the first meter value. The
second word indicates the particular Meter ID (of the specified effect) of the meter values. All
subsequent words in the block of data will contain meter values in the format indicated by the
flags, beginning with the indicated device Type, Effect, Meter ID, and Instance and incrementing
the instance by one for each new value
If Meter ID is wild (0xFF), all Meter IDs of the effect are contained in the message, incrementing
from lowest to highest per value. If values for more than one Instance are also required, then all
meter IDs for the first instance are sent before the first meter ID of the second instance:

3
4
5
6
…
…
…
..
…

LSB
0
METER_FLAGS
METERID_LO
METER_VALUE_LO
METER_VALUE_LO
MORE VALUES…
METER_FLAGS
METERID_LO
METER_VALUE_LO
MORE VALUES…

1
PARMID_INST
…
…
…

2
PARMID_EFFECT
…
…
…

MSB
3
PARMID_TYPE
METERID_HI
METER_VALUE_HI
METER_VALUE_HI

PARMID_INST
…
…

PARMID_EFFECT
…
…

PARMID_TYPE
METERID_HI
METER_VALUE_HI

Meter Flag Bits
0-2 Meter Data Format
000 = 8-bit signed
001 = 16-bit signed (8.8)
010 = 32-bit float (IEEE float)
3-7 Meter Words
This field indicates the number of 32-bit words of meter values in
this block. Each word may contain multiple values, depending on
the format specified (e.g. up to 4 in the case of an 8-bit format).
A value of zero in this field indicates that meter values for all
instances of the specified PARMID_TYPE are being supplied.
Otherwise the first value begins from the instance specified by
PARMID_INST.

http://www.eaw.com
22

LOUD Technologies, Inc.

11/19/2009

Example:
Data Request
0x000009a5,
0x0000005b,
// data request
0x00000000,
// checksum (gets calculated when sent)
BNMESSAGE_ID_FATCHANMETERS,
// Fat Meter request
//
Type ID
Effect
Channel
Format Meters
//
Request ALL Analog Input Comp Input Meters in 32 bit float format
(TYPEID_ANALOG_INPUT << 24)+(EFFECTID_COMP<<16)+ (0xFF<<8)+ 0x02, 1,
//
Request ALL Analog Input Gate Input Meters in 32 bit float format
(TYPEID_ANALOG_INPUT << 24)+ (EFFECTID_GATE<<16)+(0xFF<<8)+ 0x02, 3;
//
Request Analog Input Channel 13 Comp Input Meter in 32 bit float format
(TYPEID_ANALOG_INPUT << 24)+(EFFECTID_COMP<<16)+ (0x0D<<8)+ 0x0A, 1;
//
Request Analog Input Channel 13-24 Comp Input Meter in 32 bit float format
(TYPEID_ANALOG_INPUT << 24)+(EFFECTID_COMP<<16)+ (0x0D<<8)+ 0x02, 1;

Fat Channel Meters
0x000045A5,
0x0107FFC2,
0xC2B164ED,
0xC2B6057B,
0xC2B42D05,
0xC3107E90,
0x0108FFC2,
0xC2B164ED,
0xC2B6057B,
0xC2B42D05,
0xC3107E90,
0x01070D0A,
0xC2B42D05,
0x01070D62,
0xC2B42D05,
0xC3107E90,

0xFFFF0052,
0x00000001
0xC2B36C43,
0xC2B64B0C,
0xC2B65D94,
0xC3107E90,
0x00000003,
0xC2B36C43,
0xC2B64B0C,
0xC2B65D94,
0xC3107E90,
0x00000001,

0x????????
0xC2B3FF1E,
0xC2B3D613,
0xC2B47779,
0xC2B38563,

0xC2B4953B,
0xC2B52BED,
0xC2B5C2E7,
0xC2B5AC61,

0xC2B29F2C,
0xC2B14BD4,
0xC3107E90,
0xC2B38771,

0xC2B33307,
0xC2B2C7A0,
0xC3107E90,
0xC2B172A5,

0xC2B3FF1E,
0xC2B3D613,
0xC2B47779,
0xC2B38563,

0xC2B4953B,
0xC2B52BED,
0xC2B5C2E7,
0xC2B5AC61,

0xC2B29F2C,
0xC2B14BD4,
0xC3107E90,
0xC2B38771,

0xC2B33307,
0xC2B2C7A0,
0xC3107E90,
0xC2B172A5,

0x00000001,
0xC2B65D94, 0xC2B47779, 0xC2B5C2E7, 0xC3107E90, 0xC3107E90,
0xC3107E90, 0xC2B38563, 0xC2B5AC61, 0xC2B38771, 0xC2B172A5;

http://www.eaw.com
23

LOUD Technologies, Inc.

11/19/2009

Parameter Edit (0x54)
Parameter Edit messages may be generated in response to a Data Request message; they are
also commonly generated directly in response to user input. The data segment of a Parameter
Edit message consists of one or more blocks, each of which in turn consists of at least 3 words.
The first 32-bit data word consist of numerous Flags describing the format of the message and its
contents; depending on these flags the content of subsequent fields may change.
The second 32-bit data word specifies the precise (first) parameter to be edited, using a semihierarchical taxonomy common to all Bucket Net parameters (see below).
Subsequent data words depend heavily on the particular Flags. The example below shows the
typical format of DX Family Parameter Edits, with one parameter value per word, beginning with
the parameter specified in the second word of the block and incrementing thereafter either by
instance or parameter according to the Flags; there are two blocks of edits:

3
4
5
6
…
X-1
X
X+1
X+2
X+3
…
X+M

LSB
0
FLAGS1
PARMID_PARAM
VALUE1_LO
VALUE2_LO
…
VALUEN_LO
FLAGS1
PARMID_NUMBER
VALUE1_LO
VALUE2_LO
…
VALUEN_LO

1
FLAGS2
PARMID_INST
…
…

2
FLAGS3
PARMID_EFFECT
…
…

MSB
3
FLAGS4
PARMID_TYPE
VALUE1_HI
VALUE2_HI

…
FLAGS2
PARMID_INST
…
…

…
FLAGS3
PARMID_EFFECT
…
…

VALUEN_HI
FLAGS4
PARMID_TYPE
VALUE1_HI
VALUE2_HI

…

…

VALUEN_HI

http://www.eaw.com
24

LOUD Technologies, Inc.

11/19/2009

FLAGS1 Bits – General Flags
0
Autoincrement Enable
0 = Disabled (Single Parameter Edit)
1 = Enabled (see Autoincrement Type)
1
Reserved (= 0)
2-3 Reserved (= 00)
4
Autoincrement Type
0 = Increment Parameter Number
1 = Increment Instance Number
5-6 Reserved (= 00)
7
Reserved (= 0)
FLAGS2 Bits – Data Format
0
Reserved (= 0)
1-5 Data Element Format
00000 = unsigned long (32-bit)
00001 = signed long (32-bit)
00010 = unsigned short (16-bit)
00011 = signed short (16-bit)
00100 = unsigned char (8-bit)
00101 = signed char (8-bit)
00110 = float (32-bit IEEE float)
00111 = double (64-bit IEEE double precision)
01000 = double long (64-bit signed integer)
01001 = fractional data type (16.16)
01001-11111 = Reserved
6-7 Reserved (= 00)
FLAGS3 Bits – Target Buffer
0
Target Buffer (to Edit)
0 = Edit Buffer
1 = Scratch Buffer
1-5 Reserved (ignored)
6-7 Reserved (= 00)
FLAGS4 – Block Length
0
Block continues to the end of the message.
1-255 Block Words - This field indicates the number of 32-bit words of parameters
in this block. Each word may contain multiple values, depending on the
format specified (e.g. up to 4 in the case of an 8-bit format).

http://www.eaw.com
25

LOUD Technologies, Inc.

11/19/2009

Parameter IDs
Parameters in Bucket Net are specified using four values:
TYPE
EFFECT
INSTANCE
PARAMETER
(NUMBER)

The ‘type’ or ‘channel’, e.g. Analog Input, Global, or Logic Output, etc.
E.g. Compressor, Gate, EQ, Fader, Logic Input, Label, Global, Mute, etc.
‘Types’ are grouped into multiple instances, e.g. Analog Outputs 1-8; this is
the particular instance number. Note that ‘Global’ types have 0 instances.
These are the specific parameters of a particular effect, e.g. Gate Attack,
Fader Level, Mute Enable, Global Default Preset, etc.

The current state of all parameters is maintained in volatile memory (RAM); this memory buffer is
referred to as the ‘edit’ buffer. Edits to the edit buffer have an immediate effect on device state.
A mirror buffer of the same size is also maintained; this ‘scratch’ buffer can be used to buffer
presets or individual parameter data without affecting the current state.
Examples:
Parameter Edit (Single Block)
0x00000aa5,
0x00000054,
0x00000000,
0x00000c01,
0x01080201,
0x3f800000,
0x430177f8,
0x00000000,
0x42480000,
0xc2700000,
0x3f800000,
0x00000000,
0x00000000

//
//
//
//
//
//
//
//
//
//
//
//

parameter edit
checksum (gets calculated when sent)
format flag (auto increment – parameter, 32 bit float)
starting PID (analog input, gate effect, channel 2, parameter 1)
value of PID 0x01080201
value of PID 0x01080202
value of PID 0x01080203
value of PID 0x01080204
value of PID 0x01080205
value of PID 0x01080206
value of PID 0x01080207
value of PID 0x01080208

Parameter Edit (Multiple Block)
0x000007a5,
0x00000054, // parameter edit
0x00000000, // checksum (gets calculated when sent)
0x06000a11,
0x01010101,
0x05ff0ef8,
0x0000fff3,

//
//
//
//

format flag (auto increment – instance, 8 bit char)
starting PID (analog input, fader, channel 1, parameter 1)
values of PID 0x01010101 (value of f8) to 0x01010401 (value of 05)
values of PID 0x01010501 (value of f3) to 0x01010601 (value of ff)

0x01000000, // format flag (auto increment off, ulong 32 bits)
0x01050107, // starting PID (analog input, eq, channel 1, band 2 enable)
0x00000001, // value of PID 0x01050107

http://www.eaw.com
26

LOUD Technologies, Inc.

11/19/2009

Data Request (0x5B)
Correctly addressed devices should respond with the specified message type.
Data Request messages have at least 1 word in their data segment. This first word consists of
an 8-bit Data Request ID describing the type of data requested; the other 24 bits of the first word,
and all subsequent words in the data segment, depend on the data type requested:

3
4

LSB
0
DATAREQ_ID
DATA…

Data Request Types
Request Type
Meters
Fat Channel Meters
Parameter Edit

1
(FLAGS1)

DATAREQ_ID
0x51 (81)
0x52 (82)
0x54 (84)

2
(FLAGS2)

MSB
3
(FLAGS3)

FLAGS1
N/A
N/A
Source/Destination Buffer

Meters
The Data Request Type specific data of an DR: Meters consists of 1 data word per request; each
request word should generate a new block in the Meters message response. (WARNING:
Requesting more meter data than can be fit into the payload of a single Meters message is
invalid!)
Each data word is formatted exactly as the first data word of a Meters message, except that
PARMID_INST is allowed to be wild (0xFF), requesting all instances of the specified type, and
Meter Flag Bits 3-7 are modified to accommodate wildcarding:

4
5
…

LSB
METER_TYPE
METER_TYPE
MORE REQS…

METER_FLAGS
METER_FLAGS

PARMID_INST
PARMID_INST

Meter Flag Bits
3-7 Meter Words
If PARMID_INST is wild (0xFF) this field is omitted (set to zero);
meter data for all instances of the specified type should be
returned.
Otherwise, this field indicates the number of 32-bit words of meter
values in this block, as usual. Each word may contain multiple
values, depending on the format specified (e.g. up to 4 in the case
of an 8-bit format).

http://www.eaw.com
27

MSB
PARMID_TYPE
PARMID_TYPE

LOUD Technologies, Inc.

11/19/2009

Fat Channel Meters
The Data Request Type specific data of an DR: Fat Channel Meters consists of 2 data words per
request; each request word should generate a new block in the Fat Channel Meters message
response. (WARNING: Requesting more fat channel meter data than can be fit into the payload
of a single Fat Channel Meters message is invalid!)
Each request is formatted exactly as the first two data words of a Fat Channel Meters message,
except that PARMID_INST is allowed to be wild (0xFF), requesting all instances of the specified
type, and Meter Flag Bits 3-7 are modified to accommodate wildcarding. (Meter ID is allowed to
be wild (0xFF) as usual.):

3
4
5
6
…

LSB
METER_FLAGS
METERID_LO
METER_FLAGS
METERID_LO
MORE REQS…

PARMID_INST
…
PARMID_INST
…

PARMID_EFFECT
…
PARMID_EFFECT
…

Meter Flag Bits
3-7 Meter Words
If PARMID_INST is wild (0xFF) this field is omitted (set to zero);
meter data for all instances of the specified type should be
returned.
Otherwise, this field indicates the number of 32-bit words of meter
values in this block, as usual. Each word may contain multiple
values, depending on the format specified (e.g. up to 4 in the case
of an 8-bit format).

http://www.eaw.com
28

MSB
PARMID_TYPE
METERID_HI
PARMID_TYPE
METERID_HI

LOUD Technologies, Inc.

11/19/2009

Parameter Edit
The Data Request Type specific data of an DR: Parameter Edit consists of 1 data word; only one
request is allowed per DR: Parameter Edit. Note, however, that a single Data Request of this
type may generate multiple Parameter Edit messages in response, not just one; it is up to the
recipient to decide how to package up the data requested.
It should be stressed that the response to a DR: Parameter Edit is a Parameter Edit. The
FLAGS1 field of the Data Request is used to specify the target buffer both for reading the
parameter data on the recipient side and for editing on the requesting side. Requesting to Edit
the edit buffer is effectively the same as a ‘Request to Set’, in that it destructively overwrites the
current parameter value on the requesting side. Requesting to Edit the scratch buffer, however,
can be used to emulate a ‘Get’; the received parameters can be compared to local parameters
without altering current state. (Of course the difficulty in this case is getting the desired state into
the scratch buffer.):
FLAGS1 - Source/Destination Buffer
0
Edit Buffer
1
Scratch Buffer
2-255
Reserved
The request is formatted exactly as the second data words of a Parameter Edit message, except
that each 8-bit field is allowed to be wild (0xFF), with results as tabulated below:

3

LSB
PARMID_PARAM

Wildcard Effects
Parameter ID Field
TYPE

PARMID_INST

PARMID_EFFECT

MSB
PARMID_TYPE

Effect
Edits all parameters of the device. (WARNING: This will include any
‘dummy’ global effect used for handshaking!)
Edits all parameters of the specified type.
Edits all parameters of the specified effect.

EFFECT
INSTANCE &
PARAMETER
INSTANCE
Edits all instances of the specified effect parameter.
PARAMETER
Edits all parameters of the specified effect instance.
NOTE: Only the ‘most significant’ wildcard will be applied, except in the case of both Instance
and Parameter wildcarding.

http://www.eaw.com
29

LOUD Technologies, Inc.

11/19/2009

Identify Device (0x5C)
Identify Device messages have a 1 word data segment, indicating the desired response of the
front panel I/O LEDs:

LSB
0
3 LED_CMD_LO
LED Command
-1 (= 0xFFFFFFFF)
0
1 – 4294967294 (= N)

1
…

2
…

MSB
3
LED_CMD_HI

Turn LEDs On (random pattern)
Turn LEDs Off
Turn LEDs On (random pattern) for N ms, then Turn LEDs Off

Preset Info (0x71)
Correctly addressed devices should respond with a Preset Info Response message.
Preset Info messages have a 1 word data segment. The low 16-bits specify the (Data) Index of
the preset to be searched. The 8-bit Library Type field specifies the type of state buffer, which is
fixed to ‘preset’ for DX Family devices. The remaining 8-bit field is used to specify the source or
destination buffer for Preset Load and Store operations; it is ignored for purposes of the Info
message:

LSB
0
3 DATA_INDEX_LO

1
DATA_INDEX_HI

2
LIBRARY_TYPE

MSB
3
SRC_DEST_BUF

DX Family preset indices begin at 0; preset numbers (in DX Navigator) begin at 1. To convert
from index to number, simply add 1 (or subtract 1 if going from number to index).
Library Type
1
non-1

Preset
Reserved

Source/Destination Buffer
0
Edit Buffer
1
Scratch Buffer
2-255
Reserved
NOTE: Current device state is referred to as the ‘edit’ buffer. Loading to the ‘edit’ buffer changes
device state. The ‘scratch’ buffer can be loaded to with affecting device state.

http://www.eaw.com
30

LOUD Technologies, Inc.

11/19/2009

Preset Info Response (0x72)
Generated in response to a Preset Info message. The data segment of a Preset Info Response
consists of 10 words. The first word copies the data segment of the originating Info message
The second indicates the initialization status of the specified preset. The remaining 8 words
contain a single, NULL terminated, ASCII character string (of up to 32 characters) reflecting the
preset’s name or label (which should be NULL if the buffer is uninitialized):

LSB
0
3
DATA_INDEX_LO
4
INIT_STATUS
5
LABEL_1
6
LABEL_5
7
LABEL_9
8
LABEL_13
9
LABEL_17
10 LABEL_21
11 LABEL_25
12 LABEL_29
Initialization Status
0
non-1

1
DATA_INDEX_HI

2
LIBRARY_TYPE

MSB
3
SRC_DEST_BUF

LABEL_2
LABEL_6
LABEL_10
LABEL_14
LABEL_18
LABEL_22
LABEL_26
LABEL_30

LABEL_3
LABEL_7
LABEL_11
LABEL_15
LABEL_19
LABEL_23
LABEL_27
LABEL_31

LABEL_4
LABEL_8
LABEL_12
LABEL_16
LABEL_20
LABEL_24
LABEL_28
LABEL_32

Buffer Uninitialized
Buffer Initialized

Preset Store (0x73)
Preset Store messages have a 1 word data segment. The low 16-bits specify the (Data) Index of
the (destination) preset to be written to. The 8-bit Library Type field specifies the type of state
buffer. The 8-bit Source Buffer field is used to specify the source buffer to be read from:

LSB
0
3 DATA_INDEX_LO

1
DATA_INDEX_HI

2
LIBRARY_TYPE

MSB
3
SRC_BUFFER

(See the Preset Info message for further detail.)

Preset Load (0x74)
Preset Load messages have a 1 word data segment. The low 16-bits specify the (Data) Index of
the (source) preset to be read from. The 8-bit Library Type field specifies the type of state buffer.
The 8-bit Destination Buffer field is used to specify the destination buffer to be written to:

LSB
0
3 DATA_INDEX_LO

1
DATA_INDEX_HI

2
LIBRARY_TYPE

(See the Preset Info message for further detail.)

http://www.eaw.com
31

MSB
3
DEST_BUFFER

LOUD Technologies, Inc.

11/19/2009

Preset Clear (0x75)
Preset Clear messages have a 1 word data segment. The low 16-bits specify the (Data) Index of
the (destination) preset to be cleared. The 8-bit Library Type field specifies the type of state
buffer. The remaining 8-bit field is used to specify the source or destination buffer for Preset
Load and Store operations; it is ignored for purposes of the Clear message:

LSB
0
3 DATA_INDEX_LO

1
DATA_INDEX_HI

2
LIBRARY_TYPE

(See the Preset Info message for further detail.)

http://www.eaw.com
32

MSB
3
SRC_DEST_BUF

LOUD Technologies, Inc.

11/19/2009

Appendix A – Device Family
Device ID
0xFF
0x00
0x07

Description
Global Device Family
PC Host
Processor (inc. DX Family)

Appendix B – Device Instance
Device ID
0xFF
0xFE

Description
Global Device (Broadcast)
Uninitialized Device (Default)

Appendix C – Channel/Type IDs
Note also that while most channels can have one or more ‘instances’ (e.g. 8 analog inputs or 4
digital inputs), global ‘types’ have zero instances by convention.
Channel/Type ID
1
2
3
50
51
53
225
227
240

Description
Analog Input
Digital Input
Analog Output
Remote
Logic Input
Logic Output
DXLink Input
DXLink Output
Global

http://www.eaw.com
33

LOUD Technologies, Inc.

11/19/2009

Appendix D – Effect and Parameter IDs
Note that not all types (or channels) support all effects.

Effect IDs
Effect ID
1
2
4
5
6
7
8
11
12
17
25
50
51
53
69
101
224
240
243

Name
Fader
Mute
Setup
EQ
Filter
Compressor
Gate
Ducker
Delay
Solo
Matrix Level
Universal Remote
Logic Input
Logic Output
Matrix Enable
Label
Automix
Global
Dummy

Comments

Mic Pre
Parametric EQ
High- or Lowpass Filter
Alternatively a Limiter or an AGC
Alternatively an Expander

(‘Global’ effect - zero instances)
Host scratchpad (‘Global’ effect - zero instances)

Parameter IDs (by Effect)
1 - Fader Effect
Parameter #
1

Description
Fader Level

2 - Mute Effect
Parameter #
1

Description
Mute Enable

4 - Setup Effect
Parameter #
1
2
3

Description
Setup Enable
Analog Trim (0, 20, 40, 50, 60 dB)
Phantom Power

http://www.eaw.com
34

LOUD Technologies, Inc.

11/19/2009

5 - EQ Effect
Parameter #
1
2
3
4
5
6
7
8
9
10
11
12...16
17...21
22...26
27...31
32...36
37...41

Description
EQ Enable (all bands)
EQ Band 1 Enable
EQ Band 1 Frequency
EQ Band 1 Q
EQ Band 1 Gain
EQ Band 1 Type (see below)
EQ Band 2 Enable
EQ Band 2 Frequency
EQ Band 2 Q
EQ Band 2 Gain
EQ Band 2 Type
EQ Band 3 Enable, Frequency, Q, Gain, Type
EQ Band 4 Enable, Frequency, Q, Gain, Type
EQ Band 5 Enable, Frequency, Q, Gain, Type
EQ Band 6 Enable, Frequency, Q, Gain, Type
EQ Band 7 Enable, Frequency, Q, Gain, Type
EQ Band 8 Enable, Frequency, Q, Gain, Type

EQ Filter Types
0
1
2
3
4
5
6

Low Pass (2 order Butterworth)
nd
High Pass (2 order Butterworth)
Band Pass (a.k.a. Parametric)
nd
Low Shelf (2 order)
nd
High Shelf (2 order)
st
Low Shelf (1 order)
st
High Shelf (1 order)

nd

6 - Filter Effect
Parameter #
1
2
3
4
5
6
7
8
9

Description
Filter Enable (all bands) (constant)
Highpass Filter Enable
Highpass Filter Frequency
Highpass Filter Type (see below)
Highpass Filter Slope (6, 12, 18, or 24 dB)
Lowpass Filter Enable
Lowpass Filter Frequency
Lowpass Filter Type
Lowpass Filter Slope (6, 12, 18, or 24 dB)

HPF & LPF Filter Types
0
Butterworth
1
Linkwitz-Riley
2
Bessel

http://www.eaw.com
35

LOUD Technologies, Inc.

11/19/2009

7 - Compressor Effect
Parameter #
1
2
3
4
5
6
7
8
9
10
11
12

Description
Compressor Enable
Gain (Makeup)
Attack
Release
Threshold
Ratio
Knee (constant)
Knee Enable (constant)
Stereo Link Enable (constant)
AGC Enable
AGC Threshold
AGC Target

8 - Gate Effect
Parameter #
1
2
3
4
5
6
7
8
9

Description
Gate Enable
Attack
Hold
Release
Threshold
(Expander) Ratio (constant)
(Gate) Range
Mode (Gate -> 0 or Expander -> 1) (constant)
Stereo Link Enable (constant)

11 - Ducker Effect
NOTE: See also the Global effect for more ducker parameters.
Parameter #
Description
1
Ducker Enable
2
Priority
3
Level Detect

12 - Delay Effect
Parameter #
1
2

Description
Delay Enable
Delay Time

17 - Solo Effect
Parameter #
1

Description
Solo Assign

http://www.eaw.com
36

LOUD Technologies, Inc.

11/19/2009

25 - Matrix Level Effect
Parameter #
1
2
3
…
29

Description
Matrix Level Out
Matrix Level In 1
Matrix Level In 2
…
Matrix Level In 28

50 - Universal Remote Effect
Parameter #
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

Description
Initialized
Present (read only)
Enable
ID
Type
I/O 1 LED State (read only)
I/O 1 Action
I/O 1 Event
I/O 1 Select
I/O 2 LED State (read only)
I/O 2 Action
I/O 2 Event
I/O 2 Select
I/O 3 LED State (read only)
I/O 3 Action
I/O 3 Event
I/O 3 Select
I/O 4 LED State (read only)
I/O 4 Action
I/O 4 Event
I/O 4 Select

51 - Logic Input Effect
Parameter #
1
2
3
4
5
6

Description
Logic In Enable
State (read only)
Action
Active
Event
Select

http://www.eaw.com
37

LOUD Technologies, Inc.

11/19/2009

53 - Logic Output Effect
Parameter #
1
2
3
4
5

Description
Logic Out Enable
State (read only)
Active
Event
Select

69 - Matrix Enable Effect
Parameter #
1
2
3
…
29

Description
Matrix Enable Out
Matrix Enable In 1
Matrix Enable In 2
…
Matrix Enable In 28

101 - Label Effect
Parameter #
1
2
3
4
5
6
7
8

Description
Characters 0-3
Characters 4-7
Characters 8-11
Characters 12-15
Characters 16-19
Characters 20-23
Characters 24-27
Characters 28-31

224 - Automix Effect
Parameter #
1
2
3
4
5
…
31

Description
Automix Enable
Response
Ratio
Assign In 1
Assign In 2
…
Assign In 28

http://www.eaw.com
38

LOUD Technologies, Inc.

11/19/2009

240 - Global Effect
NOTE: Global parameters are very device specific!
Parameter #
Description
1
Ducker Attack
2
Ducker Release
3
Ducker Threshold
4
Ducker Hold
5
Ducker Priority 1 Enable
6
Ducker Priority 1 Depth
7
Ducker Priority 2 Enable
8
Ducker Priority 2 Depth
9
Ducker Priority 3 Enable
10
Ducker Priority 3 Depth
11
Ducker Priority 4 Enable
12
Ducker Priority 4 Depth
13
Global Initialized (system maintained)
14
Preset Initialized (system maintained)
15
Default Preset
16
Login Enable
17
Admin Password Characters 0-3 (write only)
18
Admin Password Characters 4-7 (write only)
19
Admin Password Characters 8-11 (write only)
20
Admin Password Characters 12-15 (write only)
21
User Password Characters 0-3 (write only)
22
User Password Characters 4-7 (write only)
23
User Password Characters 8-11 (write only)
24
User Password Characters 12-15 (write only)
25
Static IP Enable
26
Static IP Address
27
Static IP Subnet Mask
28
Static IP Subnet Gateway
29
DXLink Master
30
DXLink Valid (read only)
31
DXLink Locked (read only)
32
Audio Locked (read only)
33
SHARC Ready (read only)
34
SHARC Error (read only)
35
Dynamic IP Address (read only)

243 - Dummy Effect
Parameter #
1
2
…
32

Description
Dummy 1
Dummy 2
…
Dummy 32

http://www.eaw.com
39

LOUD Technologies, Inc.

11/19/2009

Appendix E – DX Family Configuration Files
Each DX Family member (DX1208, DX200) has its own device-specific Configuration
spreadsheet. This spreadsheet enumerates all device parameters in tabular format along with
important statistics pertaining to each parameter and to various parameter groupings. This
section is intended as a ‘key’ to deciphering a DX Family Configuration file.
There is a single identifying label at the beginning of a DX Family Configuration, listing the device
type and the date of the last file update. The rest of the file consists of a table of parameter
information, with one parameter per row. There are twelve columns per row; most parameters
have values in only a subset of the columns, as the file is laid out in a hierarchical format, per the
Bucket Net Parameter ID hierarchy (see Parameter IDs).
Column Heading
TYPE
INSTANCES

Description
Type IDs for each device Type (or channel).
The number of instances of the specified Type.
(‘Global’ effects have 0 instances by convention.)
TAPS
The number of meter placements available for the specified Type.
(See Meters.)
EFFECT
Effect IDs for each Effect of the specified Type.
Note the same effect can be used on multiple Types.
WORDS
This data is relevant for DSP interfacing only – it has no effect on external
communications.
FAT
The number of fat channel meter IDs available for the specified Effect.
(See Fat Channel Meters.)
For most effects there are two meter IDs – one for the input signal level and
the other for output signal level. However, the Automix effect takes input
signals from each input channel, and it thus has many more IDs.
PARAMETER
Parameter IDs (or numbers) for each Parameter of the specified Effect.
All Parameter ID values start at 1 and increment by 1 per parameter.
SEGMENT
The memory segment in which the value of the specified parameter is stored.
(See below.)
FORMAT
The native format of the specified parameter.
This is generally either Boolean, unsigned long integer, or 32-bit floating
point, as DX Family device processors are 32-bit processors. (Note that 32bit Boolean values are representing using 32-bit unsigned long integers, so
there are really only two formats.)
MIN
The minimum value of the specified parameter.
INIT
The initial (or default) value of the specified parameter.
MAX
The maximum value of the specified parameter.
*All IDs are represented by #defined labels (which decode to the integral values specified in
Appendices C & D) for readability.
The first line of the parameter information specifies a type, its first effect, and the effect’s first
parameter. Subsequent lines step through the rest of the effect parameters, one per line (with no
gaps – constant parameters are used as placeholders for consecutive parameters which are not
implemented or not user configurable on a particular device), until all effect parameters are
specified. The next effect begins the next line, continuing until all effects of the type have been
specified. The next type then begins the next line, until all types are specified and all device
parameters have been accounted for. Note that while the effects and types need not be specified
in any particular order, there can only be one occurrence of a particular type per device and only
one occurrence of an effect per type.
http://www.eaw.com
40

LOUD Technologies, Inc.

11/19/2009

Memory Segments
SEGMENT
Access
0
constant

Description
Constant or unused (placeholder) parameters.

1

Edits to these parameters will be ignored; requests will return their
default value.
Read only system state – not backed up to FLASH.

read-only

Edits to these parameters will be ignored; requests will return their
current value.

2

write-only

NOTE: Read-only parameters are generally allowed to change
without notice – they must be polled or requested in order to
maintain synchronization.
Write only password data.
Edits to these parameters will succeed; requests, however, will
ALWAYS return their default value, even if they have been changed.

3

4

global

NOTE: All write-only parameters are also global.
Read- and writeable global control parameters.

preset

Edits to these parameters will affect the current system state, are
immediately backed up to FLASH, and persist across power cycles.
Read- and writeable preset specific parameters.
Edits to these parameters will affect the current system state; unless
the system state is backed up to FLASH using a Preset Store
message the edits will not survive a power cycle.

For user editable parameters (segments 2-4), the last four columns of the parameter information
describe the format and limits of the parameter value. Attempts to set a parameter value to below
its minimum or above its maximum will fail, causing the entire Parameter Edit message containing
the change to be invalidated, and generating an error (see Status Query: Debug Log Address).
Note that issuing a Preset Load specifying an uninitialized preset will effectively reset current
device state to the default values of all (non-global) parameters.
Finally, while the format column specifies the ‘native’ format of each parameter, some format
conversion is built in to Bucket Net messaging. In particular, 32-bit floating format is commonly
used as a sort of ‘interchange’ format for the purpose of generating autoincrement parameter
Parameter Edit messages (possibly is response to a Data Request). When an entire effect
instance is being specified using a single autoincrement parameter message, and the formats of
the effect parameters are not all the same, it is expedient to avoid the use of multiblock edits by
simply converting all the non-floating point parameter values (which are unsigned long integers
on DX Family devices) into 32-bit floating point values. (WARNING: This conversion is not
always possible without loss of precision or distortion of the parameter value!) DX Family devices
may generate such Parameter Edit messages in response to Data Requests; DX Family
Parameter Edit handlers will attempt to ‘deconvert’ received floating-point formatted data into its
native format.

http://www.eaw.com
41

LOUD Technologies, Inc.

11/19/2009

Appendix F – Examples
This section is intended to navigate the reader step by step through the process of creating
hexadecimal strings suitable for use in RS-232 interfacing for several basic messages.

1 - Ping
Ping messages have no data segment, so creating one involves only filling in the proper header
fields:
Header Field
SYNC
LENGTH
DESTINST

Value
0xA5
0x00 (no data segment)
A

DESTFAM
MSGID (16-bit)
SRCINST
SRCFAM
MSGCHKSUM (16-bit)
HDRCHKSUM (16-bit)

The instance designation of the destination, if known and/or assigned.
0xFF will here will ‘broadcast’ to all instances; 0xFE will specify all
uninitialized instances. It is typical to use Assign Device Instance to set
the instance number of an uninitialized device instance.
0x07 (DX Family)
0x0000 (Ping message ID)
0x01 (or whatever instance you’d like to be)
0x00 (PC Host – We’re pretending to be a PC!)
0xFFFF (1’s complement of 0x0000, as there is no data segment)
B
This will depend on the value of A, and is computed by taking the 1’s
complement of the sum of the (other) header bytes: 0xA5 + 0x00 + A +
0x07 + 0x00 + 0x00 + 0x01 + 0x00 + 0xFF + 0xFF.

Thus, the finished Ping message, transmitted left to right, is:
0xA5, 0x00, A, 0x07, 0x00, 0x00, 0x01, 0x00, 0xFF, 0xFF, B (lo), B (hi)
A DX Family device receiving this message should reply with a Ping Response message.

http://www.eaw.com
42

LOUD Technologies, Inc.

11/19/2009

2 - Identify Device
Identify Device messages do not generate a response; they do, on the other hand, generate
visual feedback from the front panel of the connected device. The header of an Identify Device
message is composed as shown for the Ping message, with two important differences: message
ID and (data segment) length:
Header Field
LENGTH
MSGID (16-bit)
MSGCHKSUM (16-bit)

Value
0x01
0x005C (Identify Device message ID)
C

HDRCHKSUM (16-bit)

This will depend on the value of the bytes in the data segment.
B
This will depend on the values of A and C, and is computed by taking
the 1’s complement of the sum of the (other) header bytes: 0xA5 +
0x00 + A + 0x07 + 0x00 + 0x5C + 0x01 + 0x00 + C (lo) + C (hi).

Identify Device messages have a single data word, specifying the time (in ms) to take control of
the front panel LEDs. For purposes of this example, let’s choose 3000 ms (0xBB8), yielding the
following message string:
0xA5, 0x01, A, 0x07, 0x5C, 0x00, 0x01, 0x00, C (lo), C (hi), B (lo), B (hi),
0xB8, 0x0B, 0x00, 0x00

3 - Status Query: Hardware Information
Status Query messages are used to ascertain all sorts of (non-parameter) system state. There
are numerous status codes which can be sent; the response to each code depends on the code
itself. The most basic Status Query it the default query, requesting Hardware Information:
Header Field
LENGTH
MSGID (16-bit)

Value
0x01
0x0001 (Status Query message ID)

Status Queries have an optional data word. If no data segment is present, the default code is
assumed. While the default code is Hardware Information, this example will specify the code
explicitly anyway, in order to show the ‘full’ format. The code for Hardware Information is 0x0000:
0xA5, 0x01, A, 0x07, 0x01, 0x00, 0x01, 0x00, C (lo), C (hi), B (lo), B (hi),
0x00, 0x00, 0x00 or 0xFF, 0x00 or 0xFF
Status codes are 16-bit, but all data segments must be 32-bit aligned. Thus the last two data
bytes, should, technically, be ‘fill’ bytes (0xFF). Some Bucket Net capable systems do not appear
to be able to handle fill bytes correctly; DX Family devices should. A Status Query Response
should be generated in reply to this message.

http://www.eaw.com
43

LOUD Technologies, Inc.

11/19/2009

4 - Data Request: Meters
Data Request messages come in several flavors: Meters, Fat Channel Meters, and Parameter
Edit. As Device Requests are heavily used in interfacing with DX Family devices, examples of
both meter and parameter requests are given.
Meters requests should generate Meters messages in response. Each data word of a Data
Request: Meters will add one block to the response. Let’s create a request for all analog and
digital input meter data at the inputs, plus the meters for analog outputs 3 & 4 (at the outputs);
this request requires three data words (in addition to the word specifying the type of Data
Request):
Header Field
LENGTH
MSGID (16-bit)

Value
0x04
0x005B (Data Request message ID)

Data
Byte
0
1
2
3
4
5
6
7
8
9
10
11
12
13

Name

Value

Data Request ID
N/A
N/A
N/A
Meter Type
Meter Flags
Instance ID
Type ID
Meter Type
Meter Flags
Instance ID
Type ID
Meter Type
Meter Flags

14
15

Instance ID
Type ID

0x51 (Meters)
0x00 or 0xFF
0x00 or 0xFF
0x00 or 0xFF
0x00 (pre-DSP, peak)
0x02 (32-bit floating point – native meter format for DX Family)
0xFF (all)
0x01 (Analog Input)
0x00 (pre-DSP, peak)
0x02 (32-bit floating point – native meter format for DX Family)
0xFF (all)
0x02 (Digital Input)
0x01 (post-DSP, peak)
0x12 (32-bit floating point – native meter format for DX Family 0x02
OR’d with two meter words only 0x10)
0x03 (beginning with instance 3)
0x03 (Analog Output)

Here’s the resulting message string:
0xA5, 0x04, A, 0x07, 0x5B, 0x00, 0x01, 0x00, C (lo), C (hi), B (lo), B (hi),
0x51, 0x00 or 0xFF, 0x00 or 0xFF, 0x00 or 0xFF,
0x00, 0x02, 0xFF, 0x01,
0x00, 0x02, 0xFF, 0x02,
0x01, 0x12, 0x03, 0x03
The response message will be examined in the next example.

http://www.eaw.com
44

LOUD Technologies, Inc.

11/19/2009

5 - Meters
Meters messages are not usually generated, as it is not possible to write audio levels directly.
However, it is quite common to request meter data, and thus important to be able to parse and
handle Meters messages.
In the previous example we created a Data Request for all analog and digital input meter data (at
the inputs), plus the meter data for (just) analog outputs 3 & 4 (at the outputs). After sending that
message, a response like this should be received (suppressing the ‘0x’ prefixes indicating
hexadecimal to save space, and using a fixed font for alignment):
HEADER:
BLOCK1:
BLOCK2:
BLOCK3:

A5
00
56
30
00
E3
01
E3

11
42
13
A8
22
E9
12
E9

01
01
A5
60
01
F6
03
F6

00
01
C2
C0
02
C2
03
C2

51 00 FE 07

98 D8 82 FC

08 6F AA C2
5A B3 A5 C2

59 9B A8 C2
6C 51 A9 C2

AB CF A2 C2
69 79 A6 C2

E3 E9 F6 C2

E3 E9 F6 C2

E3 E9 F6 C2

E3 E9 F6 C2

The first line of the message is its header. Of note: The length of the data segment is 17 words,
and this is a Meters message (ID 0x51). (Note also that the sender’s device instance is
uninitialized – 0xFE.)
The data segment of the message consists of three blocks, each beginning with a data word
describing the meter values that follow. The data values themselves are in 32-bit floating point
format, and, if decoded, show that not much is plugged in to the inputs of this device (just analog
input 5); the output is also in digital silence. As expected, we see blocks of 8 values (analog
inputs), 4 values (digital inputs), and 2 values (analog outputs 3 & 4).
Decoding the block headers:
Block 1
Meter Type
Meter Flags
Instance ID
Type ID

Value
0x00
0x42
0x01
0x01

Description
pre-DSP, peak
32-bit floating point (0x02) OR’d with 8 words (0x40)
Beginning with the first instance…
Analog Input

Block 2
Meter Type
Meter Flags
Instance ID
Type ID

Value
0x00
0x22
0x01
0x02

Description
pre-DSP, peak
32-bit floating point (0x02) OR’d with 4 words (0x20)
Beginning with the first instance…
Digital Input

Block 3
Meter Type
Meter Flags
Instance ID
Type ID

Value
0x01
0x12
0x03
0x03

Description
post-DSP, peak
32-bit floating point (0x02) OR’d with 2 words (0x10)
Beginning with the third instance…
Analog Output

http://www.eaw.com
45

LOUD Technologies, Inc.

11/19/2009

6 - Data Request: Parameter Edit
Having generated a meter request in a previous example, now let’s generate a Data Request for
parameter data, namely all the parameters of the Gate effect on Analog Input 5:
Header Field
LENGTH
MSGID (16-bit)
Data
Byte
0
1
2
3
4
5
6
7

Value
0x02
0x005B (Data Request message ID)

Name

Value

Data Request ID
Flags 1
N/A
N/A
Parameter ID
Instance ID
Effect ID
Type ID

0x54 (Parameter Edit)
0x00 (edit buffer)
0x00 or 0xFF
0x00 or 0xFF
0xFF (all)
0x05 (instance 5)
0x08 (Gate)
0x01 (Analog Input)

Here’s the resulting message string:
0xA5, 0x02, A, 0x07, 0x5B, 0x00, 0x01, 0x00, C (lo), C (hi), B (lo), B (hi),
0x5C, 0x00, 0x00 or 0xFF, 0x00 or 0xFF,
0xFF, 0x05, 0x08, 0x01
The Parameter Edit message received in response will be examined in the next example.

http://www.eaw.com
46

LOUD Technologies, Inc.

11/19/2009

7 - Parameter Edit
In this example we will both examine the result of the Data Request: Parameter Edit from the
previous example and generate a separate Parameter Edit message.
In the previous example, we requested all of the parameter data for the Gate effect on Analog
Input 5. The following message was received in reply:
HEADER:
FLAGS:
IDS:
VALUES:

A5
01
01
00
00
00

0B
0C
05
00
00
00

01
00
08
00
20
00

00
09
01
00
C2
00

54 00 FE 07

10 FB EA FC

00 00 A0 41
00 00 80 3F

00 00 48 43
00 00 70 C2

00 00 48 43
00 00 00 00

The first line of the message is its header. Of note: The length of the data segment is 11 words,
and this is a Parameter Edit message (ID 0x54). (Note also that the sender’s device instance is
uninitialized – 0xFE.)
Next, the flags:
Flag
General Flags
Data Format
Target Buffer
Block Length

Value
0x01
0x0C
0x00
0x09

Description
Autoincrement (Parameter)
32-bit floating point
Edit Buffer (current state)
9 words

Finally, the Parameter IDs specify the first parameter in the of the data values – parameter 1
(0x01) of instance 5 (0x05) of effect 8 (Gate) of type 1 (Analog Input). Each parameter value
after the first increments the parameter number, per the flags.
The remaining data words are the values of the Gate parameters, from 1 to 9, in floating point
format.
Two things about this message require special note:
Firstly, it is an edit message, and, while we may have requested it, there is no way to tell this
particular Parameter Edit from another which the DX Family device may have generated in
response to some other (remote) edit. This is not a ‘get’; it is a ‘request to set’.
Secondly, the format, as specified in the flags, of ALL of the parameter data in the message is 32bit floating point. Assuming that the connected device is a DX1208, and examining the DX1208
Configuration file, we can see the formats of the Gate parameters. Parameters 1 (Enable), 8
(Mode), and 9 (Stereo Link Enable) are not natively floating point! The DX1208 has converted
these values from integer format to floating point format in order to avoid using a multiblock
Parameter Edit (or multiple edits) in response to the original Data Request. The local receiver will
need to either handle these values as floating point, or to ‘deconvert’ them back to their native
format(s).

http://www.eaw.com
47

LOUD Technologies, Inc.

11/19/2009

Next, let’s create a Parameter Edit to a single, global parameter. Let’s enable static IP
addressing:
Header Field
LENGTH
MSGID (16-bit)
Data
Byte
0
1
2
3
4
5
6
7

Value
0x03
0x0054 (Parameter Edit message ID)

Name

Value

General Flags
Data Format
Target Buffer
Block Length
Parameter ID
Instance ID
Effect ID
Type ID

0x00 (Autoincrement Disabled)
0x00 (unsigned long integer)
0x00 (Edit Buffer)
0x00 (block extends to the end of the message)
0x19 (Static IP Enable)
0x00 (‘Global’ Type – no instances)
0xF0 (Global)
0xF0 (Global)

We’re turning on static addressing, so we’ll need to change the (Boolean) value from 0x00000000
to 0x00000001.
Here’s the resulting message string:
0xA5, 0x03, A, 0x07, 0x54, 0x00, 0x01, 0x00, C (lo), C (hi), B (lo), B (hi),
0x00, 0x00, 0x00, 0x00,
0x19, 0x00, 0xF0, 0xF0,
0x01, 0x00, 0x00, 0x00
There is no response to this edit. (Nothing happened? You must be logged in to use a
Parameter Edit over communications channels other than RS-232. Are you using RS-232?)

http://www.eaw.com
48

LOUD Technologies, Inc.

11/19/2009

8 - Preset Load
Once a connection is established, the majority of controller/device messaging is likely to consist
of just a few message IDs: Data Requests, Parameter Edits, possibly Meters and/or Fat Channel
Meters, and Preset Loads. This example shows how to create the last of these ‘basic’ messages:
a Preset Load message.
Preset Load messages have a single data word, which specifies both the preset index to load and
the buffer to be loaded. RS-232 controllers are unlikely to want to use the ‘scratch’ buffer, which
is mostly used for transferring data in and out of the device; in general they want to change
device state by loading to the ‘edit’ buffer. For this example, let’s instruct the device to load its
current state from preset number 5:
Data
Byte
0
1
2
3

Name

Value

Preset Index (lo)
Preset Index (hi)
Library Type
Destination Buffer

0x04 (Preset Index = Preset Number – 1)
0x00 (always, as no DX Family device has this many presets)
0x01 (always – this just means ‘preset’)
0x00 (Edit Buffer – Change current device state!)

As with all preset related messaging, see the Preset Info message for further details of the data
segment fields.
The resulting message string:
0xA5, 0x01, A, 0x07, 0x74, 0x00, 0x01, 0x00, C (lo), C (hi), B (lo), B (hi),
0x04, 0x00, 0x01, 0x00
Preset Load messages do not generate a response.

http://www.eaw.com
49



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.6
Linearized                      : Yes
Encryption                      : Standard V2.3 (128-bit)
User Access                     : Print, Extract, Print high-res
Tagged PDF                      : Yes
XMP Toolkit                     : Adobe XMP Core 4.0-c321 44.398116, Tue Aug 04 2009 14:24:30
Create Date                     : 2009:11:19 20:32:10Z
Creator Tool                    : Microsoft® Office Word 2007
Modify Date                     : 2009:11:19 12:38:43-08:00
Metadata Date                   : 2009:11:19 12:38:43-08:00
Format                          : application/pdf
Creator                         : Alex Broadhead
Title                           : RS-232 Interfacing
Producer                        : Microsoft® Office Word 2007
Document ID                     : uuid:b53c16a7-285f-514d-985f-96f56743e509
Instance ID                     : uuid:ea4c1db6-bc26-fd4d-adb4-911db392c90f
Page Count                      : 49
Language                        : en-US
Author                          : Alex Broadhead
EXIF Metadata provided by EXIF.tools

Navigation menu