Diagnostics over Internet Protocol (DoIP) is used for performing vehicle diagnostics over an Ethernet. Diagnostics over IP makes ECU diagnostics faster and more reliable.

What is Diagnostics over Internet Protocol (DoIP)?

DoIP is a vehicle diagnostic communication protocol that packages diagnostic messages inside Ethernet network (IEEE 802.3) frames to communicate a diagnostic tester with a vehicle. It employs Ethernet-based communication to exchange information between the tester and ECUs (Electronics Control Units). It uses Ethernet 100 Base-TX as a Physical medium instead of CAN and enables substantially higher bandwidth.

A vehicle enabled with Diagnostics over Internet Protocol typically has one Gateway ECU (DoIP Edge Node) to transfer all diagnostic messages between a tester tool on an Ethernet network and other ECUs on other networks like CAN, LIN, CANFD, FlexRay, etc.

Vehicle Diagnostics using DoIP

What is the need of DoIP protocol?

DoIP was developed to address the increasing complexity of modern vehicles, which feature many ECUs responsible for various functions. Driving assistance features in ADAS and infotainment systems cause huge data volume, requiring higher bandwidth. The time taken for flash programming at the production line increases as the ECU software becomes more complex.

As vehicles become more advanced, traditional diagnostic protocols like OBD-II (On-Board Diagnostics II) and UDS (Unified Diagnostic Services) over CAN can need help handling high data rates and complex diagnostic tasks.

Diagnostics over IP provides a more efficient and faster way to access and diagnose vehicle systems. Ethernet allows for higher bandwidth as compared to CAN (1 MBps) network, which is crucial when dealing with large amounts of diagnostic data.

By using Diagnostics over IP, automotive engineers and technicians can perform diagnostics and flash software updates, and access vehicle data more quickly and accurately.

DoIP protocol at OSI reference model

DoIP is a standardized diagnostic communication transport protocol according to ISO 13400. It is combined with the UDS (ISO 14229-5: UDSonIP). Diagnostic over IP specifies Transport protocol and network layer services (13400-2) and data link layer (13400-3) on the OSI reference model.

It maintains backward compatibility with existing diagnostic protocols like UDSonCAN and OBD-II using discretionary pins of the existing diagnostic connector. The diagnostic services of UDSonIP are identical to UDSonCAN.

DoIP on OSI Network Layer

DoIP does not represent a diagnostic protocol according to ISO 13400 but rather an expanded transport protocol. It means that the diagnostic packets are transmitted as defined in the DoIP protocol, but the diagnostic services continue to be specified by the diagnostic protocols such as UDS (Unified Diagnostics Services).

What are the requirements for the DoIP protocol?

Diagnostics over Internet Protocol requires diagnostic communication to use IP (internet protocol) packets, TCP, and UDP protocols. TCP and UDP must be implemented in the diagnostic tester (laptop or PC running the diagnostic software) and in each ECU with DoIP diagnostic capability known as DoIP Node. These protocols must also be implemented in each diagnostic Gateway (DoIP Gateway or DoIP Edge Node).

A vehicle with Diagnostics over Internet Protocol typically has one diagnostic gateway (DoIP Edge Node) ECU to transfer all diagnostic messages between a Diagnostic Tester on Ethernet and other ECUs on other in-vehicle networks (like CAN, FlexRay).

Transmission Control Protocol (TCP)

TCP is one of the main protocols of the Internet protocol suite. It provides reliable delivery services. It is a connection-oriented communication protocol that helps exchange messages between different devices over a network.

TCP connection enables the transmission of actual diagnostic packets via a fixed communication channel to ensure that data transmission is highly reliable. It also allows the automatic segmentation of large data packets.

User Datagram Protocol (UDP)

UDP is a part of the Internet Protocol called UDP/IP. Unlike TCP, it is an unreliable and connection-less protocol. So, there is no need to establish a connection before data transfer. The UDP helps to establish low-latency and loss-tolerating connections over the network.

In Diagnostics over IP, UDP is used for the transmission of configuration information or status.

What is a Diagnostics Tester?

A diagnostic process is a request-response phenomenon. The tester is a device that can perform diagnostic functions on ECUs, such as completing tests, reading fault codes, updating software, etc. These testers can be external devices in a repair shop or any diagnostic software running on a laptop (ex., Vector’s CANoe).

This diagnostic tester sends the diagnostic requests. The ECU (DoIP Node) receiving these diagnostic requests must respond to the tester with an associated diagnostic response (positive or negative).

What is a Diagnostics Gateway (DoIP Gateway or DoIP Edge Node)?

A Gateway ECU in the automotive domain controls the inter-bus communications necessary to have a seamless data exchange between the vehicle’s different in-vehicle networks (like CAN, LIN, I2C, CANFD, Ethernet, FlexRay, etc.). It interprets messages from one bus to another.

In a vehicle, multiple ECUs can operate on different in-vehicle networks. A few ECUs might be working on CAN BUS and a few on the Ethernet network. DoIP allows diagnostic gateways so that a separate implementation is unnecessary for each ECU.

Therefore, all ECUs of a vehicle that are connected via different bus networks can be made available together. Tester requests are forwarded to the desired ECU, and as soon as a response from the ECU is available, the Gateway routes this information back to the tester.

How does a DoIP Gateway work?

DoIP Gateway requires below to forward diagnostic requests and responses back and forth:

  1. Logical address of the ECU to be diagnosed in the vehicle.
  2. The Gateway must know which messages on the respective bus system will be used to send requests and receive responses. 

DoIP protocol Diagnostic process/sequence

The tester and the ECU must perform a series of steps to establish a DoIP connection.

First, the diagnostic tester establishes a Link Connection with the vehicle by sending a request to Gateway containing the diagnostic packet, diagnostic service, and the logical address of the ECU to be diagnosed. It enables configuration of the Gateway with a valid IP address (DHCP). Ethernet Activation Line allows the Ethernet port of the Gateway ECU.

UDP connection

The tester broadcasts a Vehicle Identification Request (UDP), which the Gateway receives. Gateway responds with a Vehicle Announcement Message (UDP), which contains information like Vehicle Identification Number (VIN), Gateway address, Entity ID (EID), etc. It completes the information exchange over UDP.

TCP Connection

The tester now starts the TCP communication by sending a Routing Activation Request. Routing of data between the tester and the ECU is activated if the DoIP header is valid and the received logical address matches the configured logical address of the tester.

After the acknowledgment of the activation of routing, the logical address of the DoIP is also communicated to the tester via the Routing Activation Response.

Diagnostic data exchange

After all the acknowledgment and information exchanges, the actual communication of diagnostics information takes place. Now, the Tester, Gateway, and the concerned ECU have all the required information about each other. The Gateway then routes the requests to the ECU and sends back the responses to the tester. To ensure the ECU receives the diagnostic messages, it sends the acknowledgments back to the tester after each request.

DoIP Communication Sequence

During this process, the Gateway removes the diagnostic packet and packs it into a message that can be sent to sub-buses (CAN / FlexRay / MOST, etc.). For example, if the ECU to be diagnosed is on the CAN Bus, the Gateway sends a message with the associated CAN-ID (e.g., 0x604).

As soon as the response is received from the related bus (e.g., with CAN-ID 0x704), the Gateway returns the answer to the tester.

Advantages of DoIP protocol

  1. Higher Bandwidth: Ethernet provides higher bandwidth than traditional in-vehicle networks (like CAN). Therefore, ECU diagnostics become faster.
  2. Secure Diagnostics: It enables more advanced and secured vehicle diagnostics because Ethernet and IP provide a more efficient, scalable, and standardized approach to diagnostics.
  3. Flexible and Scalable: It also supports flexible and scalable network architecture.
  4. Remote Diagnostics: DoIP protocol enables remote diagnostics, allowing technicians to perform repairs and troubleshooting on the vehicle from anywhere. This capability saves time and reduces costs.
  5. Over-the-air (OTA) software updates: OEMs can deliver software updates without physical vehicle access.
  6. Fast ECU Flash Programming: ECU flashing becomes shorter due to its higher bandwidth.
  7. Simultaneous connection: DoIP protocol supports communication with many ECUs simultaneously.
  8. Standardized: ISO and SAE manage and standardize the specifications and requirements of Diagnostics over IP.
  9. Prevents unauthorized access: Diagnostics over Internet Protocol provides security features to prevent unauthorized control during the diagnostic process.

Conclusion

Overall, DoIP plays a crucial role in modern automotive vehicle diagnostics by providing a standardized and efficient means of communication between diagnostic tools and ECUs. It enhances diagnostic processes’ speed, reliability, and capabilities compared to older communication protocols.