INCA V7.5 Serial Calibration with InCircuit2
Product Information
Specifications
- Product: ETAS INCA V7.5 Serial Calibration with InCircuit2
- Version: V7.5
- Calibration Method: InCircuit2
- Target Use: Automotive ECU development and calibration
- Intended Users: Qualified personnel in automotive ECU
development, system administrators, users with administrator
privileges
Product Usage Instructions
1. Installation
Follow the installation instructions provided in the user guide
to set up the InCircuit2 calibration method in INCA.
2. Workspace and Hardware Configuration
Configure your workspace and hardware setup according to the
specifications outlined in the user documentation for optimal
performance.
3. Experiment Preparation
Prepare your experiments within INCA, ensuring all necessary
parameters are set correctly before calibration.
4. Flashing the Pointer Tables
Follow the steps to flash the pointer tables as described in the
user guide to enable calibration adjustments.
5. (Online) Measurements and Calibrations in the Control
Unit
Perform online measurements and calibrations in the control unit
using the InCircuit2 method for real-time adjustments.
6. Memory Page Management
Manage memory pages effectively to optimize performance and
calibration processes during usage.
Frequently Asked Questions (FAQ)
Q: What is the intended use of INCA and InCircuit2?
A: INCA and InCircuit2 are developed for automotive applications
and procedures, specifically for ECU development and calibration
where RAM is smaller than flash memory.
Q: Who is the target group for this software product?
A: The target group includes qualified personnel in automotive
ECU development, system administrators, and users with
administrator privileges who have specialized knowledge in
measurement and ECU technology.
Q: What safety messages should users be aware of?
A: Safety messages warn of dangers that can lead to personal
injury or property damage, with “DANGER” indicating a hazardous
situation that, if not avoided, will result in death or serious
injury.
ETAS INCA V7.5 Serial Calibration with InCircuit2
User Guide
Copyright
The data in this document may not be altered or amended without special notification from ETAS GmbH. ETAS GmbH undertakes no further obligation in relation to this document. The software described in it can only be used if the customer is in possession of a general license agreement or single license. Using and copying is only allowed in concurrence with the specifications stipulated in the contract.
Under no circumstances may any part of this document be copied, reproduced, transmitted, stored in a retrieval system or translated into another language without the express written permission of ETAS GmbH.
© Copyright 2024 ETAS GmbH, Stuttgart
The names and designations used in this document are trademarks or brands belonging to the respective owners.
MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See mathworks.com/trademarks for a list of additional trademarks.
INCA V7.5 | User Guide R01 EN | 03.2024
Contents
1
Introduction
1.1
Intended Use
1.2 Target Group
1.3 Classification of Safety Messages
1.4 Safety Information
1.5 Data Protection
1.6 Data and Information Security
2
About the InCircuit2 Calibration Method
3
Working with InCircuit2
3.1 Installation
3.2 Workspace and Hardware Configuration
3.3 Experiment Preparation
3.4 Flashing the Pointer Tables
3.5 (Online) Measurements and Calibrations in the Control Unit
3.6 Memory Page Management
4
Tips and Tricks
5
Additional Entries in the A2L File
5.1 Additional Entries in the A2L File for InCircuit2 with CCP
5.2 Additional Entries in the A2L File for InCircuit2 with XCP
6
Contact Information
Figures
Contents | 3
4 4 4 4 5 6 6 7 10 10 10 11 13 14 16 20 21 22 24 27 28
INCA V7.5 | User Guide
Contents | 4
1
Introduction
This user guide contains information on the use of the InCircuit2 function in INCA. You get a brief overview of the principles of the InCircuit2 serial calibration method and the special features during the INCA installation, a description of the operational procedures in INCA, and an explanation of the additional entries that need to be added to the A2L description file for the support of InCircuit2.
1.1
Intended Use
INCA and INCA add-ons are developed and approved for automotive applications and procedures as described in the user documentation for INCA and INCA addons.
InCircuit2 is a calibration method, INCA uses if the RAM (“ARAM”) is considerably smaller than the flash (“DROM”).
INCA and the INCA add-ons are intended to be used in industrial labs and in test vehicles.
ETAS GmbH cannot be made liable for damage that is caused by incorrect use and not adhering to the safety information.
1.2
Target Group
This software product and this user guide address qualified personnel working in the fields of automotive ECU development and calibration, as well as system administrators and users with administrator privileges who install, maintain, or uninstall software. Specialized knowledge in the areas of measurement and ECU technology is required.
1.3
Classification of Safety Messages
Safety messages warn of dangers that can lead to personal injury or damage to property:
DANGER
DANGER indicates a hazardous situation that, if not avoided, will result in death or serious injury.
WARNING
WARNING indicates a hazardous situation that, if not avoided, could result in death or serious injury.
INCA V7.5 | User Guide
Contents | 5
CAUTION
CAUTION indicates a hazardous situation that, if not avoided, could result in minor or moderate injury.
NOTICE
NOTICE indicates a situation that, if not avoided, could result in damage to property.
1.4
Safety Information
Observe the following safety information when working with INCA and INCA addons:
WARNING
Risk of unexpected vehicle behavior Calibration activities influence the behavior of the ECU and the systems that are connected to the ECU. This can lead to unexpected vehicle behavior, such as engine shutdown as well as breaking, accelerating, or swerving of the vehicle. Only perform calibration activities if you are trained in using the product and can assess the possible reactions of the connected systems.
WARNING
Risk of unexpected vehicle behavior Sending messages via bus systems, such as CAN, LIN, FlexRay, or Ethernet, influences the behavior of the systems connected to it. This can lead to unexpected vehicle behavior, such as engine shutdown as well as breaking, accelerating, or swerving of the vehicle. Only perform the sending of messages via a bus system if you have sufficient knowledge in using the respective bus system and can assess the possible reactions of the connected systems.
Adhere to the instructions in the ETAS Safety Advice and the safety information given in the online help and user guides. Open the ETAS Safety Advice in the INCA help menu ? > Safety Advice.
INCA V7.5 | User Guide
Contents | 6
1.5
Data Protection
If the product contains functions that process personal data, legal requirements of data protection and data privacy laws shall be complied with by the customer. As the data controller, the customer usually designs subsequent processing. Therefore, he must check, if the protective measures are sufficient.
1.6
Data and Information Security
To securely handle data in the context of this product, see the INCA Help section “Data and Information Security”.
INCA V7.5 | User Guide
2 About the InCircuit2 Calibration Method | 7
2
About the InCircuit2 Calibration Method
A calibration RAM (“working page”), common to all serial calibration methods, exists in the control unit. This is in addition to the flash page (“reference page”) that is used to run the control unit in “normal mode”. If this RAM is at least the same size as the flash, the entire data area can be copied into the working page allowing calibration of all parameters online.
The InCircuit2 method is used if this RAM (“ARAM”) is considerably smaller than the flash (“DROM”), Fig. 2-1. As a result, not all parameters that should be calibrated will fit into the calibration RAM.
Fig. 2-1: Memory Distribution for the InCircuit2 Calibration Method
Instead, prior to the calibration, the user needs to select the desired parameters to copy into the calibration RAM where they can be calibrated. After finishing the calibration of these parameters, the user must transfer the entire dataset, including the changes, to the reference page.
The parameters in the ARAM are addressed using one or more pointer tables. Normally, each pointer refers to the parameter in the flash. However, if the parameter has been copied to the ARAM for online calibration, INCA modifies the pointer to refer to the copy of the parameter in the calibration RAM.
The control unit itself can be toggled between direct access to the flash (“control unit access to reference page”) and access to the application RAM via the pointer table (“control unit access to working page”) (Fig. 2-2).
INCA V7.5 | User Guide
2 About the InCircuit2 Calibration Method | 8
FLASH
programsection
function(……)
2
pointer table
3
1
KL_XY{…..};…. KL_YZ{…..};….
datsection
A_PTR_XY
A_PTR_YZ; pointer table
4
ARAM
KL_XY{…..};….
Fig. 2-2: InCircuit2 Method in the Control Unit
The InCircuit2 function extension in INCA is responsible for the ARAM management, which includes allowing the user to select the variables to calibrate, copying them into the ARAM, and redirecting the pointers in the pointer table to the ARAM. Fig. 2-3: on the next page illustrates an overview of this process.
INCA V7.5 | User Guide
2 About the InCircuit2 Calibration Method | 9
ASAP2 HEX
Reference page
Working page
Creating the Project in the PC
Project
Reference page
modified dataset (directed appl. pointer)
Working page RAM-Image
Mini-Project
flash
ECU
Experimentpreparation
Reference page
modified dataset (directed appl. pointer)
build checksum if not o.k.
Arbeitsseite RAM-Abbild
Experimentperformance
buildchecksum
Write RAM
d o w n lo a d
ECU-Flash
ECU Appl.-RAM
Reference page ==
Working page
Working page RAM-Image
Experiment end
Fig. 2-3: Schematic process flow of InCircuit2 in INCA
INCA V7.5 | User Guide
3 Working with InCircuit2 | 10
3
Working with InCircuit2
3.1
Installation
The InCircuit2 function is automatically installed together with INCA.
For transferring the pointer tables, you will also need at least a ProF flow control sequence for flashing the complete control unit contents or, preferably, for flashing only the address range where the pointer tables are located. This flow control also needs to be installed in INCA. For more information, please consult the INCA manual. The flow control is specific to the control unit and can be obtained from the manufacturer of the control unit.
After the installation is complete, the Variables > InCircuit2 main menu in the experiment environment will contain the following options for InCircuit2:
Experiment preparation
Opens a window with this title from which you can select your desired parameters that can be calibrated.
Show ARAM contents
Displays in the monitor window the parameters selected for online calibration and the calibration RAM addresses at which they have been stored by INCA.
3.2
Workspace and Hardware Configuration
Create a workspace and as described in the INCA manual, i.e., add a new hardware configuration, insert a CCP and assign a project. It is important, however, that your A2L file that will be read as your project description file includes the information required for InCircuit2 (see “Additional Entries in the A2L File” on page 21). Otherwise, INCA will not be able to recognize that your control unit uses the InCircuit2 method and will try to access the calibration RAM directly using the flash addresses.
Note
For further information on setting up a hardware configuration, see the INCA Getting Started manual or the INCA online help (“Serial Calibration Using CCP”).
If your A2L file includes the InCircuit2-specific additional information items, you specified a serial control unit interface (CAN) in the hardware configuration, and you installed the InCircuit2 function extension, INCA will automatically use the InCircuit2 method without requiring further actions from the user. When using the InCircuit2 calibration method, the checksum is calculated during the hardware initialization only across the code page (if specified in A2L) and the reference page. The checksum is not calculated across the working page, because the contents of the calibration RAM for InCircuit2 is managed by INCA.
INCA V7.5 | User Guide
3 Working with InCircuit2 | 11
In contrast to the “normal” calibration, for security reasons, the InCircuit2 calibration method does not allow you to switch to the working page to perform the calibration if the checksum of the reference page in the control unit does not match the checksum of the reference page in INCA. In this case, you first have to flash the contents of the reference page to the control unit from the memory page management dialog that opens automatically in this situation, or perform an upload from the control unit.
Fig. 3-1: Error message in case of a reference page mismatch
3.3
Experiment Preparation
When you change from the Hardware Configuration Editor to the experiment environment for the first time while a control unit is connected, you must first specify which parameters you want to copy into the calibration RAM so that they can later be calibrated online.
For this purpose, a dialog box is opened that is very similar to the variable selection dialog and which is also operated identically. In contrast to the variable selection, however, this dialog box only displays parameters.
To select parameters
1. In the Sources field, select the desired control unit interface.
In the tabular area of the window a list of the parameters made available by the selected component appears. Press the <TAB> key until the first parameter is highlighted in the tabular area.
2. Use the arrow keys to move the highlight to the variable to be selected.
3. Confirm by pressing the <SPACE> key.
The intended variable is now marked by a square in front of the variable name.
4. Select here all the parameters that you intend to calibrate later online.
To facilitate the selection, you can also apply a filter to certain parameter types as in the variable selection dialog.
5. When you are done with the selection, exit the dialog box by clicking OK.
The pointer tables are now modified so that the address pointers of the selected parameters refer to the application RAM instead of to the flash. Use the Variables > InCircuit2 > Show ARAM contents command to view in the monitor window which parameters have been currently selected for online calibration and at which calibration RAM addresses they have been stored by INCA.
INCA V7.5 | User Guide
3 Working with InCircuit2 | 12
Fig. 3-2: Currently selected parameters with memory addresses If you selected more parameters than fit into the calibration RAM, an error message (see Fig. 3-3) appears allowing you to repeat your selection if desired.
Fig. 3-3: Error message if the selected parameters exceed the capacity of the calibration RAM
In parallel, the monitor window indicates the current allocation of the calibration RAM and identifies the parameters that could not be inserted. The modified pointer tables will be transferred to the control unit “Flashing the Pointer Tables” on the next page. If the transfer was successful, the values of the selected parameters will be copied from the working page of INCA into the calibration RAM. If this operation completes successfully, you can switch to the working page in INCA to perform online calibrations in the calibration RAM. If, however, an error occurred when flashing or writing into the calibration RAM, the working page is locked for security reasons because the control unit may work on invalid data on the working page in this case. Exit the experiment preparation dialog box by clicking Cancel if you do not want to pre-select the parameters for online calibration. In this case, the pointer tables will not be modified and no parameters will be copied into the calibration RAM. This also means that you will not be able to switch to the working page. Your pre-selection of parameters for online calibration is saved in the experiment. When opening an experiment that already contains a pre-selection of variables for online calibration, the checksum of the pointer tables in the control unit is first compared with the expected checksum of the pointer tables modified according to this pre-selection. If the checksum is correct, it is an indication for INCA that this control unit was last used with this particular experiment. Then also the expected checksum of the calibration RAM modified by INCA is compared with the checksum of the actual calibration RAM contents in the control unit. If there is a mismatch, the calibration RAM contents composed by INCA will be downloaded to the control unit.
INCA V7.5 | User Guide
3 Working with InCircuit2 | 13
Fig. 3-4: Message in case of a mismatch between the pointer table checksums
If the checksums of the pointer tables do not match, you will receive a message (see Fig. 3-4), and then the dialog box for variable selection will open. It already contains a pre-selection of the parameters that have been saved in the experiment. You can accept them by clicking OK or you can edit them. When you exit the dialog box by clicking OK, the pointer tables are transferred into the control unit and the values of the selected parameters are copied into the calibration RAM, as already described above.
However, if you exit the dialog box by clicking Cancel, the existing contents of the pointer tables and the calibration RAM in the control unit are retained. This also means that you will not be able to switch to the working page.
You can also modify the pre-selection of parameters for online calibration at any other time by choosing the Variables > InCircuit2 > Experiment preparation menu option from the experiment environment. The current pre-selection is saved together with the experiment.
The parameter selection dialog is not automatically opened if no control unit is connected when switching to the experiment environment or when loading an experiment. However, you can also open the variable selection dialog box without a control unit connected by choosing the Experiment preparation menu option. The parameters you select in this dialog box will then also be saved in the experiment.
3.4
Flashing the Pointer Tables
To write the modified pointer tables whose address pointers of the pre-selected parameters for online editing refer to the calibration RAM instead of the flash into the control unit, they have to be “flashed”. Flashing is done using the ProF tool version integrated into INCA.
To flash the entire control unit contents, you need at least one ProF flow control sequence, preferably one that only flashes the address range of the pointer tables, as appropriate for the control unit (which is also faster).
Once you have completed the experiment preparation as described above, the system will automatically invoke the ProF tool that is integrated in INCA. When calling it for the first time, you have to first install your ProF flow control sequence.
Note
For detailed information on ProF, please consult the manual or the documentation for the corresponding process control flow.
Configure the baud rate and additional adjustable parameters of the ProF control flow as necessary, and confirm your input with OK. Now begins first the deletion which is then followed by the rewriting of the control unit Flash. The specific pro-
INCA V7.5 | User Guide
3 Working with InCircuit2 | 14
cedure and messages that may be displayed depend on the particular flow control sequence. If you have questions regarding ProF or encounter difficulties, please contact the INCA hotline.
If the flashing process finishes successfully, this is indicated by a success message. Most control units require that you perform a reset (switching the ignition off and back on) before you can continue.
If an error occurred during the flashing process, the system offers you the option to repeat the process. You can switch the control unit to the working page for online calibration only if the transfer finishes successfully. In case of failure, INCA inhibits switching to the working page.
3.5
(Online) Measurements and Calibrations in the Control
Unit
After you have completed the experiment preparation and transfer of the pointer tables successfully, you can start performing measurements and calibrations with INCA (almost) as usual and as described in the manual. The difference between the InCircuit2 calibration method and other methods lies in the fact that you can only calibrate online in the control unit parameters that you pre-selected during the experiment preparation. These parameters exist only in the calibration RAM. All other parameters are still located in the flash and cannot, therefore, be calibrated directly in the control unit.
INCA displays both types of parameters (calibratable online and calibratable offline, disaplayable online) in the variable selection dialog and allows you to invoke editors for these variables. However, the behavior of the editors depends on the fact whether INCA is in online mode (with HW calibration access; Hardware > ECU calibration access menu option is checked) or in offline mode (without HW calibration access; )
In online mode, it is possible to calibrate parameters only that are available for online calibration, provided INCA and the control unit are on the working page. The calibration operations are written directly into the calibration RAM of the control unit. The parameters that are available only for offline calibration are writeprotected (see Fig. 3-5). On the reference page, of course, all parameters are write-protected.
INCA V7.5 | User Guide
3 Working with InCircuit2 | 15
Fig. 3-5: Parameter editors in online mode In offline mode, all parameters on the working page can be edited (see Fig. 3-6). However, if you perform a calibration operation, it is not written to the control unit! All parameters on the reference page are of course write-protected.
Fig. 3-6: Parameter editors in offline mode When switching from offline into online mode, all calibrations that you performed before in offline mode for the parameters that are available for online calibration will be written collectively into the calibration RAM of the control unit. The calibrations for variables that can be calibrated in offline mode only will not be written (see Fig. 3-7).
Fig. 3-7: Message when switching from off-line into online mode To write the offline changes to the parameters available for online calibration into the control unit, the control unit must be on the reference page. If it is currently on the working page, it will be switched temporarily to the reference page during
INCA V7.5 | User Guide
3 Working with InCircuit2 | 16
the download. Be sure to confirm the switch-over (see Fig. 3-8), otherwise, the download cannot be executed and you will not be able to perform online calibrations.
3.6
Fig. 3-8: Confirmation of temporarily switching to the reference page during the download
To write the changes to the parameters available for offline calibration into the control unit, the memory page manager needs to transfer the working page of INCA into the control unit.
During the measurement the InCircuit2 calibration method does not differ from other calibration methods. For more information, consult the description in the INCA Getting Started manual.
Memory Page Management
Similar to other calibration methods, the Memory Page Manager provides functions to write the contents of the working page and reference page to a file, to read other data versions, to compare the checksum of the control unit’s working page and reference page with INCA’s working page and reference page, and to transfer data.
The difference between the online mode and offline mode is even more noticeable for the InCircuit2 calibration method than for other methods:
In offline mode (no HW calibration access; “HW access” checkbox not enabled in the Memory Page Manager dialog), all functions refer to INCA’s working page and reference page only. Thus the same functions are offered here as for all other calibration methods.
In online mode (with HW calibration access; “HW access” checkbox enabled in the Memory Page Manager dialog), functions are provided that really access the control unit, and some additional functions that, although accessing INCA’s working page and reference page only, are also useful in online mode. The functions provided exhibit some differences between the InCircuit2 calibration method and “normal” calibration methods.
To demonstrate that the calibration RAM of the control unit is smaller than the flash and that it contains only the data of the parameters which were selected during the experiment preparation for online calibration, the memory page manager distinguishes for the sources and targets of the functions clearly between the working page and the calibration RAM (or “ARAM”).
The “working page” always refers to the working page in INCA containing both the data of the parameters that can be calibrated online and offline only.
INCA V7.5 | User Guide
3 Working with InCircuit2 | 17
“ARAM”, however, actually refers to the calibration RAM in the control unit or its PC image containing only the data of the parameters that can be calibrated online. Since the same functions are provided in offline mode regardless of the calibration method used, please consult the INCA Getting Started manual for more information. The following describes all functions of the memory page manager that are available in online mode.
“Flash Programming” Operation
Working page (+ Program page) > ECU flash Programs the contents of the working and program page of INCA into the flash memory of the control unit. You can decide whether to include in the transfer to the control unit the pointer tables that you modified during the experiment preparation and in which some pointers refer to the ARAM, or to transfer the original pointer tables in which all pointers refer to the flash (see Fig. 3-9).
Fig. 3-9: User prompt to specify whether to flash original or modified pointer tables
This prompt does not appear if there are no modified pointers. The integrated ProF is invoked for the flashing operation. If required, install and configure the ProF flow control sequence appropriate for your control unit as described in “Flashing the Pointer Tables” on page 13, select the desired operation in the ProF dialog, and start the programming process. Upon successful completion of the programming process, the contents of the working page in INCA are copied to the reference page. If you selected “flashing the original pointer tables”, the selection of parameters available for online calibration is reset; to re-enable online calibrations, you have to select new parameters in the variable selection. If you selected “flashing the modified pointer tables”, the flashing process is followed by a download into the calibration RAM, while the parameters selected for online calibration are retained. If an error occurs during the flashing process, INCA locks the switch-over to the working page for security reasons (it switches automatically to the reference page for the programming process). Reference page (+ Program page) > ECU flash Programs the contents of the reference and program page of INCA into the flash memory of the control unit. You can also decide whether to include the modified or the original pointer tables in the programming process.
INCA V7.5 | User Guide
3 Working with InCircuit2 | 18
The procedure is the same as for programming the contents of the working page (see above), with the exception, of course, that the contents of the working page are not copied when the transfer finishes successfully. Pointer tables > ECU flash Programs the modified pointer tables (and the contents of the reference and program page of INCA, if required) into the flash memory of the control unit. The function is identical to the usually automatic programming process of the pointer tables following the experiment preparation (see also “Flashing the Pointer Tables” above). File > ECU flash (only on the “Enhanced” tab) Programs the contents of the selected file into the flash memory of the control unit. You, as the user, are responsible that the file contains a valid program version. The contents of the data versions in INCA are not updated automatically!
“Upload” Operation (“2 Enhanced” tab)
ECU > Reference page (+ Program page) Uploads the data from the reference page (flash) of the control unit into the reference page of INCA. You can select whether to upload into the existing dataset or to create new datasets (reference and working page datasets). If you create new datasets, the new working page dataset is filled with the data from the reference page. You should perform an upload of the pointer tables (as part of the program page) only if the pointer tables are in their original state. Otherwise, INCA will detect that the pointers are not reasonable. There is no automatic detection which parameters have been selected for online calibration.
“Checksum” Operation (“2 Enhanced” tab)
ARAM > Reference page > Program page > Pointer table Verifies the checksums in INCA and in the control unit for the selected memory pages. These are compared with the checksum of the PC image of the calibration RAM during the checksum verification of the application RAM.
“Hexadec. Representation” Operation (“2 Enhanced” tab)
ARAM > Reference page > Program page > Pointer tables Opens a hex viewer/editor for the selected memory page which displays a comparison between the contents of the memory page in INCA and in the control unit. Again, you can edit the contents of the calibration RAM, but you, as the user, are responsible for the correctness of the edited data!
“Write dataset to file” Menu Option
Dataset > Write dataset to file… > Working page only or … > Working page and code page
INCA V7.5 | User Guide
3 Working with InCircuit2 | 19 Writes the contents of the working page and, if required, also the contents of the program page of INCA into a file. The working page contains the current contents of both the parameters that can be calibrated online and offline only. Dataset > Write dataset to file… > Reference page only or … > Reference page and code page Writes the contents of the reference page and, if required, also the contents of the program page of INCA into a file.
INCA V7.5 | User Guide
4 Tips and Tricks | 20
4
Tips and Tricks
For security reasons, INCA locks the possibility to switch to the working page if an error occurred (e.g., if transferring the pointer tables failed) and, in case of severe errors, it also inhibits the possibility to perform the experiment preparation. Fix the problem and then execute the “Initialize HW” function (function key <F3> or Hardware > Initialize HW menu option). If the error does not reoccur, the access to the working page is unlocked.
The Variables > InCircuit2 > Show ARAM contents menu option in the experiment environment provides an overview of the parameters currently selected for online calibration and their calibration RAM addresses assigned by INCA. The parameters are then listed in the monitor window (see Fig. 4-1).
Fig. 4-1: Monitor window listing the parameters available for on-line calibration
INCA V7.5 | User Guide
5 Additional Entries in the A2L File | 21
5
Additional Entries in the A2L File
Some additional entries are required in the A2L description file to ensure that INCA can apply the InCircuit2 calibration method correctly. In particular, the size and location of the pointer tables and calibration RAM need to be described separately. To describe the calibration method and the location of the pointer tables, ASAM-MCD-MC2 Version 1.3 provides the new CALIBRATION_METHOD keyword. For example:
/begin MOD_PAR
…
/begin CALIBRATION_METHOD
“InCircuit”
/* method name */
2
/* method version */
/begin CALIBRATION_HANDLE
/* description of pointer table 1 */
0x2B000
/* start address of pointer table 1 */
0x200
/* length of pointer table 1 */
0x4
/* size of one pointer table entry */
0x2A000
/* begin of the flash section */
0x2000
/* length of the flash section */
/end CALIBRATION_HANDLE
/begin CALIBRATION_HANDLE
/* description of pointer table 2 */
0x2B200
/* start address of pointer table 2 */
0x100
/* length of pointer table 2 */
0x4
/* size of one pointer table entry */
0x2A000
/* begin of the flash section */
0x2000
/* length of the flash section */
/end CALIBRATION_HANDLE
/end CALIBRATION_METHOD
…
/end MOD_PAR
Each pointer table has to be described by a CALIBRATION_HANDLE section in the CALIBRATION_METHOD. This has to describe the start address and length of the pointer table, the length of the address entry in the pointer table, and the start and length of the flash segment that contains the pointer table. You can combine the pointer tables in the description, if they follow each other contiguously and reside in the same flash segment.
The size of the flash and calibration RAM is described by MEMORY_SEGMENT. For example: /begin MEMORY_SEGMENT
INCA V7.5 | User Guide
5 Additional Entries in the A2L File | 22
Data “” DATA FLASH INTERN 0x28000 0x2000 -1 -1 -1 -1 -1 /end MEMORY_SEGMENT
/begin MEMORY_SEGMENT ARAM “” SERAM RAM EXTERN 0x30000 0x400 -1 -1 -1 -1 -1
/end MEMORY_SEGMENT
It is important to also describe the range of the pointer tables. For example: /begin MEMORY_SEGMENT
Pointer “” CODE FLASH INTERN 0x2B000 0x500 -1 -1 -1 -1 -1 /end MEMORY_SEGMENT
This ensures that the pointer tables are stored in datasets in INCA from where they can be included in the transfer. If the pointer tables are already included in a CODE segment described in A2L, they need not be described again separately.
5.1
Additional Entries in the A2L File for InCircuit2 with CCP
To be able to use the calibration concept of InCircuit2 in combination with the calibration protocol CCP the implementation must follow some rules to ensure a consistent behavior.
CCP Page Definition
The description of the memory position of the working page, which is located within the IF_DATA ASAP1B_CCP block below DEFINED_PAGES, has to be consistent with the corresponding description in the block MEMORY_SEGMENT which is describing the ARAM.
CCP Checksum Method
CCP provides two modes of checksum calculation:
Checksum calculation only on active page (i.e. the page the ECU is running on)
Checksum calculation on both active and non-active side
Due to the fact that it is not safe to switch an InCircuit2 ECU to a page which was not initialized to perform a checksum calculation, the parametrization must enable the tool to perform the checksum calculation on the non-active side.
The CCP IF_DATA section option CHECKSUM_CALCULATION BIT_OR_WITH_ OPT_PAGE provides this possibility. If this mode is available the tool can perform a checksum calculation without a page switch to that page.
It is also required to set the option RAM_INIT_BY_ECU; this prevents the tool from trying to initialize the working page by using the MOVE command or by means of a regular download, which both do not work with the InCircuit2 calibration concept.
INCA V7.5 | User Guide
5 Additional Entries in the A2L File | 23
A2L Example
/begin IF_DATA ASAP1B_CCP […] /begin TP_BLOB […] /begin CHECKSUM_PARAM 0x8006 0xFFFFFFFF CHECKSUM_CALCULATION BIT_OR_WITH_OPT_PAGE /end CHECKSUM_PARAM /begin DEFINED_PAGES 0x1 “reference page” 0x0 0x28000 0x2000 FLASH /end DEFINED_PAGES /begin DEFINED_PAGES 0x2 “working page” 0x0 0x30000 0x400 RAM RAM_INIT_BY_ECU FLASH_BACK /end DEFINED_PAGES OPTIONAL_CMD 0x9 /*GET_ACTIVE_CAL_PAGE*/ OPTIONAL_CMD 0xE /*BUILD_CHKSUM*/ OPTIONAL_CMD 0x11 /*SELECT_CAL_PAGE*/ OPTIONAL_CMD 0xD /*GET_SESSION_STATUS*/ OPTIONAL_CMD 0xF /*SHORT_UP*/ OPTIONAL_CMD 0x18 /*PROGRAM*/ OPTIONAL_CMD 0x10 /*CLEAR_MEMORY*/ OPTIONAL_CMD 0x22 /*PROGRAM_6*/ /end TP_BLOB
/end IF_DATA
Summary
The CCP description has to meet the following requirements: The description of the block DEFINED_PAGES has to be consistent with the description in the block MEMORY_SEGMENT. The parameter CHECKSUM_CALCULATION BIT_OR_WITH_OPT_PAGE has to be set. The parameter RAM_INIT_BY_ECU has to be set.
INCA V7.5 | User Guide
5 Additional Entries in the A2L File | 24
Note
ETAS strongly recommends to implement a CRC checksum algorithm to enable tools to determine differences in the pages and pointer tables reliable.
5.2
Additional Entries in the A2L File for InCircuit2 with XCP
To be able to use the calibration concept of InCircuit2 in combination with the Universal Measurement and Calibration Protocol (XCP) the A2L file should provide standard information for write and read access of the memory pages correctly.
ECU Access
There are four different settings for the ECU Access in the PAGE section of IF_ DATA XCP with the following meaning:
Flag in the A2L
Meaning
ECU_ACCESS_ NOT_ALLOWED
ECU access not allowed for the PAGE.
ECU_ACCESS_ WITHOUT_XCP_ ONLY
ECU access allowed only if the XCP master does NOT access this PAGE at the same time.
ECU_ACCESS_
ECU access allowed only if the XCP master
WITH_XCP_ONLY accesses this PAGE at the same time.
ECU_ACCESS_ DONT_CARE
ECU access allowed and the ECU does NOT care whether the XCP master accesses at the same time or not.
The ECU_ACCESS_x flags indicate whether and how the ECU can access this page. According to InCircuit2 architecture, the correct setting of the flag for ECU Access is ECU_ACCESS_ DONT_CARE.
Read Access
There are four different settings for the Read Access in the PAGE section of IF_ DATA XCP with the following meaning:
INCA V7.5 | User Guide
5 Additional Entries in the A2L File | 25
Flag in the A2L
XCP_READ_ ACCESS_NOT_ ALLOWED
XCP_READ_ ACCESS_ WITHOUT_ECU_ ONLY
XCP_READ_ ACCESS_WITH_ ECU_ONLY
XCP_READ_ ACCESS_DONT_ CARE
Meaning Read access not allowed for the PAGE.
Read allowed only if the ECU does NOT access this PAGE at the same time.
Read access allowed only if the ECU accesses this PAGE at the same time.
Read access allowed and the XCP master does NOT need to care whether the ECU accesses at the same time or not.
According to InCircuit2 architecture, the correct setting of the flag for ECU Read Access is XCP_READ_ACCESS_DONT_CARE.
Write Access
There are four different settings for the Write Access in the PAGE section of IF_ DATA XCP with the following meaning:
Flag in the A2L
XCP_WRITE_ ACCESS_NOT_ ALLOWED
XCP_WRITE_ ACCESS_ WITHOUT_ECU_ ONLY
XCP_WRITE_ ACCESS_ WITH_ ECU_ONLY
XCP_WRITE_ ACCESS_ DONT_ CARE
Meaning Write access not allowed for the PAGE.
Write allowed only if the ECU does NOT access this PAGE at the same time.
Write access allowed only if the ECU accesses this PAGE at the same time.
Write access allowed and the XCP master does NOT need to care whether the ECU accesses at the same time or not.
According to InCircuit2 architecture, the correct setting of the flag for ECU Write Access is XCP_WRITE_ACCESS_ DONT_CARE for pages which can be written by the XCP master.
INCA V7.5 | User Guide
5 Additional Entries in the A2L File | 26
Note
A wrong configuration of the pages for InCircuit2, could cause that INCA tries to switch the pages in an invalid state. Example: if in an A2L file the flag XCP_ WRITE_ACCESS_WITH_ECU_ONLY is defined for the PAGE, during the initialization INCA will try to switch the ECU and the XCP master synchronously to the working page before the ARAM is initialized.
Note
ETAS strongly recommends to implement a CRC checksum algorithm to enable tools to determine differences in the pages and pointer tables reliable.
A2L Example for InCircuit2 with XCP
/begin IF_DATA XCP /begin SEGMENT 22000 /begin CHECKSUM XCP_CRC_16 MAX_BLOCK_SIZE 4096 /end CHECKSUM /begin PAGE 0 ECU_ACCESS_DONT_CARE XCP_READ_ACCESS_DONT_CARE XCP_WRITE_ACCESS_NOT_ALLOWED INIT_SEGMENT 0 /end PAGE /begin PAGE 1 ECU_ACCESS_DONT_CARE XCP_READ_ACCESS_DONT_CARE XCP_WRITE_ACCESS_DONT_CARE INIT_SEGMENT 0 /end PAGE /end SEGMENT
/end IF_DATA
INCA V7.5 | User Guide
6 Contact Information | 27
6
Contact Information
Technical Support
For details of your local sales office as well as your local technical support team and product hotlines, take a look at the ETAS website: www.etas.com/hotlines ETAS offers trainings for its products: www.etas.com/academy
ETAS Headquarters
ETAS GmbH
Borsigstraße 24 70469 Stuttgart Germany
Phone: Fax: Internet:
+49 711 3423-0 +49 711 3423-2106 www.etas.com
INCA V7.5 | User Guide
Figures | 28
Figures
Fig. 2-1: Memory Distribution for the InCircuit2 Calibration Method
7
Fig. 2-2: InCircuit2 Method in the Control Unit
8
Fig. 2-3: Schematic process flow of InCircuit2 in INCA
9
Fig. 3-1: Error message in case of a reference page mismatch
11
Fig. 3-2: Currently selected parameters with memory addresses
12
Fig. 3-3: Error message if the selected parameters exceed the capacity of the calibration
RAM
12
Fig. 3-4: Message in case of a mismatch between the pointer table checksums
13
Fig. 3-5: Parameter editors in online mode
15
Fig. 3-6: Parameter editors in offline mode
15
Fig. 3-7: Message when switching from off-line into online mode
15
Fig. 3-8: Confirmation of temporarily switching to the reference page during the download 16
Fig. 3-9: User prompt to specify whether to flash original or modified pointer tables
17
Fig. 4-1: Monitor window listing the parameters available for on-line calibration
20
INCA V7.5 | User Guide
Documents / Resources
![]() |
ETAS INCA V7.5 Serial Calibration with InCircuit2 [pdf] User Guide INCA V7.5 Serial Calibration with InCircuit2, INCA V7.5, Serial Calibration with InCircuit2, Calibration with InCircuit2, InCircuit2, Calibration |