Xcp Protocol Commands


The commands used for the Data AcquisitionDAQ configuration are as follows: To request (read) data from the SUT with CCP/XCP, the signal must be defined in the A2L file. Depending on the commands supported by the system, the configuration signal allows 3 different types of data streams: DAQ, Poll and ShortPoll, which are used in the background to request data from the ECU/SUT. The XCP protocol is a universal network protocol based on calibration and measurement of ASAM to connect calibration systems to the ECU. In general, it is used in motor vehicles for execution automation testing. In the case of UDS or keyword, it is not possible to read or write calibration parameters at run time. Since the flash in the ECU usually prevents reads or writes, this is not good to use. To avoid this, the MCQ has developed a new standard that allows this to be done in a simple read-write operation. As a two-layer protocol, XCP systematically separates the protocol and transport layers from each other and follows a single-master/multi-slave concept. XCP always uses the same protocol layer, regardless of the transport layer. The “X” in its name represents the variable and interchangeable transport layer.

Currently, as of October 2016, the following transport layers are defined as the standard by ASAM:[2] As a result, the protocol and transport layer specifications have been completely extended with the advanced time correlation technique. As a central enhancement, a universal measurement and calibration protocol (ASAM standard)XCP Master is now able to get a detailed view of the clock system compared to an XCP slave of the universal measurement and calibration protocol (ASAM standard), i.e. the number of different clocks and their properties. In addition to three basic techniques, advanced time correlation provides all the necessary features to significantly improve time synchronization. In the XCP protocol, this is the default mode and is used when the physical layout of the flash memory is well known to the programming tool. The Flash content to be programmed must be present and the address information of the data must be known. Physical layout information can be read from the ECU or from the description file, depending on how this is done in the project. The data block contained in the Command Transfer Object (CTO) is programmed into the flash memory, starting with the Memory Transfer Address (MTA), which is increased by the number of bytes of data programmed into memory. The XCP standard provides seven commands that can be used specifically for programming: The communication mode of the XCP protocol is similar to that used in the UDS protocol. In this mode, multiple requests are sent simultaneously as a data block, and the slave responds by returning a response block to the master.

Another way to improve the transmission speed is to use the interlaced communication mode, where the master does not wait for a response packet until it sends a new request. The number of requests that can be sent nested by the master depends on the size of the slave queue. The block transfer communication mode and the interlaced communication mode cannot be used in the same system. Only two types of CAN messages are required, CRO and DTO, one for each direction. Command Recieive Object (CRO) messages are sent from master to slave and contain control commands. Data Transmission Object (DTO) messages are sent from the slave to the master. When a slave has received a CRO message, it executes the given instructions and then responds with a DTO message that contains a CRM (Command Return Message). The CRM code tells the master whether the corresponding control command was executed as expected or not. In the static configuration of the XCP protocol, the slave already has a DAQ list structure with ODTs and ODTs have inputs. This configuration cannot be changed.

If there is only one DAQ list that has three ODTs and the ODTs have 5 entries each, then that is all the master has at his disposal. Entries can be changed, that is, the address and address extension that assigns them to the storage space can be changed. Many properties of the DAQ list can also be changed, just like in the case of the predefined list. A STEM configuration is configured with exactly the same commands as a DAQ data acquisition process of recording data from the ecu`s internal memory and external sensors. Next, we explain how the Universal Calibration Protocol (XCP) communicates, as well as the features and content of the XCP protocol. An XCP message consists of the three parts header, packet, and tail. The header and tail are part of the transport layer and consist of a control panel whose contents depend on the bus used. The packet part of an XCP protocol message consists of an identification field, a timestamp field (optional), and a data field, and is an integral part of the protocol layer. There are two different Flash access methods supported by the XCP protocol to use in the Flash process.

The absolute access mode and the functional access mode, both of which use the same commands but with different parameters. •Queue polling limit – By default, this value is set to 10, which means that more than 10 queued polling commands are ignored in favor of write commands. You can lower this limit if you want to further prioritize write commands. See Restrict requests for investigations. The use of the second technique requires the availability of an independent XCP (Universal Measurement and Calibration Protocol) (ASAM Standard) time synchronization technique, for example. The precision time protocol (PTP) as defined in the Institute of Electrical and Electronics EngineersIEEE 1588 A public specification developed by experts in a defined consensus-driven development process and published by officials representing a significant part of the industry for which it is intended, giving the specification the legitimacy to be called a “standard”. Standard (Institute of Electrical and Electronics EngineersIEEE Public specification developed by experts in a defined development process focused on consensus and published by officials representing a significant part of the industry for which it is intended, giving the specification the legitimacy to be called a “standard”. Standard for a Precision Clock Synchronization Protocol for Networked The Process of Data Acquisition of Internal ECU Memories and External Sensors.Measurement and Control Systems, February 2009). In this use case, it is assumed that the XCP slave clock of the Universal Measurement and Calibration Protocol (ASAM standard) is either synchronized[1] or tuned[2] synchronized with a GrandMaster clock.

In such a use case, the XCP master of the Universal Measurement and Calibration Protocol (ASAM) must first know that the timestamps sent by an XCP slave of the Universal Measurement and Calibration Protocol (ASAM) are synchronized with a main clock. Secondly, it is also necessary to obtain the information with which the grand master clock of the XCP Universal Measurement and Calibration Protocol (ASAM Standard) slave is synchronized/tuned in. This information is necessary to manage systems with more than one grandmaster watch. With the introduction of advanced time correlation technology, the XCP nodes of the Universal Measurement and Calibration Protocol (ASAM) are aware of the time synchronization performed by the established XCP standards of the Universal Measurement and Calibration Protocol (ASAM standard). Thanks to this communication method, after a measurement/calibration tool (= XCP master node) has been connected to the vehicle`s network, each ECU (= XCP slave node) is accessible as a measurement object via the XCP protocol. The XCP protocol provides an ECU unlock function like the UDS protocol. To ensure that access to the ECU is restricted to authorized persons, only a security mechanism called Seed & Key is part of the XCP specification. A unique slave key is required to grant access to a slave, and the master must ask the slave for a seed to calculate and access the key. The algorithm used to calculate the key is unknown to the master to ensure confidentiality.

The key algorithm is encapsulated in a file called SeedNKey. DLL that the master uses to calculate the key using the seed provided by the slave. The XCP protocol is widely used in the automotive industry to measure and calibrate electronic control units (ECUs) that make ECUs very correct for detecting and operating the vehicle on the road, so that no accident or human safety increases. Due to the broadcast characteristics of the command GET_DAQ_CLOCK_MULTICAST and the fact that the command must be understood as an event initiated by the XCP master of the Universal Measurement and Calibration Protocol (ASAM Standard), the processing of this command differs from conventional commands. instead of sending a positive response in return for the Universal Measurement and Calibration Protocol (ASAM Standard) command initiated by the XCP master, an XCP Universal Measurement and Calibration Protocol (ASAM Standard) slave that supports this feature responds to aGET_DAQ_CLOCK_MULTICAST command by providing information relevant to temporal correlation as part of an event packet EV_TIME_SYNC to its Universal Measurement and Calibration Protocol (ASAM) Calibration Protocol) Default) The XCP master sends.. .