Port APPLICATION - XCP-CAN-FD-TOLERANT ✦

HMS-HW Calibration and Measurement

Provides XCP application access over CAN. CAN-FD messages are tolerated, but the port itself only sends CAN messages.

Stimulation

This port has no stimulus capabilities.

Name

Available if

Default value

Valid values

Type

Description

Channel number

‘1’

string

Selection of channel number if there is more than one controller of same type.

CAN-FD timings

hide details

[show details, hide details]


Display values:

  • show details: show details

  • hide details: hide details

string

CAN-FD bit rates and timing parameters – use the graphical editor or check ‘show details’ to work with the individual numbers

TSEG1 ❲Arbitration phase❳

CAN-FD timings: ‘show details’

int

TSEG1 (needed for determining the sample point)

TSEG2 ❲Arbitration phase❳

CAN-FD timings: ‘show details’

int

TSEG2 (needed for determining the sample point)

SJW ❲Arbitration phase❳

CAN-FD timings: ‘show details’

int

Synchronization jump width

Bit rate ❲Arbitration phase❳

CAN-FD timings: ‘show details’

int

In bit/s. Find this value in the CAN-FD A2L file under the name BAUDRATE in the block XCP_ON_CAN.

TSEG1 ❲Data transmission phase❳

CAN-FD timings: ‘show details’

int

TSEG1 (needed for determining the sample point)

TSEG2 ❲Data transmission phase❳

CAN-FD timings: ‘show details’

int

TSEG2 (needed for determining the sample point)

SJW ❲Data transmission phase❳

CAN-FD timings: ‘show details’

int

Synchronization jump width

Bit rate ❲Data transmission phase❳

CAN-FD timings: ‘show details’

int

In bit/s. Find this value in the CAN-FD A2L file under the name CAN_FD_DATA_TRANSFER_BAUDRATE.

Suppress Bit Rate Switching ❲BRS❳

☐

bool

Bit rate switching between arbitration phase and data phase is prevented.

Mode

Standard

[Standard, Extended]

string

Addressing mode (Standard = 11bit, Extended = 29bit)

Listen only

☐

bool

Controller is running in passive mode. Automatic ACK is disabled, and sending CAN frames is not possible.

Receive error frames

☐

bool

Receive error frames

Connection setup

‘OnPortStart’

[‘OnPortStart’, ‘OnPortConfigure’, ‘Job’]


Display values:

  • ‘OnPortStart’: ‘At start of test execution’

  • ‘OnPortConfigure’: ‘At start of configuration’

  • ‘Job’: ‘manually via job’

string

Time at which the connection to the XCP slave shall be established

OnPortConfigure:

Online information is available as soon as configurations are started.

OnPortStart and Job:

Only information from the A2L files is available.

Auto-reconnect

☐

bool

If this option is activated, the connection to the XCP slave is checked once before each read/write operation. If the connection is found to be not alive anymore, an attempt is made to re-establish it. If this succeeds, all buffers are cleared, the last calibration page is re-established, measurements and recordings are continued, and then, the test step is executed. If the reconnect fails, read test-steps return NotPresent while write test-steps are reported as error. Activating this feature might slow down execution of the affected test steps.

Deregister DAQ variables only on disconnect

☐

bool

Registers DAQ variables when the port connection is established.

Once DAQ variables are registered, they are available for the entire test execution.

After a disconnect, the DAQ variables are unloaded.

Default acquisition rate

‘Tool-Default’

string

Declaration of measurement acquisition rate used as alternative in case no acquisition rate is set in the test step (”*” and “?” can be used as wildcard). “Tool-Default” activates the use of the default acquisition rate of the tool

Skip value validity check

☐

bool

Activate this option in order to suppress the value limit check normally applied on conversion between physical and raw value.

Use seed and key

☐

bool

Define resources to get access permissions for and the file name of the 32-bit dll placed in the tool host path.

Recording mode

‘immediate’

[‘immediate’, ‘two-stage’]


Display values:

  • ‘immediate’: ‘immediate’

  • ‘two-stage’: ‘two-stage’

string

immediate recording writes a signal-based MDF4 file right away during test execution. This mode uses XCP slave timestamps if available.

two-stage recording first records raw bus/ethernet traffic and then post-processes it into a signal-based MDF4 file after the test execution is finished. This mode can cope better with a very large number of signals. It uses frame ingress timestamps even if XCP slave timestamps are available.

The test case start will be stored as start time in the MDF4 file’s metadata.

Default Polling Cycle [ms]

-1

int

Default polling cycle in milliseconds. All recordings with acquisition rate “Polling” will use this default. This value is used when no polling cycle is provided in the mappings acquisition rate. A value of -1 deactivates the affected polling (however, results from explicit reads in the testcase are still merged into the recording).

XAM file

Deregister DAQ variables only on disconnect: ‘True’

string

All measurement and calibration variables contained in the .xam file are

registered for recording and as DAQ variables when the port connection is

established. Variables with the same identifier wont be registered twice.

Seed and Key Library Path

Use seed and key: ‘True’

SeedNKeyXcp.dll

uri

Path to the library on the tool host containing the Seed and Key functions. Handling the DLL adds to the configuration start time.

Requested Resources

Use seed and key: ‘True’

5

int

Resources to unlock as bit mask

CAL/PAG : 1

CAL/PAG DAQ : 5

CAL/PAG STIM : 9

CAL/PAG PGM : 17

CAL/PAG DAQ STIM : 13

CAL/PAG DAQ PGM : 21

CAL/PAG STIM PGM : 25

CAL/PAG DAQ STIM PGM: 29

DAQ : 4

DAQ STIM : 12

DAQ PGM : 20

DAQ STIM PGM : 28

STIM : 8

STIM PGM : 24

PGM : 16

Duration of the unlocking is dependent on the number of resources.

Transmission confirmation

☐

bool

Activates acknowledged sending. Bus-Write test steps and Send tool jobs block until the message was successfully transferred on the bus or the confirm timeout expired.

Timeout for transmission confirmation

1000

int

Period in miliseconds in which a message has to be sent successfully. Otherwise an error is created. (must not be larger than 64535ms). Is only used in active confirm mode.

CAN-ID Settings

auto

[auto, manual]


Display values:

  • auto: auto

  • manual: manual

string

In ‘auto’ mode, the CAN IDs for XCP commands, responses, and DAQ must be specified in the A2L file selected in the TCF. These values will then be used automatically. Choose ‘manual’ mode if you want to specify the command and response IDs yourself, or if any of them are not provided in your A2L file. However, DAQ with CAN IDs that differ from the command and response IDs is currently not supported in mode ‘manual’.

Fill requests to max DLC

☐

bool

If this option is selected the data field of the message is filled to maximum length.

FillByte

Fill requests to max DLC: ‘True’

string

Byte used to fill data field to maximum length. Enter a byte as integer from 0x00 to 0xFF.

CAN-ID ❲Master->Slave❳

CAN-ID Settings: ‘manual’

string

CAN-ID for the direction from ecu.test to the ECU

CAN-ID ❲Slave->Master❳

CAN-ID Settings: ‘manual’

string

CAN-ID for the direction from the ECU to ecu.test

Connect

Establishes the connection to the XCP slave.

Disconnect

Disconnects from the XCP slave.

FreezeCalibrationParameters

Sets all given segments at the slave to mode “Freeze”and then requests the slave to save calibration data to non-volatile memory.

Parameterization

Parameter

Name

Available if

Default value

Valid values

Type

Description

segments

[0]

object

List of integer segment IDs

Return value

Name

Available if

Default value

Valid values

Type

Description

Return

[False, True]

bool

True if all succeeded. False if anything went wrong (see log output for details).

GetEPKFromECU

Returns the EPROM ID (EPK) from ECU.

Parameterization

Return value

Name

Available if

Default value

Valid values

Type

Description

epk

ByteStream

ByteStream containing the ID

GetStatus

Returns the resource protection status of the XCP slave. Locked resources can be unlocked using the job “UnlockResource”.

Parameterization

Return value

Name

Available if

Default value

Valid values

Type

Description

statusDict

object

Dictionary containing the protection status.

ReadDataByAddress

Reads data from memory starting at the given address.

Parameterization

Parameter

Name

Available if

Default value

Valid values

Type

Description

address

int

Start address to read from

addrExt

0

int

Address extension of the segment the address belongs to

length

int

Number of bytes to be read

Return value

Name

Available if

Default value

Valid values

Type

Description

data

ByteStream

Read data as ByteStream

ReadValue

Reads a specific measurement or calibration variable and returns its logical value.

Parameterization

Parameter

Name

Available if

Default value

Valid values

Type

Description

name

string

Symbolic name of the measurement or calibration variable as defined in the A2L file.

Return value

Name

Available if

Default value

Valid values

Type

Description

value

float

Logical value of the measurement or calibration variable.

SwitchPage

Switches the active page.

Parameterization

Parameter

Name

Available if

Default value

Valid values

Type

Description

page

[ONLINE]

string

Page to switch to

UnlockResource

Unlocks a resource using the Seed and Key mechanism.

Parameterization

Parameter

Name

Available if

Default value

Valid values

Type

Description

requestedResourcesMask

5

int

Resources to unlock as bit mask

CAL/PAG : 1

CAL/PAG DAQ : 5

CAL/PAG STIM : 9

CAL/PAG PGM : 17

CAL/PAG DAQ STIM : 13

CAL/PAG DAQ PGM : 21

CAL/PAG STIM PGM : 25

CAL/PAG DAQ STIM PGM: 29

DAQ : 4

DAQ STIM : 12

DAQ PGM : 20

DAQ STIM PGM : 28

STIM : 8

STIM PGM : 24

PGM : 16

seedNKeyLib

SeedNKeyXcp.dll

uri

Path to the library on the tool host containing the Seed and Key functions.

Return value

Name

Available if

Default value

Valid values

Type

Description

unlockedResourcesMask

int

Bit mask of unlocked resources

WriteDataByAddress

Writes data to memory starting at the given address. Use with caution and double-check input. Mistakes can lead to serious issues with the XCP slave.

Parameterization

Parameter

Name

Available if

Default value

Valid values

Type

Description

address

int

Start address to write to

addrExt

0

int

Address extension of the segment the address belongs to

data

ByteStream

Data to be written as ByteStream

WriteValue

Writes a logical value to a specific measurement or calibration variable.

Parameterization

Parameter

Name

Available if

Default value

Valid values

Type

Description

name

string

Symbolic name of the measurement or calibration variable as defined in the A2L file.

value

float

Logical value for the measurement or calibration variable.