1、 ANSI/CTA Standard Serial Communication Protocol for Portable Electronic Devices ANSI/CTA-2017.1 R-2013 (Formerly ANSI/CEA-2017.1 R-2013) November 2007 NOTICE Consumer Technology Association (CTA) Standards, Bulletins and other technical publications are designed to serve the public interest through
2、 eliminating misunderstandings between manufacturers and purchasers, facilitating interchangeability and improvement of products, and assisting the purchaser in selecting and obtaining with minimum delay the proper product for his particular need. Existence of such Standards, Bulletins and other tec
3、hnical publications shall not in any respect preclude any member or nonmember of the Consumer Technology Association from manufacturing or selling products not conforming to such Standards, Bulletins or other technical publications, nor shall the existence of such Standards, Bulletins and other tech
4、nical publications preclude their voluntary use by those other than Consumer Technology Association members, whether the standard is to be used either domestically or internationally. Standards, Bulletins and other technical publications are adopted by the Consumer Technology Association in accordan
5、ce with the American National Standards Institute (ANSI) patent policy. By such action, the Consumer Technology Association does not assume any liability to any patent owner, nor does it assume any obligation whatever to parties adopting the Standard, Bulletin or other technical publication. This do
6、cument does not purport to address all safety problems associated with its use or all applicable regulatory requirements. It is the responsibility of the user of this document to establish appropriate safety and health practices and to determine the applicability of regulatory limitations before its
7、 use. This document is copyrighted by the Consumer Technology Association and may not be reproduced, in whole or part, without written permission. Federal copyright law prohibits unauthorized reproduction of this document by any means. Organizations may obtain permission to reproduce a limited numbe
8、r of copies by entering into a license agreement. Requests to reproduce text, data, charts, figures or other material should be made to the Consumer Technology Association. (Formulated under the cognizance of the CTA R6 Portable, Handheld and In-Vehicle Electronics Committee.) Published by CONSUMER
9、TECHNOLOGY ASSOCIATION 2015 Technology Phone: +1 503 296 9892; Internet: www.usb.org CEA-2017.1 2 2.2 Definitions CEA-2017 Device A CEA-2017 device is a physical unit that can be connected to another CEA-2017 device through the physical interface defined in CEA-2017, Common Interconnection for Porta
10、ble Media Players. Function Block A group of functions for a CEA-2017 device. A single CEA-2017 device may have multiple components and therefore multiple function blocks. For example, a typical portable media player might have a function block for an auxiliary component, and a function block for an
11、 audio amplifier. Function A component of a function block. For example, a portable media player function block might contain the functions DeviceStatus, and DeviceBrowsing. Host Device A device to which a portable electronic device may be connected for the purposes of controlling the portable elect
12、ronic device and/or displaying or playing content from the portable electronic device. Portable Electronic Device An electronic device that may be carried around by its user. It may record and/or play back audio and/or video, and may also receive and send other data. MOST Device A MOST device is a p
13、hysical unit, which can be connected to a MOST network via a MOST network interface controller. MOST Specifications The collective group of MOST specifications, including the MOST Specification, the MOST Specification of Physical Layer, the MOST Function Catalog, the MOST FunctionBlock AuxIn, the MO
14、ST Specification Framework, the MOST Medium Access Control Mechanism Specification, the MOST High Protocol Specifications, the MOST Content Protection Scheme DTCP Implementation, and the MOST Content Security Specification. CEA-2017.1 3 2.3 Symbols and Abbreviations CEA Consumer Electronics Associat
15、ion MOST Media Oriented Systems Transport Host Device HDEV Portable Electronic Device PEDEV Human Machine Interface HMI Identifier ID Function Block FBlock Function Block ID FBlockID Function ID FktID Operation Type OPType Second s Millisecond ms CEA-2017.1 4 2.4 Compliance Notation As used in this
16、document “shall” and “must” denote mandatory provisions of this standard. “Should” denotes a provision that is recommended but not mandatory. “May” denotes a feature whose presence does not preclude compliance, and implementation of which is optional. “Optional” denotes items that may or may not be
17、present in a compliant device. 3 Description of Serial Protocol A CEA-2017 device is a physical unit that can be connected to another CEA-2017 device through the physical interface defined in CEA-2017. The serial physical interface defined in CEA-2017 is the serial RX and TX lines of a CEA-2017 devi
18、ce. The serial protocol is intended to be used within the framework of the serial physical interface (the RX and TX serial data signals) defined in CEA-2017. A CEA-2017 device communicating over the CEA-2017 defined serial link transmits or receives data over this physical interface in the format de
19、scribed in CEA-2017, which is as follows. The serial data signal shall have the following characteristics: 1. Four baud rates (9600, 19,200, 57,600 and 115,200 bps) 2. 8 data bits, no parity, one stop bit 3. PEDEV shall auto detect the baud rate based on a synchronization byte (AB hex) sent from the
20、 HDEV 4. No flow control 5. When the PEDEV recognizes the baud rate it shall respond at the same baud rate with an acknowledgement (54 hex, which is the complement of the AB hex synchronization byte) 6. During synchronization the HDEV must send the synchronization byte ABh until it gets an acknowled
21、gement byte 54h from the PEDEV or tSync time has elapsed. There is no concept of a control channel, streaming data channel, or packet data channel in the serial protocol. The CEA-2017 serial link is not intended for data streaming which needs high bandwidth, and does not support multimedia data tran
22、sfer, such as audio or video files. The CEA-2017 serial link is intended for command and control of a PEDEV which requires low bandwidth and short packet length commands. It may also support transport of small graphics art, such as logos, and album art, or small picture formats from the PEDEV. 3.1 S
23、erial Protocol Framework The frame work that a CEA-2017 device communicating over the CEA-2017 defined serial link is as follows: CEA-2017.1 5 C E A - 2 0 1 7 D E V I C E C E A - 2 0 1 7 D E V I C EC E A - 2 0 1 7 D E V I C E C E A - 2 0 1 7 D E V I C EC E A - 2 0 1 7 S E R I A L R X / T XS e r i a
24、l T r a n s l a t i o nC U S T O MC E A - 2 0 1 7 . 1F U N C B L O C K( N E T B L O C K )C E A - 2 0 1 7 . 1F U N C B L O C KA P P L I C A T I O N 1C E A - 2 0 1 7 . 1F U N C B L O C KA P P L I C A T I O N 2( L o g i c a lI n t e r f a c e )P h y s i c a lI n t e r f a c eH M I ( o p t i o n a l )Fi
25、gure 1: Framework of CEA-2017 Device The highest part of the frame work may be a HMI. The HMI is completely a custom architecture whos layering and structure will not depend on this serial protocols standard. The HMI allows a user interface which initiates the serial protocol. The next layer is the
26、serial protocols standard function blocks. The serial protocol functions for a PEDEV/HDEV are grouped together in function blocks. In addition to the function blocks which represent applications, each serial protocol implementation must have a special function block called the NetBlock. The NetBlock
27、 provides functions related to the entire device. Interaction with a function block requires two partners which are referred to as the “PEDEV” and the “HDEV”. The command operational types of the function reside in the HDEV and the report operational types of the function reside in the PEDEV. The HD
28、EV sends commands to a PEDEV and in return receives reports or status from the PEDEV. A PEDEV must be associated with only one HDEV, and vice versa. The serial protocol defined in this standard only supports point to point communication typically between a HDEV and PEDEV. 3.2 Serial Protocol Logical
29、 Structure This section gives a description of the logical structure of the serial protocol. In order to distinguish between the different function blocks and functions of a PEDEV or HDEV, each function and function block has an identifier. FBlockID.FktID CEA-2017.1 6 3.2.1 Function Blocks FBlockID
30、identifies a function block. A function block is a group of functions for a device. A single device may have multiple components and therefore multiple function blocks. FBlockID consists of 8 bits, and has a limit of 255 maximum number of function blocks. 3.2.2 Functions FktID identifies a specific
31、function within a device that can be called via the serial protocol. FktID consists of 12 bits, but each function block has a limit of 508 maximum number of functions. The range of FktIDs is subdivided into groups that have specific purposes. The subdivision of FktIDs is as follows: General Function
32、s (000h9FFh) o General functions in an function block Player Specific Proprietary Functions (A00hFFEh) o Proprietary functions that the portable electronic device manufacturer may use Accessory Specific Proprietary Functions (A00hFFEh) o Proprietary functions that the portable electronic device acce
33、ssory manufacturer may use Proprietary/Supplier Specific (F00hFFEh) o Functions that may be used by suppliers for any proprietary purpose. Supplier specific functions are not reported in FBlockID.FktIDs.Status. If a supplier specific property supports notification, notification of this property is n
34、ot affected by the FBlockID.Notification.Set (SetAll) command. If a supplier specific property supports notification, notification of this property is cleared by the FBlockID.Notification.Set (ClearAll) command. 3.2.3 Function Operations When accessing functions, certain operations are applied to th
35、e respective function which is either a property of the function block or a method it provides. The type of operation is specified by the OPType. The parameters of the operation follow the OPType, resulting in the following structure: FBlockID.FktID.OPType(Data) OPType identifies the operation that
36、shall be applied to the property or method specified in the FktID. A property is a segment of computer code that may be used to read and write data, and is frequently used to set or get method calls. A method is a segment of computer code that performs an action, and may include a set of input param
37、eters that customizes the action and an output value. The meaning of the OPType value is different depending on whether FktID is a property or a method. OPType consists of 4 bits, so each function may have up to 16 OPType values. The possible meanings for the various OPType values are listed in Tabl
38、e 1. CEA-2017.1 7 Table 1: OPTypes for Properties and Methods OPType For Properties For Methods Commands: 0 Set Start 1 Get Abort 2 SetGet StartResult 3 Increment Reserved 4 Decrement Reserved 5 GetInterface GetInterface 6 Not allowed StartResultAck 7 Not allowed AbortAck 8 Not allowed StartAck Repo
39、rts: 9 Reserved ErrorAck A Not allowed ProcessingAck B Reserved Processing C Status Result D Not allowed ResultAck E Interface Interface F Error Error 3.2.3.1 Function Types A function is a defined attribute of a function block through which it communicates with the external world. Functions are sub
40、divided into three classes, “methods”, “properties”, and “events”. 3.2.3.2 Method Function Type Functions that can be started and which lead to a result after a certain period of time, are called “methods”. Methods can be used to control function blocks. In general, a method is triggered only once a
41、t a certain point of time, for example, starting the auto-scanning of a tuner. Methods can be defined without parameters or with certain parameters that specify their behavior. After the reception of a method called by a function block, the respective process must be started. If this is not possible
42、, the function block has to return the respective error message to the sender of the method call. This may happen if the addressed function block has no method of that kind, if a wrong parameter was found, or if the current status of the function block prevents execution of the method. After finishi
43、ng the process, the controlled function block should report execution to the HDEV. This report may contain results of the process. If a process runs for a long time, it may be useful to return intermediate results before finishing, such as informing the HDEV about the successful start of the process
44、. 3.2.3.3 Property Function Type Functions for determining or changing the status of a device, which refer to the current properties of a device are called “properties”. CEA-2017.1 8 Properties can be read (e.g., device name), written (e.g., device state), or read and written (e.g., current track).
45、For each property the allowed operations are specified. Within a function block, a property is normally represented by a variable that represents something such as a limit or a status. 3.2.3.4 Event Function Type Functions for notifying that an event has occurred are called “events” or “notification
46、s”. 3.2.4 Data Transport Data may be transported between the two devices. The length of the data field is specified by Length. The data of the operation follows the Length, resulting in the following structure: FBlockID.FktID.OPType.Length(Data) Length specifies the length of the data field in bytes
47、. It is encoded in 16 bits. Length = 0x0000 Data field of length 0 Length = 0x0001 Data field of length 1 byte Length = 0x03F9 Data field of length 1017 bytes 3.2.4.1 Data Transport Packet Format Sync o 1 Byte o HDEV = ABh o PEDEV = 54h FBlockID o 1 Byte FktID/OPType o 2 Bytes (FktID = 12 most signi
48、ficant bits, OPType = 4 least significant bits) Length o 2 Bytes Data o 0 to 1017 Bytes Checksum o 1 Byte 3.2.4.2 Data Transport Packet Checksum Computation 1. Add all bytes together excluding the synchronization byte 2. Drop all high bits leaving only the lowest 8 bits 3. Get the twos complement of
49、 the lowest 8 bits Step 3 provides the checksum byte. 3.2.5 Data Types In a data transmission on the serial link, the maximum data field length is 1017 bytes. CEA-2017.1 9 Within a data field, none, one, or multiple parameters in any combination of the following data types can be transported. They are transported MSB first. The sign is encoded in the most significant bit and 2s complement coding is used for signed values. There are the following basic data types: Boolean o 1 byte o Only one bit of the byte can be used Unsigned Byte o 1 byte