The following software requirements are derived from ISO 22900-2 2022 (Diagnostic protocol data unit(D-PDU API)) and Adaptive AUTOSAR Diagnostic Specification 21-11
Diagnostic client library shall be used as a shared or static library. Diagnostic client library shall be easily linkable with any executable and shall be ready to use.
Diagnostic client library only provide support for DoIP(Diagnostic Over IP) as a diagnostic communication protocol for sending diagnostic request to Diagnostic Servers.
Diagnostic client library shall support creation of multiple diagnostic logical connection towards a single ECU or towards multiple ECUs. Each of these connection is known as Diagnostic Client Conversation.
Diagnostic client library shall support setting of diagnostic communication protocol parameter value via JSON file. In this case ComParam of DoIP protocol shall be configured via JSON file provided. A set of ComParams can be used to individually define communication to a single ECU or a functional group of ECUs.
Diagnostic client library shall provide an API to construct an instance of Diagnostic Client Library with specific settings(ComParam etc).
Diagnostic client library shall provide an API to destruct the already created instance of Diagnostic Client Library.
Diagnostic client library shall provide an API to initialize the library during start-up phase.
Diagnostic client library shall provide an API to de-initialize the library and stop all the internal processing during shutdown phase.
Diagnostic client library shall provide an API to send vehicle identification request to all the ECU within the network and receive vehicle identification response.
Diagnostic client library shall provide an API to construct the Diagnostic Client Conversation instance required for logical connection towards single or multiple ECUs.
Diagnostic client library shall provide an API to destruct the existing Diagnostic Client Conversation instance.
Diagnostic client library shall provide an API to start the Diagnostic Client Conversation instance.
Diagnostic client library shall provide an API to shut down the Diagnostic Client Conversation instance.
Diagnostic client library shall provide an API for establishing diagnostic logical connection towards single or multiple ECUs.
Diagnostic client library shall provide an API to disconnect the diagnostic logical connection towards single or multiple ECUs.
Diagnostic client library shall provide an API to send diagnostic request towards the connected ECU/ECUs and receive diagnostic response and provide back the diagnostic response to the user.