Shopping Cart

No products in the cart.

BS ISO 22900-2:2009

$215.11

Road vehicles. Modular vehicle communication interface (MVCI) – Diagnostic protocol data unit application programming interface (D-PDU API)

Published By Publication Date Number of Pages
BSI 2009 338
Guaranteed Safe Checkout
Categories: ,

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

PDF Catalog

PDF Pages PDF Title
11 Scope
Normative references
12 Terms and definitions
Symbols and abbreviated terms
14 Specification release version information
Specification release version location
Specification release version
Modular VCI use cases
OEM merger
OEM cross vehicle platform ECU(s)
15 Central source diagnostic data and exchange during ECU devel
OEM franchised dealer and aftermarket service outlet diagnos
Modular VCI software architecture
Overview
16 Modular VCI D-Server software
17 Runtime format based on ODX
MVCI protocol module software
MVCI protocol module configurations
18 D-PDU API use cases
Overview
Use case 1: Single MVCI protocol module
19 Use case 2: Multiple MVCI protocol modules supported by same
20 Use case 3: Multiple MVCI protocol modules supported by diff
21 Diagnostic protocol data unit (D-PDU) API
Software requirements
General requirements
22 Vehicle protocol requirements
Timing requirements for protocol handler messages
24 Serialization requirements for protocol handler messages
25 Compatibility requirements
26 Timestamp requirements
General information
Timestamp for transmitted messages
Timestamp for received messages
Timestamp for events, errors and indications
Timestamp for start of message indication
27 API function overview and communication principles
Terms used within the D-PDU API
Resource
ComLogicalLink
ComPrimitive
ComParam
Function overview
29 General usage
31 Asynchronous and synchronous communication
General information
32 Event callback (asynchronous mode)
Polling (synchronous mode)
Usage of resource locking and resource unlocking
Usage of ComPrimitives
ComPrimitive overview
33 ComPrimitive send/receive cycle overview
General information
34 NumReceiveCycles description
NumSendCycles description
35 ComPrimitive principles
General information
Starting communication
37 Stopping communication
38 Send and receive handling
41 ComPrimitives in non-raw mode
ComPrimitives in raw mode (PassThru)
42 ComPrimitive sequence diagrams
Single request/single response (master/slave communication)
43 Single request/single response (master/slave communication)
Single request/multiple responses
45 Single request/multiple responses — Functional Addressing
46 Single or multiple requests/no responses
47 No request/single or multiple responses
Parallel execution of ComPrimitives
48 Cancelling a running ComPrimitive
Destruction of ComPrimitives
Tool integration
Requirement for generic configuration
Tool integrator – use case
50 API functions – interface description
Overview
PDUConstruct
Purpose
Behaviour
51 C/C++ prototype
Parameters
Example
Return values
PDUDestruct
Purpose
Behaviour
52 C/C++ prototype
Parameters
Return values
PDUIoCtl
Purpose
Behaviour
C/C++ prototype
53 Parameters
Examples
Return values
PDUGetVersion
Purpose
54 Behaviour
C/C++ prototype
Parameters
Return values
PDUGetStatus
Purpose
Behaviour
55 C/C++ prototype
Parameters
Return values
PDUGetLastError
Purpose
56 Behaviour
C/C++ prototype
Parameters
Return values
57 PDUGetResourceStatus
Purpose
Behaviour
C/C++ prototype
Parameters
Return values
58 PDUCreateComLogicalLink
Purpose
General
Unknown Resource Id Scheme
Specific Resource Id Scheme
Behaviour
59 Behaviour — Use Cases
C/C++ prototype
Parameters
60 Return values
PDUDestroyComLogicalLink
Purpose
Behaviour
61 C/C++ prototype
Parameters
Return values
PDUConnect
Purpose
62 Behaviour
C/C++ prototype
Parameters
Return values
63 PDUDisconnect
Purpose
Behaviour
C/C++ prototype
Parameters
Return values
64 PDULockResource
Purpose
Behaviour
Behaviour — Use Cases
C/C++ prototype
65 Parameters
Return values
PDUUnlockResource
Purpose
Behaviour
C/C++ prototype
Parameters
66 Return values
PDUGetComParam
Purpose
Behaviour
C/C++ prototype
67 Parameters
Return values
Example for ComParam Buffer Operation
69 Example for ComParam buffer operation for PDUConnect
Example for ComParam buffer operation using TempParamUpdate
70 Example for ComParam buffer operation using PDU_COPT_UPDATEP
71 Example for ComParam buffer attachment to a ComPrimitive
73 Additional example for ComPrimitive queuing
PDUSetComParam
Purpose
Behaviour
Behaviour — Use Cases
74 C/C++ prototype
Parameters
75 Return values
PDUStartComPrimitive
Purpose
Behaviour
76 Behaviour — Use Cases
77 Behaviour — ComPrimitive status events
78 C/C++ prototype
Parameters
79 Return values
PDUCancelComPrimitive
Purpose
Behaviour
C/C++ prototype
80 Parameters
Return values
PDUGetEventItem
Purpose
Behaviour
81 C/C++ prototype
Parameters
Return values
PDUDestroyItem
Purpose
Behaviour
82 C/C++ prototype
Parameters
Return values
PDURegisterEventCallback
Purpose
Behaviour
83 C/C++ Prototype
Parameters
84 Return values
EventCallback prototype
Purpose
85 C/C++ prototype
Parameters
Return values
PDUGetObjectId
Purpose
Behaviour
C/C++ prototype
86 Parameters
Return values
PDUGetModuleIds
Purpose
Behaviour
87 Behaviour — Use Cases
88 C/C++ prototype
Parameters
Return values
PDUGetResourceIds
Purpose
Behaviour
89 C/C++ prototype
Parameters
Return values
PDUGetConflictingResources
Purpose
90 Behaviour
C/C++ prototype
Parameters
Return values
PDUGetUniqueRespIdTable
Purpose
91 Behaviour
C/C++ prototype
Parameters
Return values
92 PDUSetUniqueRespIdTable
Purpose
Behaviour
Behaviour — Use Cases
C/C++ prototype
Parameters
93 Return values
Using the Unique Response ID Table (URID Table) for physical
94 Handling of known and unknown responses from an ECU
Use cases
95 Handling of known ECU response ids
Handling of unknown ECU response ids
96 ECU Response Handling Flow Chart
97 PDUModuleConnect
Purpose
Behaviour
Behaviour — Use Cases
98 C/C++ prototype
Parameters
Return values
PDUModuleDisconnect
Purpose
99 Behaviour
C/C++ prototype
Parameters
Return values
PDUGetTimestamp
Purpose
Behaviour
100 C/C++ prototype
Parameters
Return values
I/O control section
IOCTL API command overview
102 PDU_IOCTL_RESET
103 PDU_IOCTL_CLEAR_TX_QUEUE
PDU_IOCTL_SUSPEND_TX_QUEUE
104 PDU_IOCTL_RESUME_TX_QUEUE
PDU_IOCTL_CLEAR_RX_QUEUE
105 PDU_IOCTL_READ_VBATT
PDU_IOCTL_SET_PROG_VOLTAGE
106 PDU_IOCTL_READ_PROG_VOLTAGE
107 PDU_IOCTL_GENERIC
PDU_IOCTL_SET_BUFFER_SIZE
108 PDU_IOCTL_GET_CABLE_ID
PDU_IOCTL_START_MSG_FILTER
110 MSG_FILTER block diagram
PDU_IOCTL_STOP_MSG_FILTER
111 PDU_IOCTL_CLEAR_MSG_FILTER
PDU_IOCTL_SET_EVENT_QUEUE_PROPERTIES
112 PDU_IOCTL_SEND_BREAK
113 PDU_IOCTL_READ_IGNITION_SENSE_STATE
114 API functions — error handling
Synchronous error handling
Asynchronous error handling
Installation
Generic description
115 Windows installation process
Locating the Windows D-PDU API DLL
Loading the Windows D-PDU API DLL
116 Linux installation process
Locating the Linux D-PDU API shared library
Loading the Linux D-PDU API shared library
Selecting MVCI protocol modules
Application notes
Interaction with the MDF
Accessing additional hardware features for MVCI protocol mod
117 Documentation and information provided by MVCI protocol modu
Performance Testing
118 Using the D-PDU API with existing applications
SAE J2534-1 and RP1210a existing standards
Data structures
API functions — data structure definitions
Abstract basic data types
119 Definitions
Bit encoding for UNUM32
120 API data structures
General information
Generic Item for type evaluation and casting
121 Items for IOCTL data transfer (PDUIoctl)
Item for Generic IOCTL data item
IOCTL programming voltage structure (PDU_IT_IO_PROG_VOLTAGE)
IOCTL byte array structure (PDU_IT_IO_BYTEARRAY)
IOCTL filter list structure (PDU_IT_IO_FILTER)
IOCTL filter data structure
122 IOCTL event queue property structure (PDU_IT_IO_EVENT_QUEUE_
Item for resource status information (used by PDUGetResource
Item for ComParam data (used by PDUGetComParam, PDUSetComPar
123 Item for module identification (used by PDUGetModuleIds)
124 Items for resource identification (used by PDUGetResourceIds
Structure for resource data (used by PDUGetResourceIds and P
Item for conflicting resources (used by PDUGetConflictingRes
125 Item for unique response identification (used by PDUGetUniqu
126 Item for event notification
Structure for status data
Asynchronous event information notification for PDU_IT_INFO
127 Asynchronous error notification structure for the PDU_IT_ERR
Structure for result data
Structure for extra result data information
128 Structure for flag data
Structure for version information (used by PDUGetVersion)
Coding of version numbers
129 Coding of dates
Structure to control a ComPrimitive’s operation (used by PDU
130 Structure for expected response
Expected response type
131 Array of unique response ids (pUniqueRespIds)
Expected response matching rules
Expected response example
132 Expected response structure (RawMode/NonRawMode)
BS ISO 22900-2:2009
$215.11