RAM Audio DALIM Series Ethernet Control
Product Information
Specifications
- Product: Third-Party Ethernet Control Manual
- Series: Pi / DENEB / DALIM Series
- API Version: 1.1
- Minimum Firmware Version: v3.1
- Document Version: v2.1
Introduction
The Third-Party Ethernet Control Manual serves as a guide for users communicating with a RAM Audio amplifier via an Ethernet connection.
Communication
Data Type: Communication between a RAM Audio amplifier and a controller involves Monitoring Parameters and Control Commands.
Monitoring Parameters (UDP)
UDP Discovery Device Data
To obtain device data, send an UDP frame with a single data value 0x58 (`X’) to IP: 255.255.255.255 and port: 65535.
The device will respond with an UDP frame containing the following data:
- Code 0x41: Control value with the character `A’
- MAC Address: Indicates the MAC address of the device
- Data Receiving Port: Indicates the data receiving port of the device (1001)
- Status of the Device: Indicates the status of the device
- IP Address: Indicates the IP address of the device
- Hardware Model: Indicates the hardware model of the device
- Device Name: Indicates the name of the device
Frequently Asked Questions
Q: How do I enable/disable monitors for live data?
A: To enable/disable monitors, refer to section 1.3.1 in the user manual.
Q: What is the purpose of UDP Discovery Device Data?
A: UDP Discovery Device Data is used to obtain device information by sending specific data packets to the device.
INTRODUCTION
The objective of this document is to be a guide to the “third-party” user when communicating with a RAM Audio amplifier via an Ethernet connection.
COMMUNICATION
TCP is the protocol used for communicating a controller device with the amplifiers on an Ethernet network. Each amplifier is assigned a unique IP address on the local network where they will be installed.
All Ethernet-controllable amplifiers leave our factory configured to receive a dynamic IP through a DHCP server. If this server is not present, an auto IP will be assigned using the APIPA protocol. In any case, a manual IP can be configured.
In order to be able to communicate with any of these amplifiers, it is necessary to send the data to the IP mentioned above on the TCP port 1001. In the same way, all amplifiers will respond to the pre-selected IP control (selected by means of a command that will be later referred to).
On the other hand, the Controller must read the incoming TCP packet and extract the IP address that sends this data.
DATA TYPE
In the communication between a RAM Audio amplifier and a controller, two types of data are found: the Monitoring Parameters (with which we can obtain the value of parameters like the output tension, the temperature, etc.) and the Control Commands (with which we can modify the value of certain amplifier parameters like the output level or its power-on state). This communication is made by means of data packets, the structure of which will be explained later.
Monitoring Parameters (UDP)
UDP Discovery Device Data
To obtain the device data we send an UDP frame with a single data value 0x58 (‘X’) to the IP: 255.255.255.255 and to port: 65535
The device will respond with an UDP frame with the following data.
Byte | Code | Description |
0 | 0x41 | Control value with the character ‘A’ |
The following bytes indicate the mac address of the device | ||
1 .. | xx | Decimal value in ASCII code of the 6 digits of the mac
For a MAC FC:0F:E7:51:36:40 you receive: 32 35 32 2e 31 35 2e 32 33 31 2e 38 31 2e 35 34 2e 36 34 (252.15.231.81.54.64) |
.. | 0x2f | Data separation character ‘/’ |
The following 4 data indicate the data receiving port of the device (1001) | ||
.. | 0x31 | ‘1’ |
.. | 0x30 | ‘0’ |
.. | 0x30 | ‘0’ |
.. | 0x31 | ‘1’ |
.. | 0x2f | Data separation character ‘/’ |
The next 5 bytes indicate the status of the device | ||
.. | 0x4e | ‘N’: Programing mode |
.. | 0x2a | ‘*’: No errors |
.. | 0x2a | ‘*’: Still to be implemented |
.. | xx | ‘M’ : Static Mode ‘I’: DHCP Discovered ‘*’: DHCP Discovering
‘Y’: Static Mode ‘Y’: Auto-IP Mode |
xx | ‘C’: Connected with other client ‘*’: Not connected | |
.. | 0x2f | Data separation character ‘/’ |
The next bytes indicate the IP address | ||
.. | xx | Decimal value in ASCII code of the IP address
For a IP: 169.254.206.21 you receive: 31 36 39 2e 32 35 34 2e 32 30 36 2e 32 31 34 |
.. | 0x2f | Data separation character ‘/’ |
The next bytes indicate the hardware model | ||
xx | Characters in ASCII code
For “DSPBPi” you receive: 44 53 50 42 50 69 |
|
.. | 0x2f | Data separation character ‘/’ |
Byte | Code | Description |
The next bytes indicate the device name | ||
xx | Characters in ASCII code |
Byte | Code | Description |
For “NoName” you receive: 4e 6f 4e 61 6d 65 | ||
.. | 0x2f | Data separation character ‘/’ |
The next bytes indicate the device model | ||
.. | xx | Characters in ASCII code
For “DALIM 14Q” you receive: 44 41 4c 49 4d 20 31 34 51 |
.. | 0x2f | Data separation character ‘/’ |
The next bytes indicate the brand name | ||
.. | xx | Characters in ASCII code
For “RAM Audio” you receive: 52 41 4d 20 41 75 64 69 6f |
.. | 0x2f | Data separation character ‘/’ |
Real Time values monitor
In parameter monitoring, different data are obtained continuously from the amplifier. This monitoring can be activated or deactivated at the user’s request.
This is a UDP communication.
UDP receive header (when monitor communication is activated)
Byte | Code | Description |
0 | 0x49 | |
1 | 0x50 | |
2 | 0x41 | |
3 | 0x44 | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x09 | Monitor |
11 | 0x00 | |
12 | 0x73 | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Data is received in the following order.
Byte | Nº Bytes | Description |
16 | 1 | Device input channels |
17 | 1 | Device output channels |
Input Vumeter | ||
18 | 2 | Vumeter Correction
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
20 | 2 | CH1 vumeter value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
22 | 2 | CH2 vumeter value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
24 | 2 | CH3 vumeter value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
26 | 2 | CH4 vumeter value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
Byte | Nº Bytes | Description |
Output Vumeter | ||
28 | 2 | Vumeter Correction
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
30 | 2 | CH1 vumeter before dynamics value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
32 | 2 | CH1 vumeter after dynamics value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
34 | 2 | CH2 vumeter before dynamics value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
36 | 2 | CH2 vumeter after dynamics value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
38 | 2 | CH3 vumeter before dynamics value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
40 | 2 | CH3 vumeter after dynamics value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
42 | 2 | CH4 vumeter before dynamics value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
44 | 2 | CH4 vumeter after dynamics value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
*Analogue Levels (only DENEB / DALIM) | ||
46 | 1 | CH1 Volts sensor calibration Value |
47 | 2 | CH1 Volts Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
49 | 1 | CH2 Volts sensor calibration Value |
50 | 2 | CH2 Volts Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
52 | 1 | CH3 Volts sensor calibration Value |
53 | 2 | CH3Volts Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
55 | 1 | CH4 Volts sensor calibration Value |
56 | 2 | CH4 Volts Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
58 | 2 | CH1 Current sensor calibration Value (LSB Value: 0x00FF + MSB Value: 0xFF00) |
60 | 2 | CH1 Current Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
62 | 2 | CH2 Current sensor calibration Value (LSB Value: 0x00FF + MSB Value: 0xFF00) |
64 | 2 | CH2 Current Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
66 | 2 | CH3 Current sensor calibration Value (LSB Value: 0x00FF + MSB Value: 0xFF00) |
68 | 2 | CH3 Current Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
70 | 2 | CH4 Current sensor calibration Value (LSB Value: 0x00FF + MSB Value: 0xFF00) |
72 | 2 | CH4 Current Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
Byte | Nº Bytes | Description |
Temperature |
Byte | Nº Bytes | Description |
74 | 1 | CH1 Temperature sensor calibration Value |
75 | 2 | CH1 Temperature Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
77 | 1 | CH2 Temperature sensor calibration Value |
78 | 2 | CH2 Temperature Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
80 | 1 | CH3 Temperature sensor calibration Value |
81 | 2 | CH3 Temperature Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
83 | 1 | CH4 Temperature sensor calibration Value |
84 | 2 | CH4 Temperature Value
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
Clip (1: Enabled / 0: Disabled) | ||
86 | 1 | CH1 Clip |
87 | 1 | CH2 Clip |
88 | 1 | CH3 Clip |
89 | 1 | CH4 Clip |
Output Level Value | ||
90 |
4 |
CH1 Output Level
(LSB Value: 0x00FF + MSB Value: 0xFF00 + Polarity + Mute) |
94 | 4 | CH2 Output Level
(LSB Value: 0x00FF + MSB Value: 0xFF00 + Polarity + Mute) |
98 | 4 | CH3 Output Level
(LSB Value: 0x00FF + MSB Value: 0xFF00 + Polarity + Mute) |
102 | 4 | CH3 Output Level
(LSB Value: 0x00FF + MSB Value: 0xFF00 + Polarity + Mute) |
**Fault State, 1 = correct operation (only DENEB / DALIM) | ||
106 | 1 | CH1 Fault State |
107 | 1 | CH2 Fault State |
108 | 1 | CH3 Fault State |
109 | 1 | CH4 Fault State |
RMS Limit Threshold | ||
110 | 2 | CH1 RMS Limit Threshold
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
112 | 2 | CH2 RMS Limit Threshold
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
114 | 2 | CH3 RMS Limit Threshold
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
116 | 2 | CH4 RMS Limit Threshold
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
PEAK Limit Threshold | ||
118 | 2 | CH1 PEAK Limit Threshold
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
120 | 2 | CH2 PEAK Limit Threshold
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
122 | 2 | CH3 PEAK Limit Threshold
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
Byte | Nº Bytes | Description |
124 | 2 | CH4 PEAK Limit Threshold
(LSB Value: 0x00FF + MSB Value: 0xFF00) |
***GPI MUTE Value (only DENEB / DALIM) | ||
126 | 1 | GPI MUTE Value |
Priority Active | ||
127 | 1 | CH1 Priority Active |
128 | 1 | CH2 Priority Active |
129 | 1 | CH3 Priority Active |
130 | 1 | CH4 Priority Active |
- In Pi amplifiers this value corresponds to the DSP output level after dynamics
- Pi amps do not have this sensor. The value will always be 1
- Pi amps do not have this feature. The value will always be 0
Monitoring live data. Message to send
Header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x09 | Monitor |
11 | 0x00 | |
12 | 0x0e | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Enable / Disable Monitors
This is a 13 bytes data and includes the activated monitoring selection, received Port, received IP and received MAC.
Byte | Code | Description |
0 | 0x00
0x01 |
Monitor Disabled Monitor Enabled |
1 | 0x03 | Monitor Port (MSB: 0xFF00) |
2 | 0xea | Monitor Port (LSB: 0x00FF) |
3 | 0xa9 | Monitor Target IP |
4 | 0xfe | Monitor Target IP |
5 | 0x17 | Monitor Target IP |
6 | 0x0b | Monitor Target IP |
7 | 0x00 | Monitor Target MAC |
8 | 0x01 | Monitor Target MAC |
9 | 0x02 | Monitor Target MAC |
10 | 0x03 | Monitor Target MAC |
11 | 0x04 | Monitor Target MAC |
12 | 0x05 | Monitor Target MAC |
13 | 0x00 | — |
Example:
To activate receive monitors in Port:1002 in device with IP: 192.168.23.11, MAC: 00:01:02:03:04:05 53 43 4f 4c 01 01 28 00 00 00 09 00 0d 00 00 00 01 03 ea a9 fe 17 0b 00 01 02 03 04 05 00
Control Commands (TCP)
General structure of data packets
The data packets consist of a series of bytes and their length will vary according to each case.
In this manual, the bytes are represented in different ways, either in hexadecimal or decimal format.
Real-Time control message header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0xXX | Command |
11 | 0x00 | |
12 | 0x0a | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Byte 10 determines Command requested from the device. Requested commands can be the following:
Command | Hex Value |
Real Time | 0x08 |
Monitor | 0x09 |
Set Device Name | 0x0C |
Get Library List | 0x0F |
Set Power Status | 0x10 |
Recall Snapshot Preset | 0x20 |
Get Device Basic Info | 0x23 |
Get Third Part Info | 0xC8 |
Real-Time structure of data packets
Real-Time control message header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x08 | Real Time Command |
11 | 0x00 | |
12 | 0x0a | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Within the real-time instructions, in byte 16, it is determined which device value we want to change
Byte 16 Hex Value | Value to change |
0x03 | User Eq |
0x1F | User Gain |
0x20 | User Delay |
0x21 | Amplifier Volume Level |
0x27 | User HP |
0x28 | Route Input Select |
Route Input Select
It is a 7 bytes data and includes the selection of input routing and its value.
Byte | Code | Description |
0 | 0x28 | Route Input Select |
1 | xx | (The same as byte 5) |
2 | 0x00 | Matrix Type (Always 0) |
3 | 0x01 | Always this value |
4 | 0x04 | Always this value |
5 | 0x01
0x02 0x03 0x04 |
Route CH A Route CH B Route CH C Route CH D |
6 | 0x00
0x01 0x02 0x03 0x04 0x05 0x06 |
Select Input 1
Select Input 2 Select Input 3 Select Input 4 Select Input 1+2 Select Input 3+4 Select Matrix |
7 | 0xff | Always this value |
Example:
To select input 1+2 in route C, send:
53 43 4f 4c 01 01 28 00 00 00 08 00 07 00 00 00 28 03 00 01 04 03 04 ff 2.1.1.2 User Eq
This data is 10 bytes long.
User Eq
This data is 10 bytes long.
Byte | Code | Description |
0 | 0x03 | User Eq |
1 | 0x01
0x02 0x03 0x04 |
Input 1
Input 2 Input 3 Input 4 |
2 | 0x13
0x14 0x15 0x16 0x17 0x18 |
EQ Band 1
EQ Band 2 EQ Band 3 EQ Band 4 EQ Band 5 EQ Band 6 |
3 | xx | Filter Type (See table below)* |
4 | xx | Frequency. Lower part of the word (0x00FF) |
5 | xx | Frequency. Upper part of the word (0xFF00). |
6 | xx | Gain (value x10). Lower part of the word (0x00FF) |
7 | xx | Gain (value x10). Upper part of the word (0xFF00). |
8 | xx | Q (value x10) |
9 | 0x00
0x01 |
Disable Band Enable Band |
10 | 0x00
0x01 |
Disable Main Eq Enable Main Eq |
Index | Filter Type Description |
0x00 | Bypass |
0x01 | Parametric with adapted Q |
0x02 | Parametric with constant Q |
0x03 | Low-pass shelving filter 6 dB’s |
0x04 | High-pass shelving filter 6 dB’s |
0x05 | Low-pass shelving filter 12 dB’s |
0x06 | High-pass shelving filter 12 dB’s |
0x07 | Low-pass shelving filter 12 dB’s with Q |
0x08 | High-pass shelving filter 12 dB’s with Q |
0x09 | Low-pass |
0x0a | High-pass |
0x0b | Low-pass with Q |
0x0c | High-pass with Q |
0x0d | Band pass |
0x0e | Remove band |
0x0f | Bypass with 180º offset |
0x10 | Bypass with 360º offset |
Example:
To put in channel 1 input gain of +12dB with normal polarity and unmuted, send: 53 43 4f 4c 01 01 01 00 00 00 08 00 0a 00 00 00 1f 01 78 00 00 01+
User input gain
This data is 6 bytes long and includes gain, mute and polarity control.
Byte | Code | Description |
0 | 0x1f | User gain |
1 | 0x01
0x02 0x03 0x04 |
Input Way 1
Input Way 2 Input Way 3 Input Way 4 |
2 | xx | Gain in dB. Lower part of the word (0x00FF). +12.0 to -40.0 dB |
3 | xx | Gain in dB. Upper part of the word (0xFF00). +12.0 to -40.0 dB |
4 | 0x00
0x01 |
Normal polarity Inverted polarity |
5 | 0x00
0x01 |
Muted Unmuted |
Example:
To put in channel 1 input gain of +12dB with normal polarity and unmuted, send:
53 43 4f 4c 01 01 01 00 00 00 08 00 0a 00 00 00 1f 01 78 00 00 01
Doc v2.1
User output gain
This data is 6 bytes long and includes gain, mute and polarity control.
Byte | Code | Description |
0 | 0x1f | User gain |
1 | 0x10
0x20 0x30 0x40 |
Output Way 1
Output Way 2 Output Way 3 Output Way 4 |
2 | xx | Gain in dB. Lower part of the word (0x00FF).
+120 to -400 (Real value +12.0 to -40.0 dB) |
3 | xx | Gain in dB. Upper part of the word (0xFF00).
+120 to -400 (Real value +12.0 to -40.0 dB) |
4 | 0x00
0x01 |
Normal polarity Inverted polarity |
5 | 0x00
0x01 |
Muted Unmuted |
Example:
To put in channel 1 output gain of +12dB with normal polarity and unmuted, type: 53 43 4f 4c 01 01 01 00 00 00 08 00 0a 00 00 00 1f 10 78 00 00 01
User input delay
This data is 4 bytes long. For channel 1 maximum value is 300.0 ms., for the rest 90.0 ms.
Byte | Code | Description |
0 | 0x20 | User Delay |
1 | 0x01
0x02 0x03 0x04 |
Input Way 1
Input Way 2 Input Way 3 Input Way 4 |
2 | xx | Delay value x10. Lower part of the word (0x00FF). |
3 | xx | Delay value x10. Upper part of the word (0xFF00). |
Example:
To put in channel 1 input delay 12.6 ms., send:
53 43 4f 4c 01 01 01 00 00 00 08 00 03 00 00 00 20 01 7E 00
User output delay
This data is 4 bytes long. The maximum value is 90.0 ms.
Byte | Code | Description |
0 | 0x20 | User Delay |
1 | 0x10
0x20 0x30 0x40 |
Output Way 1
Output Way 2 Output Way 3 Output Way 4 |
2 | xx | Delay value x10. Lower part of the word (0x00FF). |
3 | xx | Delay value x10. Upper part of the word (0xFF00). |
Example:
To put in channel 1 output delay 12,6 ms., send:
53 43 4f 4c 01 01 01 00 00 00 08 00 03 00 00 00 20 10 7E 00
Amplifier Volume Level
This data is 6 bytes long and includes gain, mute and polarity control.
Byte | Code | Description |
0 | 0x21 | Amplifier Volume Level |
1 | 0x10
0x20 0x30 0x40 |
Output Way 1
Output Way 2 Output Way 3 Output Way 4 |
2 | xx | Gain in dB. Lower part of the word (0x00FF).
+120 to -400 (Real value +12.0 to -40.0 dB) |
3 | xx | Gain in dB. Upper part of the word (0xFF00).
+120 to -400 (Real value +12.0 to -40.0 dB) |
4 | 0x00
0x01 |
Normal polarity Inverted polarity |
5 | 0x00
0x01 |
Muted Unmuted |
Example:
To put in channel 1 level volume gain of +12dB with normal polarity and unmuted, type:
53 43 4f 4c 01 01 01 00 00 00 08 00 0a 00 00 00 21 10 78 00 00 01
Doc v2.1
User HP Filter
This data is 8 bytes long and includes gain, filter type, frequency cut, order and active control.
Byte | Code | Description |
0 | 0x27 | HP user filter gain |
1 | 0x01
0x02 0x03 0x04 |
Input Way 1
Input Way 2 Input Way 3 Input Way 4 |
2 | 0x00 | 0: High Pass |
3 |
0x00 0x01 0x02 |
Xover Type: Butterworth Linkwitz-Riley Bessel |
4 | xx | Frequency Cut [20..20000] LSB (0x00FF) |
5 | xx | Frequency Cut [20..20000] MSB (0xFF00)»8 |
6 | 0x00..0x08 | Order |
7 | 0x00
0x01 |
Active Disabled Active Enabled |
Example:
To activate the user HP Butterworth filter on channel 1 at a cut-off frequency of 50 Hz with order 4, send:
53 43 4f 4c 01 01 01 00 00 00 08 00 0a 00 00 00 27 01 00 00 32 00 04 01
Select Snapshot Preset
Select Snapshot Preset message header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x20 | Snapshot Recall |
11 | 0x00 | |
12 | 0x0a | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Select number of Snapshot
This data is 1 byte long and includes the number of Snapshot to select.
Byte | Code | Description |
0 | xx | Snapshot preset number (1..20) |
Example:
To select the Snapshot number 2, send:
53 43 4f 4c 01 01 00 00 00 00 20 00 01 00 00 00 02
Set Device Name
Select Snapshot Preset message header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x0C | Set Device Name |
11 | 0x00 | |
12 | 0x0e | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Device Name
The device name has a maximum length of 14 characters. Each character corresponds to the ASCII code
Byte | Code | Description |
0..14 | xx | Device Name in ASCII code |
Example:
To change the device name to “Amp2”, send:
53 43 4f 4c 01 01 00 00 00 00 0C 00 0E 00 00 00 41 6D 70 32
Select On/Off Standby
Select Snapshot Preset message header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x10 | Standby |
11 | 0x00 | |
12 | 0x01 | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Select Standby
This data is 1 byte long and includes the number of Snapshot to select.
Byte | Code | Description |
0 | 0x00
0x01 |
Standby Enabled Standby Disabled |
Example:
To put the device in Standby, send:
53 43 4f 4c 01 01 00 00 00 00 10 00 01 00 00 00 00
Get Device Basic Info
Select Snapshot Preset message header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x23 | Get Device Basic Info |
11 | 0x00 | |
12 | 0x01 | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Example:
To get the device basic info, send:
53 43 4f 4c 01 01 00 00 00 00 23 00 01 00 00 00 00
Header received when send “Get Device Basic Info”
Byte | Code | Description |
0 | 0x49 | |
1 | 0x50 | |
2 | 0x41 | |
3 | 0x44 | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x23 | Get Device Basic Info |
11 | 0x00 | |
12 | 0x0a | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Data Received
Byte | Code | Description |
16 | xx | Hardware type |
17 | xx | Module hardware version |
18..33 | xx | Serial Number |
34..53 | xx | Manufacturer name |
54..73 | xx | Model name |
74 | 0x00
0x01 |
without AES3 with AES3 |
75 | 0x00
0x01 |
without DANTE / AES67 with DANTE / AES67 |
76 | 0x00
0x01 |
without Voltage sensor with Voltage sensor |
77 | 0x00
0x01 |
without Impedance sensor with Impedance sensor |
78 | 0x00
0x01 |
without temperature sensor with temperature sensor |
79 | 0x00
0x01 |
without standby with standby |
80 | 0x00
0x01 |
2 channels output
4 channels output |
Byte | Code | Description |
81 | xx | Operation Time in hours. Lower part of the word (0x00FF).
+120 to -400 (Real value +12.0 to -40.0 dB) |
82 | xx | Operation Time in hours. Upper part of the word (0xFF00).
+120 to -400 (Real value +12.0 to -40.0 dB) |
83 | xx | Operation Time in 15 minutes block |
84 | 0x00
0x01 |
without GPIO with GPIO |
Select Get Third Part Info
Select Get Device Data message header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0xC8 | Get Third Part Info |
11 | 0x00 | |
12 | 0x0a | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Select Data
This data is 2 bytes long and includes the selected data and the channel to get information.
Byte | Code | Description |
16 | 0x00
0x01 0x02 0x03 0x04 0x05 0x06 0x09 0x0A 0x0B 0x0C |
Preset Name Use Name Way Name
Snapshot Name Device Name User Input Gain User Output Gain Get Volume Get Join Select Get User Eq Get User Delay |
17 | 0x01
0x02 0x03 0x04 |
Channel 1
Channel 2 Channel 3 Channel 4 |
Example:
To get the input data gain from channel 2, send:
53 43 4f 4c 01 01 00 00 00 00 C8 00 01 00 00 00 05 01
Header received when send “Get Third Part Info”
Byte | Code | Description |
0 | 0x49 | |
1 | 0x50 | |
2 | 0x41 | |
3 | 0x44 | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0xC8 | Get Third Part Info |
11 | 0x00 | |
12 | 0x0a | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
*If the communications header received by the amplifier is not correct, the amplifier will return a response header with byte 11 with value 0x01
Data Received
This data is of variable length and depends on the information requested
Preset Name
Byte | Code | Description |
16…27 | xx | Character in Hex ASCII code |
Use Name
Byte | Code | Description |
16…27 | xx | Character in Hex ASCII code |
Way Name
Byte | Code | Description |
16…21 | xx | Character in Hex ASCII code |
Snapshot Name
Byte | Code | Description |
16…37 | xx | Character in Hex ASCII code |
Device Name
Byte | Code | Description |
16…23 | xx | Character in Hex ASCII code |
User Input Gain Data
Byte | Code | Description |
16 | xx | Gain in dB. Lower part of the word (0x00FF).
+120 to -400 (Real value +12.0 to -40.0 dB) |
17 | xx | Gain in dB. Upper part of the word (0xFF00).
+120 to -400 (Real value +12.0 to -40.0 dB) |
18 | 0x00
0x01 |
Normal polarity Inverted polarity |
19 | 0x00
0x01 |
Muted Unmuted |
User Output Gain Data
Byte | Code | Description |
16 | xx | Gain in dB. Lower part of the word (0x00FF).
+120 to -400 (Real value +12.0 to -40.0 dB) |
17 | xx | Gain in dB. Upper part of the word (0xFF00).
+120 to -400 (Real value +12.0 to -40.0 dB) |
18 | 0x00
0x01 |
Normal polarity Inverted polarity |
19 | 0x00
0x01 |
Muted Unmuted |
Get Volume
Byte | Code | Description |
16 | xx | Gain in dB. Lower part of the word (0x00FF).
+120 to -400 (Real value +12.0 to -40.0 dB) |
17 | xx | Gain in dB. Upper part of the word (0xFF00).
+120 to -400 (Real value +12.0 to -40.0 dB) |
18 | 0x00
0x01 |
Normal polarity Inverted polarity |
19 | 0x00
0x01 |
Muted Unmuted |
Get Join Select
Byte | Code | Description |
16 | 0x00
0x01 |
Disable Join Enable Join |
Get User Eq
Byte | Code | Description |
16 | 0x00
0x01 |
Main Eq disable Main Eq Enable |
The equalizer has 6 equalization bands that are received sequentially starting with 1 and ending with 6.
The data follows the next order and repeats sequentially for a full channel. |
||
.. | xx | Type (see table in page 13) |
.. | xx | Frequency. Lower part of the word (0x00FF). |
.. | xx | Frequency. Upper part of the word (0xFF00). |
.. | xx | Gain (x10). Lower part of the word (0x00FF). |
.. | xx | Gain (x10). Upper part of the word (0xFF00). |
.. | xx | Q value (x10) |
.. | 0x00
0x01 |
Eq Band Disable Eq Band Enable |
The frame, without the header, has a total length of 43 bytes
Get User Delay
Byte | Code | Description |
16 | xx | Delay (x10). Lower part of the word (0x00FF). |
17 | xx | Delay (x10). Upper part of the word (0xFF00). |
Example:
If you send input data gain from channel 2:
53 43 4f 4c 01 01 00 00 00 00 C8 00 01 00 00 00 05 01
You receive, if Gain = +7 dB, Normal polarity and Unmuted:
49 50 41 44 01 01 00 00 00 00 C8 00 04 00 00 00 46 00 01 01
Select Get Library List
Select Get Device Data message header
Byte | Code | Description |
0 | 0x53 | |
1 | 0x43 | |
2 | 0x4f | |
3 | 0x4c | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF0000) » 24 |
10 | 0x0F | Get Library List |
11 | 0x00 | |
12 | 0x0a | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
Example:
To get the different name presets, send:
53 43 4f 4c 01 01 00 00 00 00 0F 00 01 00 00 00 00
Header received when send “Get Library List”
In a first data transmission, the received header indicates the number of data that are going to be received (Params size)
Byte | Code | Description |
0 | 0x49 | |
1 | 0x50 | |
2 | 0x41 | |
3 | 0x44 | |
4 | 0x01 | API Version |
5 | 0x01 | API Version |
6 | 0x00 | Message ID Size LSB (0x000000FF) |
7 | 0x00 | Message ID (0x0000FF00) » 8 |
8 | 0x00 | Message ID (0x00FF0000) » 16 |
9 | 0x00 | Message ID MSB (0xFF000000) » 24 |
10 | 0x0F | Get Library List |
11 | 0x00 | |
12 | 0x0a | Params Size LSB (0x000000FF) |
13 | 0x00 | Params Size MSB (0x0000FF00) » 8 |
14 | 0x00 | |
15 | 0x00 |
In the following communications the names of the different presets are sent.
Data Received
You will receive a frame with the following characteristics
Byte | Data | Description |
16 | ‘S’ | Indicates that the name of a snapshot has to be received |
17 | xx | Number of snapshot |
18… | xx | Name of Snapshot |
.. | ‘\0’ | At the end of the text a null character will be received |
This data structure continues until all the names of the snapshots present on the amplifier are complete.
When a first data with the character ‘P’ is received, it will indicate that the next name is that of an amplifier system preset. The same data reception structure will continue as for Snapshots.
Byte | Data | Description |
.. | ‘P’ | Indicates that the name of a snapshot is to be received |
.. | xx | Number of snapshot |
.. | xx | Name of Snapshot |
.. | ‘\0’ | At the end of the text a null character will be received |
If you receive the following data frame:
49 50 41 44 01 01 00 00 00 00 0F 00 04 00 00 00 53 01 44 69 72 65 63 74 20 4f 75 74 00 53 02 42 61 73 69 63 20 4d 6f 6e 6f 20 28 31 20 69 6e 20 34 29 00
You receive names of Snapshots
- “Direct Out”
- “Basic Mono (1 in 4)” If you receive the following data frame:
49 50 41 44 01 01 00 00 00 00 0F 00 04 00 00 00 53 01 44 69 72 65 63 74 20 4f 75 74 00 53 02 42 61 73 69 63 20 4d 6f 6e 6f 20 28 31 20 69 6e 20 34 29 00
You receive names of Snapshots
- “Direct Out”
- “Basic Mono (1 in 4)”
Manufactured in the EU by C.E. Studio-2 s.l. Pol. Ind. La Figuera – C/ Rosa Luxemburgo nº34 46970 Alaquas – Valencia – SPAIN
Phone: +34 96 127 30 54 Fax: +34 96 127 30 56 ramaudio.com, info@ramaudio.com
Documents / Resources
![]() |
RAM Audio DALIM Series Ethernet Control [pdf] Instruction Manual DALIM Series Ethernet Control, DALIM Series, Ethernet Control, Control |