Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Documents Change List Definitions Protocol Version Cross-reference Abbreviations General Description Physical Layer DB-9 RS232 Connector Serial Port Driver Errors MC-12 Receive Buffer MC-12 Hardware Verification (V1.10, Not Supported in MC-12 V1.00, V1.01)
Page 4
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.23 Clear Record Input (MC-12, MC-1) 7.3.24 Set Zone2 Volume (MC-12, MC-1) 7.3.25 Set Zone2 Left/Right Balance (MC-12, MC-1) 7.3.26 Set Custom Name (MC-12, MC-1) 7.3.27 Set Input Name by Id (MC-12, MC-1) 7.3.28...
Page 5
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Application Notes and Examples Box initializations: 1.1.1 MC-12: 1.1.2 HOST: Getting System Wide Status and Setup: Downloading the System Setup to the MC-12: Simple System Control & System Status: Examples: 1.5.1 MC-12 Get Unit Configuration 1.5.2...
The device initiating or receiving the serial communication packets to/from the MC-12. MC-12 ,MC-1,DC-2: The Lexicon product receiving or transmitting the serial communication packets to/from the HOST. Nonvolatile RAM: The area of memory in an MC-12 that stores users adjustable parameters. The Nonvolatile RAM is battery backed, to maintain values during MC-12 power down.
The first is HOST uploading and downloading of MC-12 configuration, and system/effect setups. The second is HOST control of basic user adjustable parameters.(i.e. input, volume, balance…) Rs-232 Serial Link Lexicon MC-12 HOST CD VOL The MC-12 uses simple notification, command, response and acknowledgment packets to have communication transactions with a given HOST.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 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.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7 Application Layer 7.1 MC-12 Asynchronous Notification Packets MC-12 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.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 communication and will only transmit following the completion of any communication exchanges in progress or pending. 7.1.3.1 Notification Packet Description Application Header: Command DC_FPD 0x03 Data Count 0x2A Application Data: Data[0] - Data[20] Line1 ch ch ch…...
Page 13
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.1.4.1 Notification Packet Description Application Header: Command DC_PARAM_CHG_MSG 0x04 Data Count 0x02 Application Data: Data[0] ParamId Data[1] Value 7.1.4.2 Data Description ParamId: Data Type: Unsigned 8 bit integer Max: 255. Value: The Current Value for this system parameter.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.1.5 MC-12 Parameter Notification by Id (MC-12) MC-12 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 MC-12 will transmit the current value of the parameter that is changing.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Parameter MC-12 Parameter Name Current Mode PARAM.MAIN.EFFECT Main Zone Mute PARAM.MAIN.MUTE Main Zone Volume PARAM.MAIN.VOLUME Main Zone Balance PARAM.MAIN.BALANCE Main Zone Input Selection PARAM.MAIN.INPUT Zone 2 Input PARAM.ZONE.INPUT Zone 2 Volume PARAM.ZONE.VOLUME Zone 2 Balance PARAM.ZONE.BALANCE...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.2.2 No Acknowledge (MC-12, MC-1) 7.2.2.1 Packet Description Application Header: Command DC_NACK 0xE1 Data Count 20x02 Application Data: Data[0] Command Data[1] ErrorCode 7.2.2.2 Data Description Command: DataType: Valid MC-12 command as defined in Appendix A Command Codes.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.2.2 MC-12 Response The MC-12 will reset, clear any saved system and effect parameters in Nonvolatile RAM, and restore the factory default system and effect parameters. After reset the MC-12 will go through a soft power-up initialization.
Page 19
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Software Type: An unsigned 8 bit value indicating the current configuration of the unit’s software. The following table shows the values assigned to the available types: SW Type COMPLETE BOOTROM Software Level:...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 dd- is the day (sp) - is an ASCII space character (0x20) hh - is the hour mm - is the minute 7.3.5 Get System Status (MC-12, MC-1) Request to MC-12 for its current system status. MC-12 will respond with “System Status Packet”.
Page 21
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Definition/Conversion: Appendix_H_MC-12_Effect_Ids Current Input Sample Rate: Data Type: Unsigned 8 bit integer. SAMPLE RATE RATE_UNKNOWN RATE_44 RATE_48 RATE_88 RATE_96 Current Input Format: Data Type: Unsigned 8 bit integer. DATA STREAM TYPE DATA_TYPE_UNKNOWN...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.6 Get Zone 2 Status (MC-12, MC-1) This command is a request to MC-12 for current Zone 2 Status. MC-12 will respond with “Zone2 Status Packet”. This command has been maintained for backward compatibility with MC-1. In order to maintain backward compatibility, the MC-12 Parameters have been mapped to the MC-1 parameters as described in each Data Description.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Zone 2 Balance: Data Type: Unsigned 8 bit integer. Maximum Value: 32 Conversion: 0 = Left 32 = Right 7.3.7 Get System Parameter Definition (MC-1) This command is not supported by the MC-12.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Max Length: CUSTOM_NAME_LENGTH defined in Appendix G Protocol Constants. 7.3.13 Get Input Name by Id (MC-12, MC-1) This command is a request to MC-12 for the custom input name. MC-12 will respond with “Input Name Packet”.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.15 Set System Parameter Values (MC-1) This command is not supported by the MC-12. 7.3.16 Set Effect Parameter Values (MC-1) This command is not supported by the MC-12. 7.3.17 Set Effect Name by Effect Id (MC-1) This command is not supported by the MC-12.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 The MC-12 will assign the value from the packet to the front/back balance. 7.3.20.4 Data Validation If a value is passed that exceeds the maximum value of that parameter the MC-12 will ignore the command and transmit a NAK command with an error code DC_INVALID_DATA.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Application Header: Command DC_CMD_SET_REC_INPUT 0x25 Data Count 0x01 Application Data: Data[0] InputId 7.3.22.2 Data Description InputId: Data Type: Unsigned 8 bit Integer Description/Conversion: Appendix F MC-12 Input Ids 7.3.22.3 MC-12 Response: If the Input Id is a valid MC-12 input then the MC-12 will make the request Input the active record input.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.25.4 Data Validation If a value is passed that exceeds the maximum value of that parameter the MC-12 will ignore the command and transmit a NAK command with an error code DC_INVALID_DATA.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.30 Host Sleep (MC-12, MC-1) By transmitting the Sleep command, the Host indicates it has just “powered down” and will no longer respond to MC-12 Notifications. No Acknowledgment is expected. The Host is assumed to be asleep upon power up of the MC-12.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 FALSE Indicates the MC-12 will not transmit parameter change Notifications. 7.3.32 Set Communication Configuration (MC-12, MC-1) The Set Communication Configuration Command allows the serial port user to set up the various serial port/ protocol configuration parameters.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 MUTE State: Value Definition Description UNMUTE The user mute state is set to unmuted. The MC-12 may still be muted for other internal reasons. USER MUTE The system volume decrements by the specified user amount as set in the OUTPUT LEVELS Menu.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Max Length: 40 Characters. 7.3.35.3 MC-12 Response The display string is sent to the OSD and Front Panel Display. The MC-12 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 MC-12 transmit a DC_NAK command with an error code DC_INVALID_DATA.
Page 36
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.36.4 Parameter Definition Response Packet The following Packet has been defined as follows for MC-12 V1.00. Future releases may modify this definition. Application Header: Command MC_SYS_PARAM_DEF_PKT 0x8F Data Count 0x6E Application Data:...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 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)]).
Page 38
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.37.2 Data Description ParamId: Data Type: Unsigned 16 bit Integer Max Value: Max Parameter Count as reported by the MC-12 Unit Configuration Response Packet in 7.3.39.2 ParamType: Param Type Name Param Type Description...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 NAK packet with a DC_INVALID_INPUT error code. The MC-12 will transmit a NAK packet with a DC_ERR_READ_ONLY error code for read only parameters. 7.3.38 MC-12 Set Parameter Value by Id, No Run (MC-12) MC-12 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.
Page 40
Data[29] SerialNumber(MSB) 7.3.39.3 Data Description ProductId: This unsigned 8 bit value describes the product. Product ID Lexicon DC-2 Lexicon MC-1 JBL Synthesis SDP-3 Lexicon MC-12 JBL Synthesis SDP-40 Software Type: An unsigned 8 bit value indicating the current configuration of the unit’s software.
Page 41
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 SW Type COMPLETE BOOTROM Software Level: The following table shows the values assigned to the possible software levels: SW Level RELEASED PRE_ALPHA ALPHA BETA GAMMA UNSUPPORTED *Note: SW level indicates the status of the MC-12 internal application software.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 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)
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 ParamId: Data Type: Unsigned 16 bit integer. Max: Max Parameter Count as reported by the MC-12 Unit Configuration Response Packet in 7.3.39.2 7.3.41.3 Data Validation If ParamId exceeds the its maximum value, the MC-12 will ignore the command and transmit a DC_NAK command with an error code DC_INVALID_PARAM_ID.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 If ParamId exceeds the its maximum value, the MC-12 will ignore the command and transmit a DC_NAK command with an error code DC_INVALID_PARAM_ID. 7.3.42.4 MC-12 Response If a parameter has been enabled for notification the MC-12 will transmit its current value whenever it has been changed due to any user or system action.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Data Type: Null (0x00) terminated ASCII string. Max Length: 21 (20 characters plus terminating Null) 7.3.44 MC-12 Clear All Parameter Notifications (MC-12) Request to the MC-12 to disable all MC-12 parameter notifications.
Page 46
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Data Type: Signed 8 bit integer (2’s compliment) Max: +12 (0x0C) (12 dB) Min: -80 (0xB0) (-80 dB) Current Input: Data Type: Unsigned 8 bit integer Definition/Conversion: Appendix F MC-12 Input Ids...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Min: -16 (0xF0) (Full Back) Video Sync: Data Type: Boolean. TRUE: MC-12 has detected Video Sync for current video input FALSE: MC-12 can not detect Video Sync for the current video input 7.3.46 MC-12 Get Record Status (MC-12)
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Record Active: Data Type: Boolean. TRUE: Record Zone Output is active FALSE: Record Zone Output is not Active. Zone 2 Balance: Data Type: Signed 8 bit integer (2’s compliment) Max: 16 (0x10) (Full Right)
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.48.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.48.3 MC-12 Response The MC-12 will assign the value from the packet to the system balance.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.52 MC-12 Set Zone2 Volume (MC-12) Commands MC-12 to set the Zone 2 volume with the value in this packet. 7.3.52.1 Command Packet Description Application Header: Command MC_CMD_SET_ZONE2_VOLUME 0x45 Data Count 1...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 If a value is passed that exceeds the maximum value of that parameter the MC-12 will ignore the command and transmit a NAK command with an error code DC_INVALID_DATA. 7.3.54 MC-12 Get Input Name by Id (MC-12) This command is a request to MC-12 for the custom input name.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 7.3.55 MC-12 Set Input Name by Id (MC-12) Sets an Input Name to the transmitted value for a given input. 7.3.55.1 Command Packet Description Application Header: Command MC_CMD_SET_INPUT_NAME 0x48 Number of characters in...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Appendix C DC-2, MC-1 IR-Codes MC-1 Mapped to MC-12 MC-1 Shift Mapped to MC- MC-1 Rec Mapped to MC-12 Function Function Code Functions 12 Function Code Function Function Code STANDBY 19 Trigger Off...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Appendix D MC-12 IR Codes Button2 Button3 Button4 Button9 Main Zone-2 Record Shift LABEL DATA FUNCTION DATA FUNCTION DATA FUNCTION DATA (hex) (hex) (hex) (hex) Setup LIGHT None LIGHT None LIGHT None...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Appendix E MC-1 Input Id’s Input Name Input Id Tape Tuner V-Disc Appendix F MC-12 Input Ids Mapped MC-12 MC-12 MC-1 Input Name Input Id Input Name DVD1 DVD2 V-Disc GAME TAPE...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Appendix H MC-12 to MC-1 Effect Map MC-12 Effect Name MC-12 MC-1 Effect Name Effect ID NONE Bypass Bypass Internal Noise L7 Film Logic 7 L7 TV TV Logic L7 Music Music Logic...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Appendix I MC-1 to MC-12 Effect ID Map MC-1 MC-1 Effect Name MC-12 Effect Name Effect Bypass Analog Bypass Church Church THX Cinema PL II THX TV Logic L7 TV Mono Logic...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Appendix J MC-12 Mode Ids MC-12 Mode ID MC-12 Mode Name NONE Internal Noise L7 Film L7 TV L7 Music 2-Ch Surround 2-Channel Mono Logic Mono Surround Mono Pro Logic Prologic II...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Application Notes and Examples 1.1 Box initializations: 1.1.1 MC-12: When the MC-12 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 MC-12 continues to operate.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 1.5 Examples: The following examples show the byte’s transmitted for the MC-12 Get Unit Configuration, and Send MC-1 IR, and Send MC-12 IR Commands . They are shown as they should be transmitted from left to right.
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 Product Id is Lexicon MC-12 Software type COMPLETE Software level of RELEASED Software Version 1.00 Protocol Version 1.01 with 1007 parameters and 25 effects, and the software image was built “01/07/27 17:07”...
Lexicon MC-12 Serial Communications Protocol Printed on: 07/19/04 1.5.3 Send MC-12 IR Command Example DLL DC AppDC DATA0 IR Key Code This example shows how to transmit the IR command for “ ”. This example command will select MAIN_GAME the GAME input for the Main Zone. The bytes are transmitted from left to right and they...
Need help?
Do you have a question about the MC-12 V4.0 - SERIAL COMMUNICATIONS PROTOCOL DEFINITION REV 1-6 and is the answer not in the manual?
Questions and answers