Professional Documents
Culture Documents
Pduhdrtpbinding: Technical Reference
Pduhdrtpbinding: Technical Reference
Technical Reference
Adaptive MICROSAR
Version master-4011
Document Information
History
The change history of this file is part of the component change history. It is documented in
ChangeHistory.txt of the component folder.
Reference Documents
[1] AUTOSAR. Adaptive Platform Release Overview. R19-03.
[2] AUTOSAR. Specification of Diagnostics for Adaptive Platform. R19-03.
[3] AUTOSAR. Specification of Manifest. R18-03.
[4] Vector Informatik GmbH. Integrating Adaptive MICROSAR.
[5] Vector Informatik GmbH. Technical Reference Adaptive Log and Trace Library.
[6] Vector Informatik GmbH. Technical Reference Diagnostic Manager.
[7] Vector Informatik GmbH. Technical Reference OS Abstraction Library.
[8] Vector Informatik GmbH. Technical Reference Vector Adaptive Common Library.
[9] Vector Informatik GmbH. Technical Reference Vector Adaptive Json Library.
[10] Vector Informatik GmbH. Technical Reference Vector Thread Library.
Caution
We have configured the programs in accordance with your specifications in the ques-
tionnaire. Whereas the programs do support other configurations than the one specified
in your questionnaire, Vector´s release of the programs delivered to your company is
expressly restricted to the configuration you have specified in the questionnaire.
Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1 Architectural Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.1 Dependencies 4
1.1.2 Component Design 5
2 Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Handling of POSIX Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.3.1 Exit Codes 8
2.3.2 Abnormal Terminations 8
3 Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1 Build Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2 Runtime Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3 Files and Include Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.4 CMake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.4.1 CMake Files 10
3.4.2 CMake Options 11
3.5 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4 API Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.1 Runtime Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
7 Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Illustrations
Tables
Listings
1 Introduction
This document describes the functionality, configuration and integration of the PduHdrTpBinding.
Architectural overview
"Module"
PduHdrTpBinding
"Module"
"Module" "Module" "Module"
"Module" Uds "Module" "Module"
libos log-api Diagnostic
libvac Transport thread vajson
abstraction Utility
API
2 Functional Description
The features listed in the sections cover the complete functionality specified for the PduHdrTpBinding.
The implemented features are described in 2.1.
2.1 Features
The following features are supported:
Feature Description
Custom TP towards DM daemon This includes
> allow DM to control the
TP
> establish a TCP
connection
> enable diagnostic
communication with a
diagnostic client
SoAd PDU header option to encapsulate UDS payload 8 Bytes SoAd header:
> Source Address (2 Bytes)
> Target Address (2 Bytes)
> Payload Length (4 Bytes)
Reception of data over an established TCP connection refer to [2, chapter 8.1]
Transmission of data over an established TCP connection refer to [2, chapter 8.1]
Periodic Transmission of data over an established TCP connection refer to [2, chapter 8.1]
Caution
This document only covers threads created by the described component itself. Threads of
components that are used for the implementation of this component are not described.
Table 2-3 shows the order in which the threads of the PduHdrTpBinding are started and terminated.
3 Integration
Note
Please refer to the DM technical reference [6] for more information about the integration
and selection of the TP.
3.4 CMake
For detailed usage of CMake see documentation available at cmake.org/documentation.
Note
The CMake files must be considered as drafts. Therefore, the CMake files must be
reviewed, tested and, if necessary, adapted by you.
3.5 Installation
The PduHdrTpBinding does not install artifacts.
4 API Description
The PduHdrTpBinding is an internal library only used by DM. Therefore there are no APIs to be used
by customer software.
Caution
The API of the Adaptive MICROSAR product is build by public classes, their methods, free
functions and types. Classes, their accessible methods, free functions and other types that
are intended to be used by customers are annotated with the documentation tag \vpublic.
These items build the product public API. Customer software shall just use the public API
of Adaptive MICROSAR. The private part shall not be used.
5 Configuration
The configuration options of the PduHdrTpBinding are described in the following sections.
An example how to configure the Configuration for PduHdrTpBinding is shown in listing 5-1.
{
"IPAddress": "192.168.7.2",
"TCPPort": 10000,
"MaxChannels": 5,
"MaxPayloadLength": 64,
"MaxPeriodicBulkSize": 16,
"TTL": 0
}
6.1 Glossary
Term Description
LibVAC Vector base type library
LibVaJson Vector library for parsing JSON files
Logging Li- AUTOSAR Adaptive Platform library for logging and tracing
brary (ara::log)
OS Abstraction Vector platform abstraction library
PduHdrTpBinding A custom TP based on TCP/IP and SoAd PDU header option
6.2 Abbreviations
Abbreviation Description
AMSR Adaptive MICROSAR
API Application Programming Interface
ARA AUTOSAR Runtime for Adaptive Applications
AUTOSAR Automotive Open System Architecture
DM Diagnostic Manager
IP Internet Protocol
JSON JavaScript Object Notation
MICROSAR Microcontroller Open System Architecture (the Vector AUTOSAR solu-
tion).
PDU Protocol Data Unit
SoAd Socket Adaptor
TCP Transmission Control Protocol
TP Transport Protocol
TTL Time To Live
UDS Unified Diagnostics Services
UTF-8 Unicode Transformation Format – 8-bit
7 Contact
> News
> Products
> Demo software
> Support
> Training data
> Addresses
www.vector.com