UDS (ISO 14229) stands for Unified Diagnostic Service, a name that signifies the unification of different diagnostics standards, viz. KWP 2000, ISO 15765 and a few others. Naturally, UDS specifies a whole list of diagnostic services, PIDs and DTCs required for vehicle diagnostics. These sub-components of the UDS protocol are configured based on the system specification and functionality of the diagnostic applications.
Hence, it goes without saying that the UDS software must be verified after the configuration. After all, it has a critical task at hand – which is the continuous monitoring of the vehicle ECU’s health.
The testing of diagnostic software implementation in vehicle ECU is quite a task, as this requires enormous time and effort, if performed manually. Imagine creating test cases for every UDS service as per the diagnostic description and executing them manually!
Standardization in the automotive ecosystem along with the support of automation tools come to our rescue in such scenarios.
Let’s understand how.
Initially, diagnostic descriptions were provided by OEMs in formats such as Excel or PDF. The automotive engineers used to create test cases manually based on these descriptions.
Fast forward to the era of ODX and CDD standards, the ECU description files are created in a standardized format that is not unique to any OEM. This is the first step of test automation in vehicle diagnostic implementation.
The second step in this process is performed by the test automation tool that takes ODX file as input and executes the test automatically. One such test automation tool commonly used in vehicle diagnostic testing is CANoeDiva from Vector. It is one among the most preferred diagnostic tools deployed by automotive engineers.
In this blog, we will learn more about vehicle diagnostic implementation testing and how Canoe Diva aids the process.
Understanding the Process of Automated Vehicle Diagnostic Testing
Automated testing in the context of vehicle diagnostics implementation begins with generation of test cases and concludes at test report creation. The processes occurring in between are automated with the help of tools such as Vector’s Canoe Diva. While learning about the process of test automation, we will also cover the role of this tool. Let’s start with the steps involved in the process:
- Test Case Generation: The first step in the test automation process is the generation of test cases from the diagnostic description in CDD or ODX format. Diagnostic descriptions are the lists of diagnostic services that need to be configured in the application. For instance, in a UDS implementation, the following list of services might be configured in a diagnostic application.
For the sake of standardization across different stakeholders in a project, an ODX or a CDD file will be generated with these services. The configurator feature of Canoe Diva tool takes the ODX/CDD file as input and creates the desired test contents. With the help of a user interface, the testing team can configure the test cases. They can also exclude services from test, modify request parameters and so on. Once the configuration is done, the generator tool creates a test module (test cases) with test specification. The test cases are created such that each of the services and related PIDs are evaluated. - Test Execution: Once the test module along with the test specification is prepared, the role of CANoe takes center stage. CANoe is a tool that simulates the ECU network communication. The test module that we prepared with the help of Canoe Diva tool is now loaded on to CANoe in an existing network configuration.
After loading the test cases, the automated test execution can be started with one click. - Test Report Generation and Analysis:
Test reports are generated once the test is over. A detailed result sorted according to different criteria can be retrieved with ease. For instance, a failed category of test results can be analyzed to understand the cause of the failure. Similarly, the warnings, partially passed tests etc. can be analyzed as well for better understanding of the test reports. The error types can be classified under various categories and comments can be added as well.
Specifics of Vehicle Diagnostic Testing & Role of Canoe Diva
The test performed on diagnostic software in vehicle ECU verified both the protocol as well as the diagnostic application. From the protocol format to execution of services and data types, various levels of validations are performed.
Canoe Diva supports the following tests and various other functions during diagnostic test execution:
- Protocol Validation: As clear from the name, this test is to validate various aspects of the diagnostic protocol such as physical/functional addressing or request processing (both valid and invalid). Value limits and data type are also validated as per the diagnostic specifications.
- Diagnostic Parameters: Each diagnostic service has certain parameters. At this level of testing, the parameters are compared to expected values, I/O and network signals. The fault memory and the error detection & reporting capabilities of the ECU are also tested. The test is passed only when the error reporting is proven to be according to the protocol and specifications.
- Software Download: Since flash bootloader is part of almost every ECU, it also needs to be validated in conjunction with the diagnostic software. CANoeDiva works with Vflash, a tool from Vector to configure the flash bootloader, to generate test cases for bootloaders. Some examples of these tests include ECU flashing at instances pertaining to under/over voltage or testing of scenarios when ECU flashing must be aborted.
- Requirement Mapping: Requirement traceability is a must when you are developing automotive software as it assures that you are building the right product. Canoe Diva tool understands the importance of traceability and hence, supports requirement mapping.
Conclusion
Automotive ECUs have become quite complex with a gamut of interfaces and I/O signals. When one tests a diagnostic software, all the interfaces and signals must be covered and validated.
Test automation makes much sense here, as manual testing would be substantially time-consuming and will also impact the cost.
Tools like Canoe Diva not only automate the vehicle diagnostic testing but also make it fully standardized. Canoe Diva being an OEM-agnostic tool, can be used across the automotive industry and yet, it allows OEM-specific diagnostic configurations. The tool also supports a range of diagnostic protocols such as UDS, ISO 15765 (DoCAN), KWP, J1979, WWH-OBD, KWP and more.