Page 1
Lexicon, Inc. DC-2/MC-1 Serial Communications Protocol Serial Communications Protocol Definition Project: DC-2/MC-1 Updated: May 15,2000 Major rev 0 Minor rev 5 Lexicon, Inc. 3 Oak Park Bedford, MA 01730-1441 (781) 280-0300 Printed on: 10/19/00 1 of 44...
Lexicon, Inc. DC-2/MC-1 Serial Communications Protocol Documents Definitions Abbreviations General Description Physical Layer DB-9 RS232 Connector Serial Port Driver Errors DC-2/MC-1 Receive Buffer DC-2/MC-1 Hardware Verification Data Link Layer Errors Application Layer DC-2/MC-1 Asynchronous Notification Packets 7.1.1 Wakeup Notification 7.1.2 Sleep Notification 7.1.3...
Page 3
15.1 Box initializations: 15.1.1 DC-2/MC-1: 15.1.2 HOST: 15.2 Getting System Wide Status and Setup: 15.3 Downloading the System Setup to the DC-2/MC-1: 15.4 Simple System Control & System Status: 15.5 Examples: 15.5.1 Get Unit Configuration 15.5.2 Get Effect Definition 15.5.3 Set Input Name 15.5.4...
The intention of the DC-2/MC-1 serial port and protocol communication is for an external connected HOST to control and obtain status from the DC-2/MC-1. The protocol has been designed to focus on two specific goals. The first, is HOST uploading and downloading of DC-2/MC-1 configuration, and system/effect setups.
HOST. This protocol is designed for point to point communication between a HOST and DC-2/MC-1. The DC-2/MC-1 Protocol is a 3 layered system. The DC-2/MC-1 serial protocol allows for the DC-2/MC-1, or the HOST to initiate a communication transaction.
If the signals are the same, the test passes. In order to test this circuit, (1 for Dc-2 and 2 for MC-1) RS232 Wraparound plug(s) are needed and must be installed at the female D9 connector(s) on the rear panel of the DC-2/MC-1/SDP-3 labeled “RS232”.
By transmitting the Wakeup Notification, DC-2/MC-1 indicates the unit has just “powered on” or reset and is ready to receive host commands. If no acknowledgment is received within ACK_TIMEOUT, DC-2/MC- 1 will continue to operate. This notification is primarily for the HOST to know the status of the DC-2/MC- 7.1.1.1 Notification Packet Description...
DC-2/MC-1 will transmit the front panel display buffer following the update to the DC-2/MC-1 front panel display. The DC-2/MC-1 front panel display is 2 X 20 ASCII character display. The HOST can control the operation of this notification message by FPD internal control registers. Individual notifications can be enabled or disabled and the minimum transmit interval can be adjusted.
7.1.4 Parameter Change Notification DC-2/MC-1 will transmit predetermined parameter change notifications. If a parameter value is changed due to any user action or system action the DC-2/MC-1 will transmit the current value of the parameter that is changing. 7.1.4.1 Notification Packet Description...
Menu Background On/Off MENU_BKGND The parameter definitions for each of these parameters can be obtained by querying the DC-2/MC-1 with the DC_CMD_GET_SYS_PARAM_BY_NAME command. The DC_RESP_SYS_PARAM_DEF will contain the ParamId for each of the parameters. The ParamId may change with s/w version changes, but the Parameter Name will not.
Application Data: 7.3.1.2 DC-2/MC-1 Response The DC-2/MC-1 will perform and internal reset. After reset the DC-2/MC-1 will go through a soft power- up initialization. This includes transmitting the “Wakeup Notification Packet”. A soft reset does not reinitialize the DC-2/MC-1. Nonvolatile RAM is maintained.
The KeyCode is processed as a valid IR code. No acknowledgment will be sent from DC-2/MC-1. 7.3.3.4 Data Validation The KeyCode data will be verified as a legal IR code. If the Code is not valid the DC-2/MC-1 will not respond.
Page 13
GAMMA UNSUPPORTED *Note: SW level indicates the status of the DC-2/MC-1 internal application software. Software Major Revision: An unsigned 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.
(sp) - is an ASCII space character (0x20) hh - is the hour mm - is the minute 7.3.5 Get System Status Request to DC-2/MC-1 for it’s current system status. DC-2/MC-1 will respond with “System Status Packet”. 7.3.5.1 Command Packet Description Application Header:...
DC-2/MC-1 has detected Video Synch for current video input FALSE: DC-2/MC-1 can not detect Video Synch for the current video input 7.3.6 Get Record/Zone 2 Status Request to DC-2/MC-1 for current Record/Zone2 Status. DC-2/MC-1 will respond with “Record/Zone2 Status Packet”. 7.3.6.1 Command Packet Description Unsigned 8 bit integer.
Conversion: 7.3.7 Get System Parameter Definition There are two ways to request a DC-2/MC-1 system parameter definition. The first is by Parameter Id and the second by parameter name. DC-2/MC-1 will respond with “System Parameter Definition Packet”. 7.3.7.1 Get System Parameter Definition by Id Command Packet Error! Not a valid link.
Page 17
Set by the System Parameter Count in the “Unit Configuration Packet”. 7.3.7.3 Data Validation: The ParamId must be a valid parameter number. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_PARAM_NUMBER. 7.3.7.4 Get System Parameter Definition by Name Command Packet...
Set by the Effect Count in the “Unit Configuration Packet”. 7.3.9.3 Data Validation: The EffectId must be a valid Effect Id. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_EFFECT_ID. 7.3.9.4 Effect Definition Response Packet...
7.3.10.3 Data Validation: The EffectId must be a valid Effect Id. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_EFFECT_ID. The ParamId must be a valid Parameter number. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_PARAM_NUMBER.
Set by the Effect Count in the “Unit Configuration Packet”. 7.3.11.3 Data Validation: The EffectId must be a valid Effect Id. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_EFFECT_ID. 7.3.11.4 Effect Parameter Values Response Packet...
Data Type: Unsigned 8 bit integer array. Max: Dependent on the parameter definition 7.3.12 Get Custom Name Request to DC-2/MC-1 for an effect definition. DC-2/MC-1 will respond with “Custom Name Packet”. 7.3.12.1 Command Packet Description Application Header: Command DC_CMD_GET_CUST_NAME Data Count Application Data: 7.3.12.2 Data Description...
Input Id are defined in Appendix D Input Id’s 7.3.13.3 Data Validation: The InputId must be a valid Input number. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_INPUT_ID. 7.3.13.4 Input Name Response Packet...
7.3.15.4 Data Validation If any of the values exceeds it’s maximum value the DC-2/MC-1 will ignore the command and transmit a DC_NAK command with an error code DC_INVALID_DATA. 7.3.16 Set Effect Parameter Values Commands DC-2/MC-1 to replace the given effect parameter values with the values in this packet.
If the effect is active the DC-2/MC-1 will reload the effect to activate all the parameter values. 7.3.16.4 Data Validation If a value is passed that exceeds the maximum value of that parameter the DC-2/MC-1 will ignore the command and transmit a DC_NAK command with an error code DC_ERR_INVALID_DATA.
DC-2/MC-1 Serial Communications Protocol The Effect Id must be a valid Effect Id. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_EFFECT_ID. If an invalid string is passed, DC-2/MC-1 will ignore the command and transmit a DC_NAK command with an error code DC_ERR _INVALID_DATA.
Lexicon, Inc. DC-2/MC-1 Serial Communications Protocol If a value is passed that exceeds the maximum value of that parameter the DC-2/MC-1 will ignore the command and transmit a DC_NAK command with an error code DC_INVALID_DATA. 7.3.20 Set Front/Back Balance Commands DC-2/MC-1 to set the front/back balance to the value in this packet.
7.3.22.3 DC-2/MC-1 Response 7.3.22.4 Data Validation: The InputId must be a valid Input Id. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_INPUT_ID. If the input selection is disallowed(input blocked, digital input not selected…) DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_INVALID_INPUT If...
The DC-2/MC-1 will assign the value from the packet to the zone2 volume. 7.3.24.4 Data Validation If a value is passed that exceeds the maximum value of that parameter the DC-2/MC-1 will ignore the command and transmit a NAK command with an error code DC_ERR_INVALID_DATA.
Nonvolatile RAM. The DC-2/MC-1 will Ack when completed with this command. 7.3.26.4 Data Validation: If an invalid string is passed, DC-2/MC-1 will ignore the command and transmit a DC_NAK command with an error code DC_INVALID_DATA. 7.3.27 Set Input Name by Id Sets an Input Name to the transmitted value for a given input.
Lexicon, Inc. DC-2/MC-1 Serial Communications Protocol The InputId must be a valid Input Id. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_INPUT_ID. If the InputName string exceeds the INPUT_NAME _LENGTH, the DC-2/MC-1 will ignore the command and transmit a DC_NAK command with an error code DC_ERR_INVALID_DATA.
Application Data: 7.3.30.2 Data Description 7.3.31 Get Communication Configuration Request to DC-2/MC-1 for the current communications configuration for the serial port and protocol. The DC-2/MC-1 responds to this command with a Communication Configuration Packet. 7.3.31.1 Command Packet Description Application Header:...
TRUE Indicates the DC-2/MC-1 will light the green standby LED to indicate the DC-2/MC-1 is receiving data on the RS232 serial port, and will light the Red Overload LED to indicate the Dc-2/MC-1 is transmitting data on the RS232 serial port.
The Data value transmitted to the DC-2/MC-1 will be verified as a valid value. If Valid the DC-2/MC-1 will set/clear the mute and respond with an ACK Packet. If the data value is invalid the DC-2/MC-1 will respond with an DC_ERR_INVALID_DATA error NAK.
The output ID will be verified for validity. The output adjustment will be range checked. The Output Id must be a valid Id number as stated in this document. If it is not the DC-2/MC-1 will respond with a NAK packet and error code DC_ERR_ INVALID_PARAM_NUMBER.
Lexicon, Inc. DC-2/MC-1 Serial Communications Protocol The display string is sent to the OSD and Front Panel Displays. The DC-2/MC-1 will ACK when completed with this command. 7.3.35.4 Data Validation: If a string length exceeds the 40 character maximum the string will be truncated before displaying and the DC-2/MC-1 transmit a DC_NAK command with an error code DC_INVALID_DATA.
Page 36
Lexicon, Inc. DC-2/MC-1 Serial Communications Protocol H ost C om m ands: D C _C M D _R E S E T H O S T_W A K E U P H O S T_S LE E P D C _C M D _R E S TO R E _D E FA U LTS...
Lexicon, Inc. DC-2/MC-1 Serial Communications Protocol 11 Appendix C DC-2/MC-1 IR-Codes Function Code Shift Functions Trigger Off Trigger On OSD Off Menu Back Off FrontPanel Off reserved LIGHT FrontPanel On reserved OSD On Menu Back On Menu Up Fade Front...
Lexicon, Inc. DC-2/MC-1 Serial Communications Protocol 12 Appendix D Input Id’s Input Name Input Id Tape Tuner V-Disc 13 Appendix E Protocol Constants Constant FPD_LINE_LENGTH PARAM_NAME_LENGTH EFFECT_NAME_LENGTH CUSTOM_NAME_LENGTH INPUT_NAME_LENGTH INTER_PACKET_TIME DATA STREAM TYPE INSTREAM_UNKNOWN INSTREAM_AC3 INSTREAM_PCM INSTREAM_ANALOG INSTREAM_DTS INSTREAM_AC3_20 INSTREAM_AC3_51...
When the DC-2/MC-1 is powered on it will initialize the serial port and then transmit the DC_WAKEUP Packet, and look for an ACK from the HOST. Currently if an ACK is not received the DC-2/MC-1 continues to operate. This message is mostly for the HOST to know if the DC-2/MC-1 is in an operational state.
15.3 Downloading the System Setup to the DC-2/MC-1: In order to download a complete system setup to the DC-2/MC-1, the HOST must first check to see if the definitions it wishes to download are current with the DC-2/MC-1 it is targeting. So the HOST should first check the unit configuration, and verify the s/w levels and versions are compatible and the number of system parameters and effects are correct.
15.5.1 Get Unit Configuration The HOST initiates by sending the GET_UNIT_CONFIG command packet: DLL DC AppDC If the command is received with out error the DC-2/MC-1 responds with the UNIT_CONFIG response packet: DLL DC App DC DATA0 Product...
DC-2/MC-1 Serial Communications Protocol 15.5.2 Get Effect Definition Once we know how many effects the DC-2/MC-1 has resident we can then start to step through each effect for its definition. This is done by sending a GET_EFFECT command packet: DLL DC...
DLL DC App DC DATA0 Because the DC-2/MC-1 received and processed the command successfully the DC-2/MC-1 responds with the DC_ACK packet. Here we see that the ACK packet is responding to the DC_CMD_SET_INPUT_NAME command. 15.5.4 Send IR Command Example S O P D LL D C C M D A ppD C D A TA 0...
Need help?
Do you have a question about the DC-2 and is the answer not in the manual?
Questions and answers