Ecb 62e device control language – Rane ECS RaneWare User Manual
Page 23

RW Manual-23
Definition:
Two’s Complement: The result ob-
tained when all the data bits are inverted
and 1 is added to the result. Used to
represent negative numbers. The Two’s
Complement of 3 (i.e. 0000 0011) is equal
to 1111 1101or $FD. This represents ‘ 3’.
ECB 62e DEVICE CONTROL LANGUAGE
Data Structures
Abbreviations used:
$:
signifies hexadecimal number
ADDR:
device address
CHNUM:
channel number code
COMSTAT:
communications status code
DCL:
device control language
DT:
Device-type code (predefined)
ID:
Manufacturer’s ID code (predefined)
MEMNUM:
memory number code
OPSTAT:
operational status code
SPL:
stored parameter list (product dependent)
Control Systems
RW 232 devices use an addressable RS-232 protocol. Most commands to a device use the Send Data to channel command
($81). This command uses a Stored Parameter List (SPL) which is like an array of Memory. In most situations only one
command is sent at a time. Another useful command is the Program channel From Memory command ($82) which recalls a
Memory. With ECS products this Memory command is capable of partial Memory recalls that can be used to Mute groups of
Mics. There is also a Memory recall to all devices command. (See Program all channels of all devices From Memory.)
For more information see RW232.pdf in AMXPROGS.ZIP
To communicate using a control system:
• Set protocol as: 19.2kbs, Even Parity, 1 Stop Bit
• Send Address Header: $FB, ADDR, $FB, ADDR
• Wait for response: DT, ID or wait 20 milliseconds to speed up communications
• My Data = Data length ($X1,$X2), Command, Data
• Calculate Checksum by adding values of My Data and take the two's complement
• Locate $FB and add extra $FB to My Data (See Get Globals Checksum page 29)
• Send MyData
In the following examples the ECB 62e RW 232 Address is 2.
NOB - Number of Bytes to follow (Data Size, 2 byte message)
CMD - Command $81 = Send Data to Channel
CH# - Channel Number (Don't Care for Command $81)
M# - Memory Number (Always 0 for Command $81)
SPL - SPL Index (2 byte message)
VAL - Value
CS - Checksum
Example:
Set Program Output Attenuation to 3 dB
SPL = $00, $19
(See dB Conversion Chart for Attenuators page 28)
Send Address Header - $FB/$02/$FB/$02
[ ADDR ]
Wait for two byte response before sending command or wait 20 milliseconds.
NOB = $00, $07
CMD = $81
CH# = $00
M# = $00
SPL = $00, $19 index number
VAL = $06
MyData = NOB, CMD, CH#, M#, SPL, VAL
MyData = "$00, $07, $81, $00, $00, $00, $19, $06"
Calculate Checksum
CS = ($100 - ($07 + $81 + $19 + $06)) & $FF
*Setting—see note 4. **Use Two’s complement for negative numbers.