Biamp DRI RS-232 User Manual

RS-232 Control
of the
Advantage DRI
________________________________________________________________________________________
Biamp Systems, 14130 N.W. Science Park, Portland, Oregon 97229 U.S.A. (503) 641-7287
an affiliate of Rauland-Borg Corp.
This document contains technical information relating to computer control of the Biamp Advantage DRI Digital Remote Interface. This information is intended for advanced users
- in particular for those who wish to develop their own computer programs to control the Advantage DRI. It is assumed that the reader is an experienced programmer and has some familiarity with standard programming practices, binary and hexadecimal numbers, the ASCII character set, asynchronous serial data communications, and RS-232 interfaces.
Hexadecimal, ASCII-Hex, and "Pseudo-Hex" Numbers
Throughout this document, hexadecimal numbers shall be represented by preceding the number with "0x". For example: the hexadecimal equivalent of the decimal number 255 is 0xFF.
Individual ASCII characters, except control characters, will be enclosed in single quotes. For example: the ASCII character 'A' has the hexadecimal value 0x41. The ASCII "carriage return" control character shall be represented as . An ASCII code chart is included with this document for your convenience.
When an 8-bit binary data value is being transmitted over a serial data communications link, it is a common practice to transmit the byte as two "ASCII-hex" characters - one character represents the most significant nibble of the data value and the other character represents the least significant nibble (a nibble is 4-bits; half of a byte). Each ASCII-hex character is in the range of '0' thru '9' or 'A' thru 'F' (from the ASCII code chart, 0x30 thru 0x39 or 0x41 thru 0x46). For example, the hexadecimal equivalent of the decimal number 61 is 0x3D. To transmit this in an ASCII-hex format, first transmit the ASCII character '3' (whose hex value is 0x33), followed by the ASCII character 'D' (whose hex value is 0x44). This is the standard way to transmit an ASCII-hex value. In some cases, the lower case characters 'a' thru 'f' (0x61 thru 0x66) are accepted in addition to the upper case letters 'A' thru 'F'.
The Advantage DRI does not utilize standard ASCII-hex format. The DRI computer commands implement what I call "pseudo-hex" notation (also sometimes referred to as a "poor man's" ASCII-hex notation). Instead of representing the hexadecimal value using the ASCII characters '0' thru '9' and 'A', 'B', 'C', 'D', 'E', and 'F', the pseudo-hex format uses the ASCII characters '0' thru '9' and the characters ':', ';', '<', '=', '>', and '?'. As you can see by studying the ASCII code chart, a binary nibble may be converted to its equivalent pseudo-hex character by simply adding 0x30.
A binary/decimal/hexadecimal/pseudo-hex conversion chart is included at the end of this manual for your convenience.
21-Jul-97
Computer Control of the Advantage DRI page 1
Data Communications Parameters
The Advantage DRI has a rear-panel dip-switch which allows you to set its baud rate to either 2400, 9600, or 19200 bits per second. The factory default setting is 9600. The Advantage DRI communicates with 8 data bits, no parity, and 1 stop bit. The Advantage DRI utilizes a subset of the standard 7-bit ASCII character set.
The Advantage DRI utilizes interrupt-driven communications firmware with a 32­character receive buffer. When the Advantage DRI receives a command, it may become “busy” for as long as 200 milliseconds while it is executing the command. During this time, the Advantage DRI can successfully receive up to 32 additional characters. If more than 32 characters are sent to the Advantage DRI while it is busy executing a command, its input buffer will be overrun and some characters will be “lost”.
To avoid overrunning the Advantage DRI’s input buffer, it is recommended that some form of flow control be implemented. Neither hardware (DTR or RTS) nor XON/XOFF (also known as DC1/DC3 or control-S/control-Q) handshaking is supported by the Advantage DRI. However, each character which the Advantage DRI receives through its serial port will be "echoed" back to the computer. A simple form of flow control may be implemented by simply waiting for each character's echo from the Advantage DRI before transmitting the next character, since the Advantage DRI doesn't retrieve and echo an incoming character until it has finished processing the previous character.
Computer Control
The Advantage DRI has an RS-232-compatible serial port which allows it to be controlled by a computer or by a system controller such as those provided by AMX or Crestron. The Advantage DRI offers the following two methods of computer control:
Control Button Emulation. This method of computer control allows the computer to
emulate Biamp's standard infrared remote control transmitter or wall-mount remote control panel. Using this method, the computer outputs ASCII characters which are equivalent to the characters which would be generated by a remote control connected to the Advantage DRI. These ASCII characters are transmitted from the computer to the Advantage DRI’s serial port. Control Button Emulation is simple to perform, however, it only provides "one-way" control of the Advantage DRI - it allows the computer to send simple commands to the Advantage DRI, but it does not provide any mechanism for requesting status information from the Advantage DRI.
Advanced Computer Control. This method of computer control provides advanced
commands which allow "two-way" control of the Advantage DRI. Using Advanced Computer Control commands, the computer may request status information from the device as well as send commands to the device. The computer communicates with the Advantage DRI using the Advantage DRI’s serial port.
page 2 Computer Control of the Advantage DRI
21-Jul-97
Control Button Emulation
Control Button Emulation is the simplest form of computer control of the Advantage DRI. This method of operation allows the computer to emulate the operation of a standard Biamp remote control transmitter.
For each button on a standard Biamp remote control, there is a corresponding ASCII character. In order to emulate a remote control button, the computer simply transmits the corresponding ASCII character to the Advantage DRI’s serial port. Each character received by the Advantage DRI will be echoed back to the computer.
The standard Biamp remote control devices never exceed a transmission rate of 9 characters per second. If the computer wishes to perform Control Button Emulation at a rate of greater than 20 characters per second (50 msec per character), flow control should be implemented by waiting for the echo of each character before transmitting the next character. At slower speeds, flow control should not be necessary.
The following table summarizes the ASCII character codes for Control Button Emulation corresponding to each of the 40 remote control buttons supported by the Advantage DRI. These button codes are also summarized on the ASCII code chart provided at the end of this manual. The remote control buttons on the standard Biamp transmitter are numbered from left to right going from bottom to top with the lower left-hand button being button number 1.
Control Button Emulation ASCII Codes (with factory default button definitions shown)
button 1 'B' (0x42) Vol Down ch.5 button 2 'C' (0x43) Vol Down ch.6 button 3 'D' (0x44) Vol Down ch.7 button 4 'E' (0x45) Vol Down Main output button 5 'F' (0x46) Vol Up ch.5 button 6 'G' (0x47) Vol Up ch.6 button 7 'H' (0x48) Vol Up ch.7 button 8 'I' (0x49) Vol Up Main output button 9 'J' (0x4A) Toggle Mute ch.5 button 10 'K' (0x4B) Toggle Mute ch.6 button 11 'L' (0x4C) Toggle Mute ch.7 button 12 'M' (0x4D) Toggle Mute Main output button 13 'N' (0x4E) Vol Down ch.1 button 14 'O' (0x4F) Vol Down ch.2 button 15 'P' (0x50) Vol Down ch.3 button 16 'Q' (0x51) Vol Down ch.4 button 17 'R' (0x52) Vol Up ch.1 button 18 'S' (0x53) Vol Up ch.2 button 19 'T' (0x54) Vol Up ch.3 button 20 'U' (0x55) Vol Up ch.4
button 21 'V' (0x56) Toggle Mute ch.1 button 22 'W' (0x57) Toggle Mute ch.2 button 23 'X' (0x58) Toggle Mute ch.3 button 24 'Y' (0x59) Toggle Mute ch.4 button 25 'Z' (0x5A) Recall Preset 1 button 26 '[' (0x5B) Recall Preset 2 button 27 '\' (0x5C) Recall Preset 3 button 28 ']' (0x5D) Recall Preset 4 button 29 '^' (0x5E) Recall Preset 5 button 30 '_' (0x5F) Recall Preset 6 button 31 '`' (0x60) Recall Preset 7 button 32 'b' (0x62) Recall Preset 8 button 33 'c' (0x63) Vol Down ch.8 button 34 'd' (0x64) Vol Up ch.8 button 35 'e' (0x65) Toggle Mute ch.8 button 36 'f' (0x66) Vol Down Aux1 out ch.11 button 37 'g' (0x67) Vol Up Aux1 out ch.11 button 38 'h' (0x68) Toggle Mute Aux1 ch.11 button 39 'i' (0x69) Vol Down Aux In ch.9 button 40 'j' (0x6A) Vol Up Aux In ch.9
21-Jul-97
Computer Control of the Advantage DRI page 3
Device Select Prefix Characters
When using Advanced Computer Control, up to sixty-four Advantage DRIs may be linked together and individually controlled by the computer (a rear-panel dip-switch is used to set a unique device number to each unit). When using Control Button Emulation, a limited subset of device addressing may be performed, which allows individual control of up to four Advantage DRIs (with device numbers 1 thru 4). This is accomplished by transmitting a device select prefix code immediately prior to each control button ASCII character code. The device select prefix code is inspected by each device to determine whether or not the device should react to the button code which immediately follows. If a button code is not immediately preceded by a device select prefix character, then all Advantage DRIs in the system will react to that button code. The following table summarizes the ASCII characters to use for selecting various devices. This information is also summarized in the ASCII code chart provided at the end of this manual.
Device Select Prefix Codes
select device 1 'l' (0x6C) select device 2 'm' (0x6D) select devices 1 & 2 'n' (0x6E) select device 3 'o' (0x6F) select devices 1 & 3 'p' (0x70) select devices 2 & 3 'q' (0X71) select devices 1 & 2 & 3 'r' (0x72) select device 4 's' (0x73) select devices 1 & 4 't' (0x74) select devices 2 & 4 'u' (0x75) select devices 1 & 2 & 4 'v' (0x76) select devices 3 & 4 'w' (0x77) select devices 1 & 3 & 4 'x' (0x78) select devices 2 & 3 & 4 'y' (0x79) select devices 1 & 2 & 3 & 4 'z' (0x7A)
page 4 Computer Control of the Advantage DRI
21-Jul-97
Advanced Computer Control
The Advanced Computer Control command set includes commands which allow the Advantage DRI to return information about the system to the computer, unlike Control Button Emulation which is basically a one-way control mechanism. The following list summarizes the commands available using Advanced Computer Control, including the ASCII command character associated with each command:
#
do-volume-action perform the specified volume action (up, down, mute, etc).
$
define-preset-mix define a preset mix and store it in non-volatile memory.
%
get-preset-mix retrieve the preset mix settings for the specified preset.
&
get/set-volume get or set the volume for the specified channel.
(
do-logic-action perform the specified logic output action (on, off, toggle).
)
do-preset-action perform the specified preset action (recall, store).
/
get-version retrieve the model information and firmware version date.
Each Advanced Computer Control command requires at least two parameter bytes (four pseudo-hex characters) to be sent prior to the command character. Each command will be explained in detail on the following pages.
Some of the commands cause the Advantage DRI to return information to the computer. For each string of information returned to the computer, the Advantage DRI terminates the string by transmitting the ASCII carriage return character (0x0D - represented in this document as ).
As mentioned earlier, the Advantage DRI will echo all characters it receives, regardless of whether or not the characters are valid commands or parameters. Characters greater than 0x7F are reserved and should not be transmitted by the computer. The Advantage DRI utilizes a subset of the standard ASCII character set. The following characters have meaning to the Advantage DRI:
21-Jul-97
Computer Control of the Advantage DRI page 5
character hexadecimal operation
ASCII control characters (0x00 - 0x1F) no operation
SPACE
ASCII
!
thru
0
thru
@ A B
thru
a b
thru
k
thru
{
thru
0x80 thru 0xFF (0x80 - 0xFF) RESERVED
character
/
?
`
j
z
DEL
(0x20) no operation
(0x21 - 0x2F) Advanced Computer Control
commands
(0x30 - 0x3F) pseudo-hex parameters for Advanced
Computer Control commands (0x40) Control Button Emulation Repeat Code (0x41) no operation
(0x42 - 0x60) Control Button Emulation commands
(buttons 01 - 31) (0x61) no operation
(0x62 - 0x6A) Control Button Emulation commands
(buttons 32 - 40)
(0x6B - 0x7A) Control Button Emulation Device
Select Prefix commands
(0x7B - 0x7F) no operation
An ASCII code chart showing all Advantage DRI commands and codes is provided later in this document for your convenience. Please note that all ASCII control characters (including space, tab, carriage return, and line feed) will be echoed by the Advantage DRI and then ignored - they have no special significance to the Advantage DRI.
Device Type Bitmask and Device Number Parameters
In a system which has more than one Advantage product connected to the computer, the Device Type Bitmask and Device Number parameters provide a mechanism for the computer to address a command to a particular device (or a combination of devices). Every command in the Advanced Computer Control command set requires that a Device Type Bitmask and a Device Number be transmitted as the last two parameter bytes before the computer transmits the command character itself. These two parameter bytes provide a device addressing capability to specify which of the devices in the system should execute the command. All devices which are not specifically addressed by these two command parameters will ignore the command.
The Device Type Bitmask parameter byte for the Advantage DRI is always 0x80. This Device Type Bitmask is also shared with other Biamp devices, including the Advantage EQ281/8, Advantage EQ282/8, and Advantage SMS200. It is anticipated that all new devices developed by Biamp will utilize 0x80 as their Device Type Bitmask. Other Device Type Bitmasks currently in use are:
0x01 Biamp Advantage DRC 4+4 digital remote control 0x02 Biamp Advantage EQ28X digitally-controlled graphic equalizer 0x04 Biamp Advantage SPM522D stereo preamp/mixer 0x08 Biamp Advantage PMX84 programmable matrix switch
page 6 Computer Control of the Advantage DRI
21-Jul-97
Loading...
+ 14 hidden pages