Lexicon MC-4 Owners manual

MC-4
Serial Protocol Definitions
Software Version 1.00/1.10
Protocol Version:
Major Rev 1 Minor Rev 6
Lexicon MC-4 Serial Communications Protocol
numbers and other worldwide patents issued and pending. Windows® is a registered trademark of Microsoft Corporation.
© 2005 Harman International Industries, Incorporated. All rights reserved. This document should not be construed as a commitment on the part of Harman International Industries,
Inc. The information it contains is subject to change without notice. Harman International Industries, Inc. assumes no responsibility for errors that may appear within this document.
Lexicon, Inc. 3 Oak Park Bedford, MA 01730-1413 USA Tel 781-280-0300 Fax 781-280-0490 www.lexicon.com
Customer Service
Tel 781-280-0300 Fax 781-280-0495 (Sales) Fax 781-280-0499 (Service)
Lexicon Part No. 070-16304 Rev 0
2
Lexicon MC-4 Serial Communications Protocol
1
Documents 5
1.1 Change List 5
2 Definitions 5 3 Abbreviations 5 4 General Description 5
4.1 Physical Layer 6
4.2 Serial Port Driver 6
4.3 Errors 6
4.4 MC-4 Receive Buffer 7
4.5 MC-4 Hardware Verification 7
5 Data Link Layer 7
5.1 Errors 7
6 Application Layer 8
6.1 MC-4 Asynchronous Notification Packets 8
6.1.1 Wakeup Notification 8
6.1.2 Sleep Notification 8
6.1.3 Front Panel Display 9
6.1.4 MC-4 Parameter Notification by Id 9
6.2 Acknowledgment Packets 10
6.2.1 Acknowledge 10
6.2.2 No Acknowledge 11
6.3 Host Initiated Command Packets 11
6.3.1 Reset Unit 11
6.3.2 Restore Defaults 12
6.3.3 Get Custom Name 12
6.3.4 Set Custom Name 12
6.3.5 Host Wakeup 13
6.3.6 Host Sleep 14
6.3.7 Get Communication Configuration 14
6.3.8 Set Communication Configuration 15
6.3.9 Set Mute 15
6.3.10 Send Display String Command 16 Definition 16
6.3.11 MC-4 Get Parameter Definition by Id 17
6.3.12 MC-4 Set Parameter Value by Id 19
6.3.13 MC-4 Set Parameter Value by Id, No Run 21
6.3.14 MC-4 Get Unit Configuration 21
6.3.15 MC-4 Send IR Command 24
6.3.16 MC-4 Get Parameter Value by Id 25
6.3.17 MC-4 Set Parameter Notification by Id 26
6.3.18 MC-4 Parameter Get Value String by Id 26
6.3.19 MC-4 Clear All Parameter Notifications 27
6.3.20 MC-4 Get System Status 27
6.3.21 MC-4 Set System Volume 29
6.3.22 MC-4 Set Main Balance 30
6.3.23 MC-4 Set Fader 30
6.3.24 MC-4 Set Active Effect by Id 31
6.3.25 MC-4 Get Input Name by Id 31
3
Lexicon MC-4 Serial Communications Protocol
MC-4 Set Input Name by Id 32
6.3.26
Appendix A: Command Codes 34 Appendix B: Error Codes 35 Appendix C: MC-4 IR Codes 36 Appendix D: Protocol Constants 38 Appendix E: MC-4 Mode Ids 39 Appendix F: MC-4 Input Ids 40 Application Notes and Examples 40
6.4 Box initializations 40
6.4.1 MC-4 40
6.4.2 HOST 40
6.5 Simple System Control & System Status 40
6.6 Examples: 40
6.6.1 MC-4 Get Unit Configuration 41
6.6.2 Send MC-4 IR Command Example 42
MC-4 V1.00 Parameter Id List 43
4
Lexicon MC-4 Serial Communications Protocol
1 Documents
The following document should also be used with this document to understand how this protocol can be used with an MC-4.
070-16329 MC-4 User Guide

1.1 Change List

No changes at this time.

2 Definitions

User Parameter: A user changeable variable that stores a specific value that describes an
operating condition for the MC-4 system.
HOST: The device initiating or receiving the serial communication packets to/from the
MC-4.
MC-4: The Lexicon product receiving or transmitting the serial communication packets
to/from the HOST.
Nonvolatile RAM: The area of memory in a MC-4 that stores users adjustable parameters. The
Nonvolatile RAM is battery backed, to maintain values during MC-4 power down.

3 Abbreviations

SOP Start of Packet EOP End of Packet ACK Acknowledge NAK No Acknowledge FPD Front Panel Display

4 General Description

The intention of the MC-4 serial port and protocol communication is for an external connected HOST to control and obtain status from the MC-4. The protocol has been designed to focus on two specific goals. The first is HOST uploading and downloading of MC-4 configuration, and system/effect setups. The second is HOST control of basic user adjustable parameters.(i.e. input, volume, balance…)
HOST
The MC-4 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 MC-4. The MC-4 Protocol is a 3 layered system. The MC-4 serial protocol allows for the MC-4, or the HOST, to initiate a communication transaction. Most transactions are initiated by the HOST. MC-4 then responds to the HOST command with either a response or acknowledgment packet. There are a few asynchronous notifications that MC-4 initiates indicating
Rs-232 Serial
Lexicon MC-4
CD VOL
5
Lexicon MC-4 Serial Communications Protocol
system changes. Each transaction initiated must wait for a corresponding response before initiating the next transmission.
The 3 protocol layers are Physical, Data Link, and Application Layers.
Physical Layer (RS232)
Data Link Layer
Application Layer

4.1 Physical Layer

DB-9 RS232 Connector
MC-4 COM1
Transmit Data Receive Data
9 Pin D-Shell (female)
Note: The wiring requirements for a 9 pin to 9 pin serial connection are a male to female straight through cable.
Ground
2 3 5
2 3 5
9 Pin D-Shell (male)
9 Pin D-Shell (female)
Host
Receive Data
2
2
Transmit Data
3
3
Ground
5
5
9 Pin D-Shell (male)

4.2 Serial Port Driver

MC-4 serial port has been setup to operate as follows:
Operating Mode: Full Duplex Baud rate: 19.2K baud Data Size: 8 bits (1 byte) Parity: Odd Stop Bits: 1 Hardware Handshaking: None

4.3 Errors

The MC-4 will detect parity, framing, and data overrun errors. If any of the physical layer errors are detected, the complete packet is corrupted and the MC-4 will reset the transaction and begin to look for a start of packet byte.
6
Lexicon MC-4 Serial Communications Protocol
4.4 MC-4 Receive Buffer
The MC-4 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 MC-4 will be ignored. Therefore, making the currently transmitted packet, if partially transmitted invalid.
4.5 MC-4 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 MC-4 transmits a known test signal just following a power up. The MC-4 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 MC-4 labeled “RS232”. The wraparound plug shorts pins 2 to 3, allowing for the MC-4 to receive the signal it is transmitting. Once installed, power cycle the MC-4 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.

5 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 Number Description Value First Byte (0) Start of Packet (SOP) 0xF1 Byte (1) DLL Data Count nn
Application Header:
Byte (2) Command nn Byte (3) APP Data Count (number of application data bytes to
Follow)
Application Data:
Byte (4) Data [0] nn Byte (5) Data [1] nn … Data […] nn Last Data Byte -1 Data [Data Count -1] nn
Data Link Tail:
Last Byte End of Packet (EOP) 0xF2

5.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 MC-4 responds by transmitting a NAK packet with an error code DC_ERR_INVALID_PACKET. The MC-4 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.
nn
7
Lexicon MC-4 Serial Communications Protocol
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 MC-4 will respond by transmitting a NAK packet with an error code DC_ERR_INVALID_PACKET. The MC-4 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.

6 Application Layer

6.1 MC-4 Asynchronous Notification Packets
MC-4 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:

6.1.1 Wakeup Notification

By transmitting the Wakeup Notification, MC-4 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 MC-4.
6.1.1.1 Notification Packet Description
Application Header:
Command DC_WAKEUP 0x01 Data Count 0 0x00
Application Data:
N/A
6.1.1.2 Host Response
The MC-4 does not expect any response from the HOST.

6.1.2 Sleep Notification

By transmitting the Sleep Notification, MC-4 indicates the unit is shutting down into a standby mode. Because the hard power switch could be activated independently of the MC-4 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 MC-4.
6.1.2.1 Notification Packet Description
Application Header:
Command DC_SLEEP 0x02 Data Count 0 0x00
Application Data:
N/A
8
Lexicon MC-4 Serial Communications Protocol

6.1.3 Front Panel Display

MC-4 will transmit the front panel display buffer following the update to the MC-4 front panel display. The MC-4 front panel display is 2 X 20 ASCII character display. The HOST can enable transmission of this notification message by sending Host Wakeup ( send Host Sleep (
6.3.6 page 14). Transmission of the display buffer is asynchronous to other host/MC-4
6.3.5 page 13). To disable transmission the HOST can
communication and will only transmit following the completion of any communication exchanges in progress or pending.
6.1.3.1 Notification Packet Description
Application Header:
Command DC_FPD 0x03 Data Count 42 0x2A
Application Data:
Data[0] - Data[20] Line1 ch ch ch… 0x00 Data[21] - Data[41] Line2 ch ch ch … 0x00
6.1.3.2 Data Description
Line1
Data Type: Null (0x00) terminated ASCII character string. Max Length: DISP_LINE_LENGTH defined in the Protocol Constants table
Appendix D page 38).
(
Line2
Data Type: Null (0x00) terminated ASCII character string. Max Length: DISP_LINE_LENGTH defined in the Protocol Constants table
Appendix D page 38).
(
The MC-4 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
6.1.3.3 HOST Response
The MC-4 does not expect any response from the HOST.

6.1.4 MC-4 Parameter Notification by Id

MC-4 will transmit parameter change notifications if they are enabled using the command described in Set Parameter Notification by Id (
6.3.17 page 26). If a parameter value is changed due to any user action
or system action the MC-4 will transmit the current value of the parameter that is changing.
9
Lexicon MC-4 Serial Communications Protocol
6.1.4.1 Command Packet Description
Application Header:
Command MC_PARAM_NOTIFICATION_BY_ID 0x05
Data Count 24 0x18
Application Data:
Data[0] ParamId(LSB) nn
Data[1] ParamId(MSB) nn
Data[2] ParamType nn
Data[3-23] Value[0 -20]
6.1.4.2 Data Description
Same as Set Parameter Value by Id: Data Description (
6.1.4.3 HOST Response
The MC-4 does not expect any response from the HOST.
6.1.4.4 Defaults
The following Parameters Notifications are Enabled in the MC-4 default state:
Parameter MC-4 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 Bass PARAM.MAIN.BASS Treble PARAM.MAIN.TREBLE Loudness PARAM.MAIN.LOUDNESS Tilt PARAM.MAIN.TILT Menu Background On/Off PARAM.OSD.BACKGND
See the V1.00 Parameter ID List (
6.3.12.2 page 20).
page 43) for the Parameter ID definitions.
nn nn nn…

6.2 Acknowledgment Packets

Acknowledge and No Acknowledge packets are used to communicate transmission, packet and data validation status. Both the HOST and MC-4 can transmit and receive these packets.

6.2.1 Acknowledge

6.2.1.1 Packet Description
Application Header:
Command DC_ACK 0xE0 Data Count 1 0x01
Application Data:
Data[0] Command nn
10
Lexicon MC-4 Serial Communications Protocol
6.2.1.2 Data Description
Command:
DataType: Valid MC-4 command as defined in the Command Codes table
Appendix A page 34).
(

6.2.2 No Acknowledge

6.2.2.1 Packet Description
Appendix B page 35).
6.2.2.2 Data Description
Command:
DataType: Valid MC-4 command as defined in the Command Codes table
ErrorCode:
DataType: Error code as defined in the Error Codes table (
Application Header:
Command DC_NACK 0xE1 Data Count 2 0x02
Application Data:
Data[0] Command nn Data[1] ErrorCode nn
Appendix A page 34).
(

6.3 Host Initiated Command Packets

The MC-4 serial communication protocol has been designed to respond to the following commands as described below. Each command is transmitted to the MC-4 with the identified parameters. If the command is successfully received and processed by the MC-4, the unit will respond with the described response packet or action.

6.3.1 Reset Unit

Commands the MC-4 to soft reset.
6.3.1.1 Command Packet Description
Application Header:
Command DC_CMD_RESET 0x10 Data Count 0 0x00
Application Data:
N/A
6.3.1.2 MC-4 Response
11
Lexicon MC-4 Serial Communications Protocol
The MC-4 will perform an internal reset. After reset, the MC-4 will go through a soft power-up initialization. This includes transmitting the “Wakeup Notification Packet”. A soft reset does not reinitialize the MC-4. Nonvolatile RAM is maintained.

6.3.2 Restore Defaults

Commands the MC-4 to restore the system and effect parameters to the factory defaults.
6.3.2.1 Command Packet Description
Application Header:
Command DC_CMD_RESTORE_DEFAULTS 0x13 Data Count 0 0x00
Application Data:
N/A
6.3.2.2 MC-4 Response
The MC-4 will reset, or clear, any saved system and effect parameters in Nonvolatile RAM, and restore the factory default system and effect parameters. After reset, the MC-4 will go through a soft power-up initialization. This includes transmitting the “Wakeup Notification Packet”.

6.3.3 Get Custom Name

Request to MC-4 for an effect definition. MC-4 will respond with “Custom Name Packet”.
6.3.3.1 Command Packet Description
Application Header:
Command DC_CMD_GET_CUST_NAME 0x2B Data Count 0 0x00
Application Data:
N/A
6.3.3.2 Data Description
N/A
6.3.3.3 Custom Name Response Packet
Application Header:
Command DC_RESP_CUST_NAME 0x89 Data Count
Application Data:
Data[0]- Data[DataCount-1] CustomName ch ch ch … 0x00
6.3.3.4 Data Description
CustomName:
Data Type: Null (0x00) terminated ASCII character string.
Max Length: CUSTOM_NAME_LENGTH as defined in the Protocol Constants table
Appendix D page 38).
(
Number of Characters in CustomName + 1
nn

6.3.4 Set Custom Name

Sets the Custom Name that can be displayed when the unit powers up.
12
Lexicon MC-4 Serial Communications Protocol
6.3.4.1 Packet Description
Application Header:
Command DC_CMD_SET_CUST_NAME 0x2C Data Count
Application Data:
Number of characters in CustomName + 2
nn
Data[0] CustomNameEnable nn Data[1]-Data[DataCount-1] CustomName ch ch ch … 0x00
6.3.4.2 Data Description
CustomNameEnable: Enables/Disables the Custom Name Display.
DataType: Boolean
TRUE: CustomName Enabled
FALSE: CustomName Disabled
CustomName:
Data Type: Null (0x00) terminated ASCII character string.
Max Length: CUSTOM_NAME_LENGTH as defined in the Protocol Constants table
Appendix D page 38).
(
6.3.4.3 MC-4 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 MC-4 will ACK when completed with this command.
6.3.4.4 Data Validation:
No data validation is done on the transmitted data.

6.3.5 Host Wakeup

By transmitting the Wakeup Notification, the Host indicates it has just “powered on” or reset and is ready to receive MC-4 Notifications or Responses. The Host is assumed to be asleep upon power up of the MC-4. Host status is maintained during standby.
6.3.5.1 Command Packet Description
Application Header:
Command HOST_WAKEUP 0x11 Data Count 0 0x00
Application Data:
N/A
6.3.5.2 Data Description
N/A
6.3.5.3 MC-4 Response
The MC-4 will respond to this command with an ACK.
13
Lexicon MC-4 Serial Communications Protocol

6.3.6 Host Sleep

By transmitting the Sleep command, the Host indicates it has just “powered down” and will no longer respond to MC-4 Notifications. No Acknowledgment is expected. The Host is assumed to be asleep upon power up of the MC-4. Host status is maintained during standby.
6.3.6.1 Packet Description
Application Header:
Command HOST_SLEEP 0x12 Data Count 0 0x00
Application Data:
N/A
6.3.6.2 Data Description
N/A

6.3.7 Get Communication Configuration

This command is a request to the MC-4 for the current communications configuration for the serial port and protocol. The MC-4 responds to this command with a Communication Configuration Packet.
6.3.7.1 Command Packet Description
Application Header:
Command DC_CMD_GET_COM_CONFIG 0x2F Data Count 0 0x00
Application Data:
N/A
6.3.7.2 Communication Configuration Response Packet
Application Header:
Command DC_RESP_COM_CONFIG 0x8C Data Count 1 0x01
Application Data:
Data[0] Configuration Register 0 nn
6.3.7.3 Data Description
Data Word Bit Definition 0 0 Acknowledge Enable 0 1 Parameter Change Enable
Acknowledge Enable:
TRUE Indicates the MC-4 will transmit Acknowledge Notification’s to the Host.
FALSE Indicates the MC-4 will not transmit any positive Acknowledge
Notification messages. The MC-4 will always transmit NAK error notification messages.
Parameter Change Enable:
TRUE Indicates the MC-4 will transmit any parameter change Notification as
specified in the Parameter Change Notification Message.
14
Lexicon MC-4 Serial Communications Protocol
FALSE Indicates the MC-4 will not transmit parameter change Notifications.

6.3.8 Set Communication Configuration

The Set Communication Configuration Command allows the serial port user to set up the various serial port/ protocol configuration parameters.
6.3.8.1 Command Packet Description
Application Header:
Command DC_CMD_SET_COM_CONFIG 0x30 Data Count 1 0x01
Application Data:
Data[0] Configuration Register 0 nn
6.3.8.2 Data Description
Data Word Bit Definition 0 0 Acknowledge Enable 0 1 Parameter Change Enable
Acknowledge Enable:
TRUE Indicates the MC-4 will transmit Acknowledge Notification to the Host.
FALSE Indicates the MC-4 will not transmit any positive Acknowledge
Notification messages. The MC-4 will always transmit NAK error notification messages.
Parameter Change Enable:
TRUE Indicates the MC-4 will transmit any parameter change Notification as
specified in the Parameter Change Notification Message.
FALSE Indicates the MC-4 will not transmit parameter change Notifications.
6.3.8.3 MC-4 Response
The data values transmitted will be copied over to the registers stored in nonvolatile RAM. The MC-4 will respond with an ACK Packet.

6.3.9 Set Mute

The Set Mute Command message allows the RS232 users to set/clear the MC-4 mute state directly.
6.3.9.1 Command Packet Description
Application Header:
Command DC_CMD_SET_MUTE 0x31 Data Count 1 0x01
Application Data:
Data[0] Mute State nn
15
Lexicon MC-4 Serial Communications Protocol
6.3.9.2 Data Description
MUTE State:
Value Definition Description
0 UNMUTE 1 USER MUTE
The user mute state is set to unmuted. The MC-4 may still be muted for other internal reasons. The system volume decrements by the specified user amount as set in the OUTPUT LEVELS Menu.
2 FULL MUTE The system is fully muted.
6.3.9.3 MC-4 Response
The MC-4 will set the mute state according to the value transmitted. The MC-4 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.
6.3.9.4 Data Validation
The data value transmitted to the MC-4 will be verified as a valid value. If it is valid, the MC-4 will set/clear the mute and respond with an ACK Packet. If the data value is invalid, the MC-4 will respond with a DC_INVALID_DATA error NAK.

6.3.10 Send Display String Command

This command allows the Host to send a 40 character string to the MC-4 for display on the OSD and Front Panel Display (FPD).
6.3.10.1 Packet Description
Application Header:
Command Data Count
Application Data:
DC_CMD_SET_DISPLAY_ST R Number of characters in the DisplayStr + 2
0x33 nn
Data[0] DisplayFlags nn Data[1]-Data[DataCount-1] DisplayStr ch ch ch … 0x00
6.3.10.2 Data Description
Display Command Flags:
Word Bit Definition
0 0
FPD only: If set TRUE, the display string will only be sent to the FPD device for display.
0 1 Undefined. 0 2 Undefined. 0 3 Undefined. 0 4 Undefined. 0 5 Undefined. 0 6 Undefined. 0 7 Undefined.
16
Lexicon MC-4 Serial Communications Protocol
Display String:
Data Type: Null (0x00) terminated ASCII character string.
Max Length: 40 Characters.
6.3.10.3 MC-4 Response
The display string is sent to the OSD and Front Panel Display. The MC-4 will ACK when completed with this command.
6.3.10.4 Data Validation:
If a string length exceeds the 40 character maximum, the string will be truncated before displaying and the MC-4 will transmit a DC_NAK command with an error code DC_INVALID_DATA.

6.3.11 MC-4 Get Parameter Definition by Id

Request to MC-4 for a Parameter Definition by Parameter Id. MC-4 will respond with “MC-4 Parameter Definition Packet”.
6.3.11.1 Command Packet Description
Application Header:
Command MC_GET_PARAM_BY_ID 0x35 Data Count 2 0x02
Application Data:
Data[0] ParamId(LSB) nn Data[1] ParamId(MSB) nn
6.3.11.2 Data Description
ParamId:
Data Type: Unsigned 16 bit Integer
Max Value: Max Parameter Count as reported by the MC-4 Unit Configuration
6.3.11.3 Data Validation:
If the ParamId is not a valid Id, the MC-4 will respond with a NAK packet and error code DC_ INVALID_PARAM_ID.
Response Packet (
6.3.14.2 page 22).
17
Lexicon MC-4 Serial Communications Protocol
6.3.11.4 Parameter Definition Response Packet
The following Packet has been defined as follows for the MC-4 V1.00. Future releases may modify this definition.
Application Header:
Command MC_SYS_PARAM_DEF_PKT 0x8F Data Count 110 0x6E
Application Data:
Data[0] ParamId(LSB) nn Data[1] ParamId(MSB) nn Data[2] ParamType nn Data[3] MAX Value(LSB) nn Data[4] MAX Value(MSB) nn Data[5] MIN Value(LSB) nn Data[6] MIN Value(MSB) nn Data[7-27] CurrentValue[0 -20] nn nn nn… Data[28]-Data[108] Parameter Path ch ch ch … 0x00 Data[108] Read Only nn
6.3.11.5 Data Description
ParamId:
Data Type: Unsigned 16 bit Integer
Max Value: Max Parameter Count as reported by the MC-4 Unit Configuration
Response Packet (
6.3.14.2 page 22).
ParamType:
Data
Size
(Bytes)
Param Type Name
Param
Type ID
Type Description
PARAM_TYPE_UINT8 0 Unsigned 8 bit integer (0 to 255) 1 PARAM_TYPE_UINT16 1 Unsigned 16 bit integer (0 to 65535) 2 PARAM_TYPE_CSTR8 2 Zero terminated string of 8 ASCII characters 9 PARAM_TYPE_CSTR13 3 Zero terminated string of 13 ASCII characters 14 PARAM_TYPE_UINT32 4 Unsigned 32 bit integer (0 to 4,294,967,295 ) 4 PARAM_TYPE_BOOLEAN 5 Boolean( 0 to 1) 1 PARAM_TYPE_INT8 6 Signed 8 bit integer (-127 to 128) 1 PARAM_TYPE_BRANCH 7 Parameter Branch N/A PARAM_TYPE_INT16 8 Signed 16 bit integer (-32,767 to 32,768) 2 PARAM_TYPE_CSTR20 9 Zero terminated string of 20 ASCII characters 21
Data:
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:
18
Lexicon MC-4 Serial Communications Protocol
Data[0] = 0xd4 Data[1] = 0xfe Data[2 - 13] = don't care.
If a parameter's current value is a signed 16 bit parameter with a value of –3, the data
array would be packed as follows:
Data[0] = 0xfd Data[1] = 0xff Data[2 - 13] = don't care.
All signed values are in the 2's compliment format.
Max Value:
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.
Min Value:
This is a 16 bit value representing the minimum value for a parameter. Parameter values
less than 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

6.3.12 MC-4 Set Parameter Value by Id

MC-4 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.
6.3.12.1 Command Packet Description
Application Header:
Command MC_CMD_SET_SYS_PARAM_VALUE_BY_ID 0x36 Data
Count
Application Data:
24 0x18
Data[0] ParamId(LSB) nn Data[1] ParamId(MSB) nn Data[2] ParamType nn Data[3-23] Value[0 -20] nn nn nn…
19
Lexicon MC-4 Serial Communications Protocol
6.3.12.2 Data Description
ParamId:
Data Type: Unsigned 16 bit Integer
Max Value: Max Parameter Count as reported by the MC-4 Unit Configuration
Response Packet (
6.3.14.2 page 22).
ParamType:
Data
Size
(Bytes)
Param Type Name
Param
Type ID
Type Description
PARAM_TYPE_UINT8 0 Unsigned 8 bit integer(0 to 255) 1 PARAM_TYPE_UINT16 1 Unsigned 8 bit integer(0 to 65535) 2 PARAM_TYPE_CSTR8 2 Zero terminated string of 8 ASCII characters 9 PARAM_TYPE_CSTR13 3 Zero terminated string of 13 ASCII characters 14 PARAM_TYPE_UINT32 4 Unsigned 32 bit integer (0 to 4,294,967,295 ) 4 PARAM_TYPE_BOOLEAN 5 Boolean (0 to 1) 1 PARAM_TYPE_INT8 6 Signed 8 bit integer (-127 to 128) 1 PARAM_TYPE_BRANCH 7 Parameter Branch N/A PARAM_TYPE_INT16 8 Signed 16 bit integer (-32,767 to 32,768) 2 PARAM_TYPE_CSTR20 9 Zero terminated string of 20 ASCII characters 21
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:
Value[0] = 0xd4
Value[1] = 0xfe Value[2 - 13] = don't care.
All signed values are in the 2's compliment format.
6.3.12.3 Data Validation:
The ParamId must be a valid Parameter. The ParamType must be valid for the given ParamId. If either of these conditions is not true the MC-4 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 given 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 MC-4 will transmit a NAK packet with a DC_INVALID_INPUT error code. The MC-4 will transmit a NAK packet with a DC_ERR_READ_ONLY error code for read only parameters.
20
Loading...
+ 46 hidden pages