Start Migration to Your New DaVinci Project
This section will give you an overview how to migrate your DaVinci Configurator Classic Version 5 projects into newer project structure.
One-Step Project Migration
-
Open project migration tool and run following command, replacing the placeholder paths with:
-
--dpa-file: The path to the .dpa file of the project to be migrated.
-
--dest-dir: The destination path for the new DaVinci project.
-
--bsw-package: The path to the BSW package to be used.
-
|
If the --dest-dir parameter is not specified, the migration tool will use the directory of the DaVinci Configurator Classic Version 5 project (i.e., the location of the .dpa file) as the destination. It must also not contain any .dvjson files, as these indicate an existing DaVinci Configurator Classic Version 6 project, which would conflict with the migration process. Only omit the --dest-dir parameter if the original DPA project is no longer needed, as the .dpa file will be deleted after a successful migration. |
# project-migration --dpa-file /Path/To/Project/projectname.dpa --dest-dir /Path/To/MigratedProject --bsw-package /Path/To/BSWPackage
When the project migration is started, this message is displayed on the console:
Starting migration...
Several log statements will be displayed to indicate the progress of the migration process. Once the migration is complete, the following message appears in the console:
Finished migration
Resulting Project Directory Structure
In this table, the default folders of a DaVinci Configurator Classic Version 5 project are opposed to the default folders of a DaVinci Configurator Classic Version 6 project with its changed project structure (the paths are relative to the project folder).
| CFG5 Default Location | CFG6 Default Location | Comment |
|---|---|---|
Config/ECUC |
Config/EcuConfig |
EcuC description files (active EcuC and EcuC splitter files) |
Config/ApplicationComponents |
Config/AppComponents |
application description files |
Config/Developer |
Config/AppConfig |
DaVinci Developer workspace |
Config/AUTOSAR |
Config/AUTOSAR |
standard AUTOSAR files, e.g., platform types |
Config/InternalBehavior |
Output/Config/InternalBehavior |
description files of the internal behavior |
Config/McData |
Output/Source/McData |
generated A2L files |
Log |
Output/Log |
log files |
Config/ServiceComponents |
Output/Config/ServiceComponents |
description files of the service components |
Config/System |
Config/System |
system description files |
Config/TimingExtensions |
Config/TimingExtensions |
timing extension description files |
Appl/Source |
Output/Source/Templates |
generated template files |
Appl/GenData |
Output/Source/GenData |
generated module files |
Appl/GenDataVtt |
Output/Source/GenDataVtt |
generated VTT module files |
DefRestrict |
Config/DefinitionRestriction |
definition restriction files |
Config/System |
Config/VariantConfig |
evaluated variant set files |
- |
Config/StructuredExtract/BswConfig |
structured extract description files |
|
If any project files (e.g., DCF files) contain relative references to directories or files outside the project folder, it is recommended to place the migrated DaVinci Configurator Classic Version 6 project folder at the same hierarchy level as the original. Otherwise, these references must be adjusted manually. Additionally, custom directories (i.e., folders not listed in the first column) need to be copied manually into the new project folder. |
Resulting Configuration Files Structure
The direct equivalent to the DPA file is a file with the extension .dvjson in JSON format, the so-called project master file. But in contrast to the DPA file, it does not contain all the configuration entries, but only references to other JSON configuration files. Such a typical project master file will usually look like this:
{
"arxmlProjectContent": "./Settings/ArxmlProjectContent.json",
"misc": "./Settings/Misc.json",
"generator": "./Settings/Generator.json",
"ifp": "./Settings/Ifp.json",
"general": "./Settings/General.json",
"acknowledgements": "./Settings/Acknowledgements.json"
}
Relative paths in all project configuration files are considered relative to the directory that contains that configuration file.
The forward slash / is used for file separators, so that the configuration files can be used both on Windows and Linux platforms.
The following sections provide some more information about the contents of these configuration files.
If there are no corresponding configuration entries in the DPA file, Misc.json, Generator.json and Ifp.json are not created.
For all these files, editing support with corresponding JSON schemas is provided.
These schema files contain details about all possible configuration entries.
Further details about the editing of these configuration are available in the DaVinci Configurator Classic Version 6 documentation.
Content of Setting File ArxmlProjectContent.json
This file contains the configuration entries about all directory and file locations of ARXML files that the DaVinci Configurator Classic Version 6 loads.
These entries were located at various sections in the DPA file: <Folders>, <Input>, <References>, <ECUC>, <EcucSplitter> or <Variance>.
Content of Setting File Generator.json
This file contains generator related settings which were located in the <Generators> section of the <ToolSettings> of the DPA file.
Content of Setting File Ifp.json
This file contains settings related to the input file processing: ComControllerMappings and ModuleDefinitionMappings which were located in the <Display> section of the DPA file.
Content of Setting File Misc.json
This file contains other miscellaneous settings which were located in the <Misc> section of the <ToolSettings> of the DPA file.
Behind the Scenes of Migration
The process of migrating a DaVinci Configurator Classic Version 5 project consists of three internal steps.
First, the DaVinci Configurator Classic Version 5 project with a DPA file is converted to a DaVinci Configurator Classic Version 6 project with JSON settings files. Files and directories are moved/copied to the locations according to the default locations of the DaVinci Configurator Classic Version 6 project structure, the corresponding configuration entries are also changed accordingly. When this step is completed, the tool displays this on the console:
JSON project created from <dpa file>
Second, the JSON project is loaded in order to create a structured extract from the flat extract data in the project. If structured extract data could be created (from the flat extract model data), an additional ARXML file is created inConfig/StructuredExtract/BswConfig. When this step is completed, the tool displays this on the console:
Migrating flat extract elements finished
In a third step, the functionality of the CLI command derive-ecuc is called. When this step is completed, the tool displays this on the console:
Finished deriving ecuc from ecu extract
The project migration tool does not consider other files in the project folder, that are not referenced by the DPA file.