Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
Manufactured under license from Dolby Laboratories. "Dolby," "Pro Logic," and the double-D
symbol are trademarks of Dolby Laboratories. "Surround EX" is a jointly developed technology of
THX and Dolby Laboratories, Inc., and is a trademark of Dolby. Used under authorization.
THX, Ultra and Ultra2 are trademarks of THX Ltd., which may be registered in some jurisdictions.
All rights reserved.
Manufactured under license from Lucasfilm Ltd. U.S. Patent Nos. 5,043,970; 5,189,703; and/or
5,222,059. European Patent No. 0323830. Other U.S. and foreign patents pending. Lucasfilm is a
trademark of Lucasfilm Ltd. Surround EX is a trademark of Dolby Laboratories. Used under
authorization.
"DTS," "DTS-ES," "Neo:6, " and “DTS 96/24” are trademarks of Digital Theater Systems, Inc.
"Lexicon," "LOGIC7," and the L7 logo are registered trademarks of Harman International
Industries, Inc. U.S. Patent Nos. D454,553; D454,860; 5,796,844; 5,870,480 and other worldwide
patents issued and pending.
This document should not be construed as a commitment on the part of Harman Specialty Group.
The information it contains is subject to change without notice. Harman Specialty Group assumes
no responsibility for errors that may appear within this document.
Lexicon
3 Oak Park
Bedford, MA 01730-1413 USA
Telephone: 781-280-0300
Fax: 781-280-0490
www.lexicon.com
Customer Support
Telephone: 781-280-0300
Sales Fax: 781-280-0495
Service Fax: 781-280-0499
Product Shipments
16 Progress Road
Billerica, MA 01821-5730 USA
Harman Specialty Group
Lexicon Part No. 070-16402 REV 0
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
1 Documents
The following documents should also be used with this document to understand how this protocol can be
used with an RV8.
070-15838 User Guide, RV-8
2 Definitions
User Parameter:A user changeable variable that stores a specific value that describes an
operating condition for the RV8 system.
HOST:The device initiating or receiving the serial communication packets to/from the
RV8.
RV8:The Lexicon product receiving or transmitting the serial communication packets
to/from the HOST.
Nonvolatile FLASH:The area of memory in an RV8 that stores users adjustable parameters.
2.1 Protocol Version Cross-reference
All references to RV8 shall be valid unless specifically documented otherwise.
3 Abbreviations
SOPStart of Packet
EOPEnd of Packet
ACKAcknowledge
NAKNo Acknowledge
FPDFront Panel Display
4 General Description
The intention of the RV8 serial port and protocol communication is for an external connected HOST to
control and obtain status from the RV8. The protocol has been designed to focus on two specific goals.
The first is HOST uploading and downloading of RV8 configuration, and system/effect setups. The second
is HOST control of basic user adjustable parameters.(i.e. input, volume, balance…)
Rs-232 Serial Link
HOST
Lexicon RV-8
CD VOL
The RV8 uses simple notification, command, response and acknowledgment packets to have
communication transactions with a given HOST. This protocol is designed for point to point
communication between a HOST and RV8. The RV8 Protocol is a 3 layered system. The RV8 serial
protocol allows for the RV8, or the HOST, to initiate a communication transaction. Most transactions are
initiated by the HOST. RV8 then responds to the HOST command with either a response or
acknowledgment packet. There are a few asynchronous notifications that RV8 initiates indicating system
The RV8 will detect parity, framing and data overrun errors. If any of the physical layer errors are detected,
the complete packet is corrupted and the RV8 will reset the transaction and begin to look for a start of
packet byte.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
5.4 RV8 Receive Buffer
The RV8 has an internal receive buffer. The buffer is 256 Bytes and will transmit a NAK packet with an
error code of DC_ERR_BUFFER_FULL to the HOST if the buffer is full. If the buffer is full, all data
transmitted to the RV8 will be ignored. Therefore, making the currently transmitted packet, if partially
transmitted invalid.
5.5 RV8 Hardware Verification
This test verifies the RS232 ports are working by comparing the transmitted signal (at pin 2) to the received
signal (at pin 3). The RV8 transmits a known test signal just following a power up. The RV8 monitors the
serial port receivers while transmitting the test signal. If the signals are the same, the test passes. In order to
test this circuit, RS232 Wraparound plug(s) are needed and must be installed at the female D9 connector(s)
on the rear panel of the RV8 labeled “RS232”. The wraparound plug shorts pins 2 to 3, allowing for the
RV8 to receive the signal it is transmitting. Once installed, power cycle the RV8 and verify the following
message is displayed on the FPD:
SERIAL PORT A PASSED
SERIAL PORT B PASSED
This message is displayed for about 2 seconds before entering normal operating mode. If no messages are
displayed, then both wrap tests failed.
6 Data Link Layer
The data link layer is used to define a transmission packet. The layer appends a header and tail that
encloses the transmitted application packet data. The data link header will contain the start of packet byte
and count of bytes to follow. The data link tail will contain the end of packet byte.
Data Link Header:
Byte NumberDescriptionValue
First Byte(0)Start of Packet (SOP)0xF1
Byte(1)DLL Data Countnn
Application Header:
Byte(2)Commandnn
Byte(3)
Application Data:
Byte(4)Data[0]nn
Byte(5)Data[1]nn
…Data[…]nn
Last Data Byte -1Data[Data Count -1]nn
Data Link Tail:
Last ByteEnd of Packet (EOP)0xF2
APP Data Count (number of application data bytes to
Follow)nn
6.1 Errors
If the number of DLL data bytes received is the same as the data count and an EOP has not been received,
the RV8 responds by transmitting a NAK packet with an error code DC_ERR_INVALID_PACKET. The
RV8 then continues to look for a SOP byte and will not process the erroneous application packet. The
HOST can use this as an indicator to retransmit the corrupted packet.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
In addition, each byte of a packet must be received sequentially and within the INTER_PACKET_TIME. If
any of the bytes within a packet transmission exceeds the INTER_PACKET_TIME, the RV8 will respond
by transmitting a NAK packet with an error code DC_ERR_INVALID_PACKET. The RV8 then continues
to look for a SOP byte and will not process the erroneous application packet. The HOST can use this as an
indicator to retransmit the corrupted packet.
7 Application Layer
7.1 RV8 Asynchronous Notification Packets
RV8 has been designed to transmit the asynchronous notification packets following these system changes:
1. Power On
2. Entering Standby
3. Front Panel Display update
4. Parameter Value Changes.
The notification packets are defined as follows:
7.1.1 Wakeup Notification
By transmitting the Wakeup Notification, RV8 indicates the unit has just “powered on” or reset and is ready
to receive host commands. This notification is primarily for the HOST to know the status of the RV8.
7.1.1.1 Notification Packet Description
Application Header:
CommandDC_WAKEUP0x01
Data Count00x00
Application Data:
N/A
7.1.1.2 Host Response
The RV8 does not expect any response from the HOST.
7.1.2 Sleep Notification
By transmitting the Sleep Notification, RV8 indicates the unit is shutting down into a standby mode.
Because the hard power switch could be activated independently of the RV8 system software, hard power
down will not be notified. Acknowledgment of the Sleep Notification is not required. This notification is
primarily for the HOST to know the operating status of the RV8.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
7.1.3 Front Panel Display
RV8 will transmit the front panel display buffer following the update to the RV8 front panel display. The
RV8 front panel display is 2 X 20 ASCII character display. The HOST can enable transmission of this
notification message by sending Host Wakeup (7.3.29). To disable transmission the HOST can send Host
Sleep (7.3.30). Transmission of the display buffer is asynchronous to other host/RV8 communication and
will only transmit following the completion of any communication exchanges in progress or pending.
Data Type:Null (0x00) terminated ASCII character string.
Max Length:DISP_LINE_LENGTH defined in Appendix G Protocol Constants.
Line2
Data Type:Null (0x00) terminated ASCII character string.
Max Length:DISP_LINE_LENGTH defined in Appendix G Protocol Constants.
The RV8 includes 8 custom characters that are defined to display increments of a display block. (i.e.
Volume Bar) The custom characters are ASCII character codes 8E - 93(hex). The codes are used as
follows:
'8E' - empty cell
'8F' - left 1 bar
'90' - left 2 bars
'91' - left 3 bars
'92' - left 4 bars
'93' - full cell
7.1.3.3 HOST Response
The RV8 does not expect any response from the HOST.
7.1.4 RV8 Parameter Notification by Id
RV8 will transmit parameter change notifications if they are enabled using the command described in 7.3.42
(MC12_Set_Parameter_Notification_By_Id). If a parameter value is changed due to any user action or
system action the RV8 will transmit the current value of the parameter that is changing.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
7.2 Acknowledgment Packets
Acknowledge and No Acknowledge packets are used to communicate transmission, packet and data
validation status. Both the HOST and RV8 can transmit and receive these packets.
7.2.1 Acknowledge
7.2.1.1 Packet Description
Application Header:
CommandDC_ACK0xE0
Data Count10x01
Application Data:
Data[0]Commandnn
7.2.1.2 Data Description
Command:
DataType:Valid RV8 command as defined in Appendix A Command Codes.
7.2.2 No Acknowledge
7.2.2.1 Packet Description
Application Header:
CommandDC_NACK0xE1
Data Count20x02
Application Data:
Data[0]Commandnn
Data[1]ErrorCodenn
7.2.2.2 Data Description
Command:
DataType:Valid RV8 command as defined in Appendix A Command Codes.
ErrorCode:
DataType:Error code as defined in Appendix B Error Codes.
7.3 Host Initiated Command Packets
The RV8 serial communication protocol has been designed to respond to the following commands as
described below. Each command is transmitted to the RV8 with the identified parameters. If the command
is successfully received and processed by the RV8, the unit will respond with the described response packet
or action.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
N/A
7.3.1.2 RV8 Response
The RV8 will perform an internal reset. After reset the RV8 will go through a soft power-up initialization.
This includes transmitting the “Wakeup Notification Packet”. A soft reset does not reinitialize the RV8.
Nonvolatile RAM is maintained.
7.3.2 Get Custom Name
Request to RV8 for an effect definition. RV8 will respond with “Custom Name Packet”.
Data[0]Number Elements in Array(LSB) 0xnn
Data[1]Number Elements in Array(MSB) 0xnn
Data[2]Number Bytes/ArrayItem(LSB)0xnn
Data[3]Number Bytes/ArrayItem(MSB)0xnn
MC_RESP_ARRAY_DEF
0x97
7.3.4 Get ARRAYITEM(RV8)
This command will request the current state of the ARRAY ITEM.
7.3.4.1 Command Packet Description
Application Header:
Command
Data Count 50x05
Application Data:
Data[0]Param ID for Array(LSB)0xnn
Data[1]Param ID for Array(MSB)0xnn
Data[2]Param Type0x0B
Data[3]Index(LSB)0xnn
Data[4]Index(MSB)0xnn
Data Type:
The data can be a simple type or an aggregate of several types. It the arrayitem contains 16 bit or
32 numeric data, the protocol assumes little-endian byte ordering.
7.3.5.3 RV8 Response
RV8 will set the Array Item to the values sent to it from this packet and transmit a DC_ACK command.
7.3.5.4 Data Validation
If the ParamID is invalid, the RV8 will ignore the command and transmit a DC_NAK command with an
error code DC_INVALID_DATA.
If the index command is greater than or equal to the number of ArrayItems in the array, the RV8 will ignore
the command and transmit a DC_NAK command with an error code DC_ERR_BAD_ARRAY_INDEX.
If the number of bytes per arrayitem in the packet is different from what RV8 expects for the number of
bytes per arrayitem, RV8 will ignore the command and transmit a DC_NAK command with an error code
DC_ERR_ARRAYITEM_SIZE_MISMATCH.
7.3.6 Set Custom Name
Sets the Custom Name that can be displayed when the unit powers up.
Data Type:Null (0x00) terminated ASCII character string.
Max Length:CUSTOM_NAME_LENGTH defined in Appendix G Protocol Constants.
7.3.6.3 RV8 Response
If the custom name enable is TRUE then the custom name banner is display on “power on”. If the Custom
Name Enable is FALSE the custom name is not displayed. The CustomName string is copied to
Nonvolatile RAM. The RV8 will ACK when completed with this command.
7.3.6.4 Data Validation:
No data validation is done on the transmitted data.
7.3.7 Host Wakeup
By transmitting the Wakeup Notification, the Host indicates it has just “powered on” or reset and is ready to
receive RV8 Notifications or Responses. The Host is assumed to be asleep upon power up of the RV8.
Host status is maintained during standby.
7.3.7.1 Command Packet Description
Application Header:
CommandHOST_WAKEUP0x11
Data Count00x00
Application Data:
N/A
7.3.7.2 Data Description
N/A
7.3.7.3 RV8 Response
The RV8 will respond to this command with an ACK. The unit also returns the input name, audio status,
and mode.
7.3.8 Host Sleep
By transmitting the Sleep command, the Host indicates it has just “powered down” and will no longer
respond to RV8 Notifications. No Acknowledgment is expected. The Host is assumed to be asleep upon
power up of the RV8. Host status is maintained during standby.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
Application Header:
CommandHOST_SLEEP0x12
Data Count00x00
Application Data:
N/A
7.3.8.2 Data Description
N/A
7.3.9 Get Communication Configuration
This command is a request to the RV8 for the current communications configuration for the serial port and
protocol. The RV8 responds to this command with a Communication Configuration Packet.
7.3.9.1 Command Packet Description
Application Header:
CommandDC_CMD_GET_COM_CONFIG0x2F
Data Count00x00
Application Data:
N/A
7.3.9.2 Communication Configuration Response Packet
Application Header:
CommandDC_RESP_COM_CONFIG0x8C
Data Count10x01
Application Data:
Data[0]Configuration Register 0nn
7.3.9.3 Data Description
Data Word Bit Definition
00Acknowledge Enable
01Parameter Change Enable
Acknowledge Enable:
TRUE Indicates the RV8 will transmit Acknowledge Notification’s to the Host.
FALSE Indicates the RV8 will not transmit any positive Acknowledge Notification
messages. The RV8 will always transmit NAK error notification messages.
Parameter Change Enable:
TRUE Indicates the RV8 will transmit any parameter change Notification as specified
in the Parameter Change Notification Message.
FALSE Indicates the RV8 will not transmit parameter change Notifications.
7.3.10 Set Communication Configuration
The Set Communication Configuration Command allows the serial port user to set up the various serial
port/ protocol configuration parameters.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
Application Header:
CommandDC_CMD_SET_COM_CONFIG0x30
Data Count10x01
Application Data:
Data[0]Configuration Register 0nn
7.3.10.2 Data Description
Data Word Bit Definition
00Acknowledge Enable
01Parameter Change Enable
Acknowledge Enable:
TRUE Indicates the RV8 will transmit Acknowledge Notification’s to the Host.
FALSE Indicates the RV8 will not transmit any positive Acknowledge Notification
messages. The RV8 will always transmit NAK error notification messages.
Parameter Change Enable:
TRUE Indicates the RV8 will transmit any parameter change Notification as specified
in the Parameter Change Notification Message.
FALSE Indicates the RV8 will not transmit parameter change Notifications.
7.3.10.3 RV8 Response
The data values transmitted will be copied over to the registers stored in nonvolatile RAM. The RV8 will
respond with an ACK Packet.
7.3.11 Set Mute
The Set Mute Command message allows the RS232 users to set/clear the RV8 mute state directly.
7.3.11.1 Command Packet Description
Application Header:
CommandDC_CMD_SET_MUTE0x31
Data Count10x01
Application Data:
Data[0]Mute Statenn
7.3.11.2 Data Description
MUTE State:
ValueDefinitionDescription
0UNMUTEThe user mute state is set to unmuted. The RV8 may still
1USER MUTEThe system volume decrements by the specified user
2FULL MUTEThe system is fully muted.
7.3.11.3 RV8 Response
The RV8 will set the mute state according to the value transmitted. The RV8 may still be full muted if
other conditions require the audio path to be muted. This is only a direct access to the user mute state.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
The data value transmitted to the RV8 will be verified as a valid value. If it is valid the RV8 will set/clear
the mute and respond with an ACK Packet. If the data value is invalid the RV8 will respond with a
DC_INVALID_DATA error NAK.
7.3.12 Send Display String Command
This command allows the Host to send a 40-character string to the RV8 for display on the OSD. The front
panel display goes blank and the message is only displayed on the OSD.
7.3.12.1 Packet Description
Application Header:
CommandDC_CMD_SET_DISPLAY_STR 0x33
Data CountNumber of characters in the
00FPD only: If set TRUE, the display string will only be sent to the FPD device for display.
01Undefined.
02Undefined.
03Undefined.
04Undefined.
05Undefined.
06Undefined.
07Undefined.
Display String:
Data Type:Null (0x00) terminated ASCII character string.
Max Length:40 characters.
7.3.12.3 RV8 Response
The display string is sent to the OSD and Front Panel Display. The RV8 will ACK when completed with
this command.
7.3.12.4 Data Validation:
If a string length exceeds the 40 character maximum the string will be truncated before displaying and the
RV8 transmit a DC_NAK command with an error code DC_INVALID_DATA.
7.3.13 Get Parameter Definition by Id
Request to RV8 for a Parameter Definition by Parameter Id. RV8 will respond with “RV8 Parameter
Definition Packet”.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
ParamType:
Param Type NameParamTy
pe ID
PARAM_TYPE_UINT80Unsigned 8 bit integer(0 to
PARAM_TYPE_UINT161Unsigned 16 bit integer(0 to
PARAM_TYPE_CSTR82Zero terminated string of 8
PARAM_TYPE_CSTR133Zero terminated string of 13
PARAM_TYPE_UINT324Unsigned 32 bit integer (0 to
PARAM_TYPE_BOOLEAN5Boolean( 0 to 1)1
PARAM_TYPE_INT86Signed 8 bit integer
PARAM_TYPE_BRANCH7Parameter BranchN/A
PARAM_TYPE_INT168Signed 16 bit integer
PARAM_TYPE_CSTR209Zero terminated string of 20
PARAM_TYPE_ARRAY10Unsigned 16 bit number
PARAM_TYPE_ARRAYITEM11Not Used Yet0
Type DescriptionData Size
(Bytes)
1
255)
2
65535)
9
ascii characters
14
ascii characters
4
4,294,967,295 )
1
(-127 to 128)
2
(-32,767 to 32,768)
21
ascii characters
4
representing the number of
elements in the array,
another 16 bit number
representing the number of
bytes in an ArrayItem
Data:
Max Value:
The data value transmitted is dependent on the ParamType, as described above. The
CurrentValue is always packed starting at the CurrentValue [0] byte in the packet. For
multi-byte data, the values are packed LSB first(CurrentValue [0]) to MSB(CurrentValue
[0+(num bytes-1)]). For example: Setting a given signed 16 bit parameter to a value of 300 the data array would be packed as follows:
All signed values are in the 2's compliment format.
This is a 16 bit value representing the maximum value for a parameter. Parameter values
exceeding the maximum will be limited to the maximum. This may be a signed or
unsigned value depending on the Parameter Type.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
This is a 16 bit value representing the minimum value for a parameter. Parameter values
exceeding the minimum will be limited to the minimum. . This may be a signed or
unsigned value depending on the Parameter Type.
Parameter Path:
This is a zero terminated ASCII character string describing the parameter's name and path
in the units parameter tree structure.
Read Only:
Data Type:Boolean
TRUE:Parameter is read only
FALSE:Parameter is writeable
7.3.14 Set Parameter Value by Id
RV8 Set Parameter by Id command sets the parameter value equal to the value sent in the command packet
and then runs the appropriate functional changes associated with changing the given parameter.
7.3.14.1 Command Packet Description
Application Header:
CommandMC_CMD_SET_SYS_PARAM_VALUE_BY_ID 0x36
Data Count 240x18
Application Data:
Data[0]ParamId(LSB)nn
Data[1]ParamId(MSB)nn
Data[2]ParamTypenn
Data[3-23] Value[0 -20]nn nn nn…
7.3.14.2 Data Description
ParamId:
Data Type:Unsigned 16 bit Integer
Max Value:Max Parameter Count as reported by the RV8 Unit Configuration Response
Packet in 7.3.16.2
ParamType:
Param Type NameParam
Type
ID
PARAM_TYPE_UINT80Unsigned 8 bit integer(0 to
PARAM_TYPE_UINT161Unsigned 8 bit integer(0 to
PARAM_TYPE_CSTR82Zero terminated string of 8
PARAM_TYPE_CSTR133Zero terminated string of 13
PARAM_TYPE_UINT324Unsigned 32 bit integer (0 to
PARAM_TYPE_BOOLEAN5Boolean (0 to 1)1
PARAM_TYPE_INT86Signed 8 bit integer
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
PARAM_TYPE_INT168Signed 16 bit integer
(-32,767 to 32,768)
PARAM_TYPE_CSTR209Zero terminated string of 20
ascii characters
PARAM_TYPE_ARRAY10Unsigned 16 bit number
representing the number of
elements in the array, another
16 bit number representing the
number of bytes in an
ArrayItem
PARAM_TYPE_ARRAYITEM11Unsigned 16 ParamId,
Unsigned 8 bit ParamType,
Unsigned 16 ArrayItem Index,
Unsigned 8 Databytes 0 to
128
Value:
The data value transmitted is dependent on the ParamType, as described above. The Data
Value is always packed starting at the Value[0] byte in the packet. For multi-byte data,
the values are packed LSB first(Value[0]) to MSB(Value[0+(num bytes-1)]). For
example: Setting a given signed 16 bit parameter to a value of -300 the data array would
be packed as follows:
All signed values are in the 2's compliment format.
7.3.14.3 Data Validation:
The ParamId must be a valid Parameter. The ParamType must be valid for the given ParamId. If either of
these condition is not true the RV8 will respond with a NAK packet and error code DC _
INVALID_PARAM_ID. The data value size cannot exceed the size of a given data type. A value that does
exceed the size of a give data type will be truncated to the appropriate size. The ParamType transmitted
must match the ParamType for the Parameter being transmitted, as per the Parameter Definition as
transmitted by the MC_SYS_PARAM_DEF_PKT . If the types do not match The RV8 will transmit a
NAK packet with a DC_INVALID_INPUT error code. The RV8 will transmit a NAK packet with a
DC_ERR_READ_ONLY error code for read only parameters.
7.3.15 Set Parameter Value by Id, No Run
RV8 Set Parameter by Id command sets the parameter value equal to the value sent in the command packet
and does not run the appropriate functional changes associated with changing the given parameter.
Request to RV8 for its current unit configuration. RV8 will respond with “Unit Configuration Packet”.
The HOST should use this information to determine if any information saved by the HOST is current.
*Note: SW level indicates the status of the RV8 internal application software.
Software Major Revision: An unsigned 8 bit integer value indicating the unit’s major software version.
The host should use this information to determine if new effects, effect
parameters, or system parameters have been added or removed.
Software Minor Revision: An unsigned 8 bit integer value indicating this units minor software version.
Indicates the units software operation has changed but effects, effect parameters,
or system parameters have not changed.
Protocol Major Revision: An unsigned 8 bit integer value indicating the serial communication protocol
major version. The host should use this value to determine if new commands,
notifications, or response packets have been added or deleted from this
specification.
Protocol Minor Revision: An unsigned 8 bit integer value indicating the serial communication protocol
minor version. The host should use this value to determine if the existing
commands, notifications, or response packets have changed in this specification
Parameter Count:An unsigned 16 bit integer value indicating the maximum number of parameters
for this version of software. All Parameters are sequential ordered with in the
unit so cycling from ParamId 0 to ParamId = Parameter Count -1 allows for the
host system to learn the Parameter definitions for all Parameters defined for a
given software version. The 16 bit value is packed LSB followed by the MSB.
Total Number of Effects: An unsigned 8 bit integer value indicating the maximum number of effects
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
TimeStamp:Is a null terminated ASCII text string describing the build date and time of the
current software build. The Format of this text string is:
“yy/mm/dd(sp)hh:mm”
yy- is the last two digits of the year (i.e. year 2001=01, year 2002 = 02)
mm - is the month
dd- is the day
(sp) - is an ASCII space character (0x20)
hh - is the hour
mm - is the minute
SerialNumber:The Serial Number is an unsigned 32 bit integer holding the unique value of the
current unit.
7.3.17 Send IR Command
This command allows the HOST to transmit IR command key codes to the RV8.
7.3.17.1 Command Packet Description
Application Header:
CommandMC_CMD_IR0x39
Data Count10x01
Application Data:
Data[0]KeyCodenn
7.3.17.2 Data Description
KeyCode:
Data Type:Unsigned 8 bit integer.
Valid Values:Appendix D RV8 IR-Codes
7.3.17.3 RV8 Response
The KeyCode is processed as a valid IR code. No acknowledgment will be sent from RV8.
7.3.17.4 Data Validation
The KeyCode data will be verified as a legal IR code. If the Code is not valid the RV8 will not respond.
7.3.18 Get Parameter Value by Id
Request to RV8 for the current value of a given parameter. The RV8 will respond with a “Parameter Value
Packet”.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
If a parameter has been enabled for notification the RV8 will transmit its current value whenever it
has been changed due to any user or system action. For the details of the RV8 notification packet,
see 7.1.5 (RV8_Parameter_Notification_By_Id).
7.3.20 Parameter Get Value String by Id
Request to RV8 for the string representation of a given value for a given parameter. The RV8 will respond
with a “Value String Response Packet”.
7.3.20.1 Command Packet Description
Application Header:
CommandMC_CMD_PARAM_GET_VALUE_STRING_BY_ID 0x3C
Data Count230x17
Application Data:
Data[0]ParamId (LSB)nn
Data[1]ParamId (MSB)nn
Data[2] - Data[22]Value[0] - Value[20]
nn nn
nn ..
7.3.20.2 Data Description
ParamId:
Data Type:Unsigned 16 bit integer.
Max: Max Parameter Count as reported by the RV8 Unit Configuration
Response Packet in 7.3.39.2
Value:
See ParagraphParamSetDataDescription.
7.3.20.3 Data Validation
If ParamId exceeds the its maximum value, the RV8 will ignore the command and transmit a
DC_NAK command with an error code DC_INVALID_PARAM_ID.
7.3.20.4 RV8 Value String Response Packet
Application Header:
CommandMC_RESP_VALUE_STRING0x93
Number of Characters in Value
Data Count
Application Data:
Data[0] - Data[20]Value String
String + 1nn
ch ch ch
… 0x00
7.3.20.5 Data Description
Value String:
Data Type:Null (0x00) terminated ASCII string.
Max Length:21 (20 characters plus terminating Null)
Data Type:Signed 8 bit integer (2’s compliment)
Max:+12 (0x0C) (12 dB)
Min:-80 dB (0xB0) (-80 dB)
Assigned Zone 3 Input:
Indicates the Zone 3 input that is currently assigned for the zone 3 outputs.
Data Type:Unsigned 8 bit integer.
Definition/Conversion:Appendix F RV8 Input Ids
Zone3 Mute Active:
Data Type:Boolean.
TRUE:Zone3 Outputs are active.
FALSE: Zone 3 Outputs are not active.
Reserved
Zone 3 Balance:
Data Type:Signed 8 bit integer (2’s compliment)
Max:16 (0x10) (Full Right)
Min:-16 (0xF0) (Full Left)
7.3.24 Set System Volume
This command is a request to the RV8 to set the system volume with the value in this packet.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
7.3.24.1 Command Packet Description
Application Header:
Command MC_CMD_SET_SYS_VOLUME0x40
Data Count 10x01
Application Data:
Data[0]Valuenn
7.3.24.2 Data Description
Value:
Data Type:Signed 8 bit integer (2’s compliment)
Max:+12 (0x0C) (12 dB)
Min:-80 (0xB0) (-80 dB)
7.3.24.3 RV8 Response
The RV8 will assign the value from the packet to the system volume.
7.3.24.4 Data Validation
If a value is passed that exceeds the maximum value of that parameter the RV8 will ignore the command
and transmit a DC_NAK command with an error code DC_INVALID_DATA.
7.3.25 Set Main Balance
Commands RV8 to set the system balance to the value in this packet.
7.3.25.1 Command Packet Description
Application Header:
CommandDC_CMD_SET_SYS_BALANCE0x41
Data Count 10x01
Application Data:
Data[0]Valuenn
7.3.25.2 Data Description
Value:
Data Type:Signed 8 bit integer (2’s compliment)
Max:+16 (0x10) (Full Right)
Min:-16 (0xF0) (Full Left)
7.3.25.3 RV8 Response
The RV8 will assign the value from the packet to the system balance.
7.3.25.4 Data Validation
If a value is passed that exceeds the maximum value of that parameter the RV8 will ignore the command
and transmit a DC_NAK command with an error code DC_INVALID_DATA.
7.3.26 Set Front/Back Balance
Commands RV8 to set the front/back balance to the value in this packet.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
7.3.26.1 Packet Description
Application Header:
CommandMC_CMD_SET_FRONT_BACK_BALANCE0x42
Data Count 10x01
Application Data:
Data[0]Valuenn
7.3.26.2 Data Description
Value:
Data Type:Signed 8 bit integer (2’s compliment)
Max:+16 (0x10) (Full Front)
Min:-16 (0xF0) (Full Back)
7.3.26.3 RV8 Response
The RV8 will assign the value from the packet to the front/back balance.
7.3.26.4 Data Validation
If a value is passed that exceeds the maximum value of that parameter the RV8 will ignore the command
and transmit a NAK command with an error code DC_INVALID_DATA.
7.3.27 Set Active Effect by Id
This command requests the RV8 to set the active effect to the value in this packet.
7.3.27.1 Command Packet Description
Application Header:
CommandMC_CMD_SET_EFFECT0x43
Data Count10x01
Application Data:
Data[0]EffectIdnn
7.3.27.2 Data Description
EffectId:
Data Type:Unsigned 8 bit integer
Definition/Conversion:Appendix J RV8 Mode Ids
7.3.27.3 RV8 Response
The RV8 will load the desired effect.
7.3.27.4 Data Validation
If a value is passed that exceeds the maximum value of that parameter the RV8 will ignore the command
and transmit a NAK command with an error code DC_INVALID_DATA.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
7.3.28 Set Zone3 Volume
Commands RV8 to set the Zone 3 volume with the value in this packet.
7.3.28.1 Command Packet Description
Application Header:
CommandMC_CMD_SET_ZONE3_VOLUME0x45
Data Count 10x01
Application Data:
Data[0]Valuenn
7.3.28.2 Data Description
Value:
Data Type:Signed 8 bit integer (2’s compliment)
Max:+12 (0x0C) (12dB)
Min:-80 (0xB0) (-80 dB)
7.3.28.3 RV8 Response
The RV8 will assign the value from the packet to the Zone 3 volume.
7.3.28.4 Data Validation
If a value is passed that exceeds the maximum value of that parameter the RV8 will ignore the command
and transmit a NAK command with an error code DC_INVALID_DATA.
7.3.29 Set Zone3 Left/Right Balance
Commands RV8 to set the Zone 3 balance to the value in this packet.
7.3.29.1 Packet Description
Application Header:
CommandMC_CMD_SET_ZONE3_BALANCE0x46
Data Count 10x01
Application Data:
Data[0]Valuenn
7.3.29.2 Data Description
Value:
Data Type:Signed 8 bit integer (2’s compliment)
Max:+16 (0x10) (Full Right)
Min:-16 (0xF0) (Full Left)
7.3.29.3 RV8 Response
The RV8 will assign the value from the packet to the Zone 3 balance.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
1.1 Examples:
The following examples show the byte’s transmitted for the Send RV8 IR Commands . They are shown as
they should be transmitted from left to right.
1.1.1 Send RV-8 IR Command Example
SOPDLL DCCMDAppDC DATA0EOP
IR Key
F104390128F2
Code
This example shows how to transmit the IR command for “
the GAME input for the Main Zone. The bytes are transmitted from left to right and they
are defined as:
Byte 0: Start of Packet(F1 hex)
Byte 1: Data Link Layer(DLL) Data Count(DC); for an IR command this would be 4 bytes to
follow
Byte 2: The Application Layer Command, in this case it is 39 hex indicating this is an IR
command packet.
Byte 3: The Application Layer Data Count(DC); for this packet it is 1 data byte to follow.
Byte 4: The Application Command Data: This IR Command Packet is transmitting Key Code
MAIN_GAME
“
with other IR key codes as found in Appendix D RV-8 IR Codes.
Byte 5: End of Packet (F2 hex)
”(28 hex). To transmit other IR Key Codes the user would replace this byte
MAIN_GAME
”. This example command will select
1.2 RV-8 V1.00 Parameter ID List
The following table is for
Protocol version changes. The RV-8 can always be queried for the correct Parameter Id numbers and
Parameter Definition Packets.
Lexicon, Inc.
RV-8 Serial Communications ProtocolPrinted on: 01/18/05
14190x58BPARAM.CNAMEEN
14200x58CPARAM.AVSYNC
14210x58DPARAM.PRESETEN
14220x58EPARAM.TRIGGER1MODE
14230x58FPARAM.TRIGGER2MODE
14240x590PARAM.USERMESSAGE
14250x591PARAM.COM
14260x592PARAM.COM.CONFIGREG0
14270x593PARAM.TMPKEY
14280x594PARAM.TUNER
14290x595PARAM.TUNER.PRESETS
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14290x595tuner preset data
14300x596PARAM.TUNER.STATIONNAME_ACTIVE