ETAS: INCA¶
Vendor information
Vendor |
Web page |
Product name |
Version |
|---|---|---|---|
ETAS GmbH |
Integrated Calibration and Application Tool |
From 7.2.0, tested up to 7.5.4. |
Categories
MDL 🛈 |
APL 🛈 |
BAN 🛈 |
BMA 🛈 |
SVC 🛈 |
DGN 🛈 |
FIU 🛈 |
EES 🛈 |
FCT 🛈 |
DBG 🛈 |
IMG 🛈 |
AUDIO 🛈 |
ENVSIM 🛈 |
ENVCOM 🛈 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
✓ |
✓ |
Data sources
File format |
Comment |
|---|---|
*.a2l (ASAM MCD-2MC) |
|
*.hex, *.s19 |
|
*.a2l.cod (executable for prototyping target) |
Signal recordings 🛈
File format |
Comment |
|---|---|
*.dat |
MDF-Format Version 3 |
*.mf4 |
MDF-Format Version 4 |
Platform
Operating system |
Support |
|---|---|
Windows |
✓ |
Linux |
Ports¶
Specifics¶
INCA provides tools and functions needed for working with a control unit. The core system allows carrying out measurement and adjustment tasks simultaneously. The integrated tools make it possible to evaluate measurement data, program the ECU flash memory and manage application data. In ecu.test there is the additional possibility of using INCA for reading access to the CAN, CAN-FD or FlexRay bus.
General notes:
If changes to the INCA experiment are done via ecu.test, the initial state is restored upon closing the experiment. Manual changes in the experiement in INCA while ecu.test is accessing it can lead to undefined behavior. Thus, they should be done and saved before the experiment is opened by ecu.test.
Notes regarding Bus access:
When using Fibex or Autosar/ARXML, only bus databases that contain a single bus cluster are reliably supported.
Notes regarding port jobs:
The measurement is started automatically before the test case execution if the test bench configuration Start of measurement is set to Automatic.
Notes regarding “Automatic value restore”
The feature Restore test quantities after execution (in the test configuration or in the project) is always and only applied to all test quantities affected by a Write test step. If a test quantity is affected exclusively by a job call, it will not be reset; If a test quantity is affected by a job call in addition to a Write test step, it will be reset to the value that was saved at the beginning of the package, even if this undoes a change by a job call that was semantically a “reset” (e.g. ResetToReferencePage).
Notes regarding “Handling of existing project”¶
The TBC option Handling of existing project for application ports determines which of the configurations for project (A2L file) and data set (HEX file) in ecu.test and INCA are used when opening the INCA experiment. This option is especially relevant if project or data set share the same name, but differ in content.
In the default case Use existing data set with same name as HEX file is preselected. With this setting it is assumed that the configurations in INCA and ecu.test are identical. For this purpose the file names are compared. If one of the files specified in ecu.test are not found in the INCA database, the file given in ecu.test is used. A prerequisite for this is, that the file transfer has not been deactivated via the selection of Do not transfer A2L and HEX file to INCA. If no HEX file is specified in ecu.test, it is attempted to use a copy of the master data set.
If deviations between the configurations in ecu.test and INCA exist, the additional choices of the TBC option can be used to control exactly which configuration is applied.
Is Create new data set selected, the data set specified in ecu.test is always used. This can be required, for example, if a same-named, but incorrect data set is set in INCA. If no HEX file is specified for this setting, an empty data set is created.
With the selection of Replace ASAP2 project not only the data set, but also the project specified in ecu.test is used. In this case, too, an empty data set is created if no HEX file is specified in ecu.test.
The selection of Use existing data set without verification ensures that the data set specified in INCA is used. If a HEX file is selected in ecu.test, it will only be used as a data base for displaying default values in ecu.test and will not be transferred to INCA.
When selecting Use existing project and data set without verification in addition to the data set also the project loaded in INCA is used. Note that in this case still an A2L file needs to be specified in ecu.test. If the given file deviates from the A2L file of the project configured in INCA, the data displayed in the Measurement tab and the Calibration tab does not correspond to the project loaded in INCA.
The following table gives an overview of the different choices of the TBC option and their implications.
Use existing data set with same name as HEX file |
Create new data set |
Replace ASAP2 project |
Use existing data set without verification |
Use existing project and data set without verification |
|
|---|---|---|---|---|---|
project validation |
name comparison |
name comparison |
- |
name comparison |
- |
data set validation |
name comparison |
- |
- |
- |
- |
Application of INCA project |
on positive project validation |
on positive project validation |
- |
on positive project validation |
✓ |
Application of INCA data set |
on positive data set validation |
- |
- |
✓ |
✓ |
Application of ecu.test project |
on negative project validation |
on negative project validation |
✓ |
- |
- |
Application of ecu.test data set |
on negative data set validation |
✓ |
✓ |
- |
- |
Application of empty data set |
- |
if no HEX file is specified |
if no HEX file is specified |
- |
- |
Application of master data set |
if no HEX file is specified |
- |
- |
- |
- |
Error |
if project or data set are not found and file transfer is deactivated |
- |
- |
on negative project validation |
- |
Adding devices to the hardware configuration
While starting the configuration, ecu.test checks whether all devices declared in the test bench configuration exist in the INCA work environment / hardware configuration. If a device does not exist, and there is no device type specified in ecu.test, the following message is shown:
In this case, the device must be created manually in INCA. Afterwards, you can confirm the message.
Setting Cycle time for measure data polling
If measurement values are to be measured the following setting must be made in INCA:
Select dialog User options in menu item Options. Open dialog Measure in tab Experiment. In window Adjust measure options of tab General you can now put the option Cycle time for measure data polling [ms] to 10.
Special setting for calibration recording
If calibration values are to be recorded the following settings must be made in INCA:
Enable CalibrationRecording:
Select dialog User options in menu item Options. Open dialog Calibration in tab Experiment. In window Change of calibration options of tab General you can now put the option CalibrationRecording to Yes (see figure below).
Enable Measurement of Calibrations:
Select dialog User options in menu item Options. Open dialog Measure in tab Experiment. In window Change of measure options of tab General you can now put the option Enable Measurement of Calibrations to Yes.
Special setting for calibration of measurement values
If measurement values are to be calibrated the following setting must be made in INCA:
Select dialog User options in menu item Options. Open dialog Calibration in tab Experiment. In window Change of calibration options of tab General you can now put the option Allow calibration of measurement values to Yes.
Info
Reading and recording the running value of a curve or map is supported.
Reading or writing single array and matrix elements in ReadCalibration and WriteCalibration Jobs
Single array and matrix elements can be read with the ReadCalibration job and written with the WriteCalibration job. To address a single array element, use the syntax <name>_[index]. To address a single matrix element, use the syntax <name>_[row][col].
Properties 🛈¶
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
INCA Root |
uri |
INCA working Directory. Must be absolute, or relative to the tool host’s base path. |
|||
Database |
‘ECU-TEST’ |
string |
Name of the database to use. Ignored if a Database template is used |
||
Folder |
ECU-TEST |
uri |
Basic folder in database |
||
Database template |
uri |
Path to template database. If defined, a copy of this database will be created and loaded inside the denoted folder of the INCA working directory. An existing database will be overwritten. In case of a relative path, the base path of the tool host will be used as extension. |
|||
Working environment |
‘CCP’ |
string |
Name of working environment |
||
Experiment |
‘leer’ |
string |
Name of INCA experiment |
||
Refresh calibration values |
☐ |
bool |
By default, modified calibration values are not displayed in the INCA experiment. This can be changed here, but at the expense of speed. |
||
Start of measurement |
‘Automatic’ |
[‘Automatic’, ‘Manual’] |
string |
Automatic: start measurement automatically at test start. Manual: Start and stop measurement using tool jobs |
|
Timeout for connection attempt |
60 |
int |
Timeout in seconds before connecting to INCA will be aborted. |
||
Timeout for a response from INCA |
10 |
int |
Maximum time in seconds to wait for a response from INCA |
||
Deactivate popup window |
‘False’ |
[‘True’, ‘False’, ‘continuous’] |
string |
Should all pop-up windows in INCA be suppressed during the execution of a package test case? Alternatively, the pop-up windows can also be suppressed until the tool connection is closed (‘continuous’). |
|
Do not open measurement windows |
☐ |
bool |
Do not open windows in INCA experiment for values used by ecu.test. Opening the windows may have a negative impact on performance and stability of the connection. CAUTION: If the measurement windows are not opened, the automatic recording of calibration variables might not work as expected in INCA. |
||
Disable recording triggers |
☐ |
bool |
All INCA recording triggers are switched to start and stop manually (triggered by ecu.test) |
||
Shutdown on exit |
☐ |
bool |
Should INCA be shut down if the tool is closed? |
||
Save Experiment |
☑ |
bool |
Shall the INCA experiment be saved upon closing? |
||
Version |
‘<system default>’ |
[‘<system default>’] |
string |
Used INCA version |
|
Capture calibration variables as measurements |
☐ |
bool |
Use this option to capture the corresponding measurement on the #MeasureCal device in INCA instead of the calibration variable. The option does not apply to Curves or Maps. The #MeasureCal device has to be present in INCA for this option to take effect. Note: The trace analysis automatically detects the #MeasureCal device in INCA recordings and uses it to read calibration values. The time axis of the #MeasureCal device has a reliable sampling rate, but the recording starts delayed in comparison to other devices. |
||
MDF file type |
‘<system default>’ |
[‘<system default>’, ‘mdf 4.1’, ‘mdf 4.0’, ‘mdf 3.3’, ‘mdf 3.0’] |
string |
Set the MDF file type. |
|
UserOptions |
‘{}’ |
string |
Expert option Dictionary with additional user options, for instance {‘AppHistValueChanges’: ‘persistent’, ‘NameAlignment’: ‘left’, ‘AllowECUReset’: ‘true’}. Requires INCA version 7.2.6 or newer. Option MDF file type is prior to ‘[Measure-General]MdfFileType’. Cross check INCA API documentation about SetOption. |
||
Convert “INCA Error 54” to ~NotPresent~ |
☐ |
bool |
If selected, the “INCA Error 54” is converted to ~NotPresent~ and no longer leads to an ERROR in the report. |
||
Timeout for tool call ❲in sec.❳ |
‘600’ |
string |
Timeout after which a tool call is aborted. |
Jobs 🛈¶
CheckAllConnections¶
Provides the connection state of all devices
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
returnValue |
object |
Dictionary{str -> bool} of all devices in the experiment and their connection status. ‘True’ means the device is connected and active. |
DeInitVariable¶
Removes a measurement from experiment
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
DeviceName |
string |
Name of device to be used |
|||
VariableName |
string |
Name of value to be removed |
FlashHexFileWithControlFlowOnFlashPort¶
Flashes the ECU when the measurement is stopped
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
ControlFlow |
string |
ControlFlow from TGTSVR.log without device and .hex file |
|||
CopyFile |
☐ |
bool |
If “True”, copies the local file to the tool host |
||
DeviceName |
string |
Name of device to be used |
|||
FlashFile |
uri |
Optional: file name and path of the flash file |
|||
FlashPort |
string |
Optional: Alternative flash port |
GetAquisitionRates¶
Provides a list of all acquisition rates
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
devName |
string |
Name of device to be used |
GetETASLogFilePath¶
Returns the file system path for the ETAS log files.
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
filePath |
string |
Path for the ETAS log files |
GetETASTempPath¶
Returns the file system path for the ETAS temporary files.
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
filePath |
string |
Path for the ETAS temporary files |
GetLabels¶
Provides a list of all values
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
devName |
string |
Name of device to be used |
GetLastRecordingFileName¶
Returns the file path of the last recording.
Attention: The file path always referred to the recently completed recording. This is done automatically at the end of the test and can be done also by using triggers.
“Stop trace” pauses the recording only.
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
fileName |
object |
Complete path of the last capture file. Can be empty. |
GetNonProjectDevices¶
Provides a list of devices which are not assigned to the project
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
returnValue |
object |
List[str] of devices |
GetSupportedFlashPortNames¶
Returns the names of supported FlashPorts
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
DeviceName |
string |
Name of device to be used |
InitializeHardware¶
Initialize hardware
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
returnValue |
☐ |
bool |
True on success |
InitVariable¶
Adds measurements to the experiment. The measurement must be stopped for this.
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
DeviceName |
string |
Name of device to be used |
|||
Rate |
string |
Name of acquisition rate |
|||
VariableName |
string |
Name of quantity to be registered |
IsGroupedDevices¶
Checks whether the experiment has devices with active grouping
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
return |
[False, True] |
bool |
True if devices are grouped, otherwise False |
ReadCalibration¶
Reads a calibration value
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
Device |
string |
Device of variable to be read |
|||
Name |
string |
Name of quantity to be read. Use <name>_[index] for array elements and <name>_[row][col] for matrix elements. |
|||
TypeInfo |
‘SCALAR’ |
[‘SCALAR’, ‘VECTOR’, ‘MATRIX’, ‘CURVE’, ‘MAP’, ‘ARRAY_ELEMENT’, ‘MATRIX_ELEMENT’] |
string |
Variable type of quantity |
ReadVariable¶
Reads a measurement from experiment
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
DeviceName |
string |
Name of device to be used |
|||
VariableName |
string |
Name of quantity to be read |
SetGroupedDevices¶
Switches device grouping on or off.
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
on |
[False, True] |
bool |
Activate (True) or deactivate (False) grouping of devices |
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
return |
[False, True] |
bool |
True if grouping/ungrouping was successful, otherwise False |
SetRecordingHeader¶
Sets the fields of the MDF header. (Not possible during a measurement).
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
Comment |
string |
Comment field in the MDF header |
|||
Company |
string |
Company field in the MDF header |
|||
Project |
string |
Project field in the MDF header |
|||
User |
string |
User field in the MDF header |
|||
Vehicle |
string |
Vehicle field in the MDF header |
Start¶
Have tool ready for measurement
StartMeasurement¶
Starts the measurement
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
returnValue |
int |
‘-1’ if the job fails |
Stop¶
Removes all ecu.test variables from the experiment
StopMeasurement¶
Stop measurement and recording
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
returnValue |
int |
‘-1’ if the job fails |
SwitchCalibrationAccess¶
Set the calibration access of all devices to on or off
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
on |
[False, True] |
bool |
switch on (True) or off (False) |
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
return |
[False, True] |
bool |
True if switching was successful, otherwise False |
WriteCalibration¶
Writes a calibration value
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
Data |
string |
data to be written |
|||
Device |
string |
Device of variable to be written |
|||
Name |
string |
Name of value to be written. Use <name>_[index] for array elements and <name>_[row][col] for matrix elements. |
|||
TypeInfo |
‘SCALAR’ |
[‘SCALAR’, ‘VECTOR’, ‘MATRIX’, ‘CURVE’, ‘MAP’, ‘ARRAY_ELEMENT’, ‘MATRIX_ELEMENT’] |
string |
Variable type of quantity |
|
WeakBoundToHardBound |
☑ |
bool |
Permanently use hard bounds instead of weak bounds |
WriteEventComment¶
Inserts a marker with an optional comment into a running recording.
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
Comment |
string |
Comment to set at the marker |