Using Hybrid Generator BSW packages
What is a Hybrid Generator BSW package?
A Hybrid Generator BSW Package is a MICROSAR Classic BSW Package containing a mixture of BSW components using different generator versions. It contains:
-
BSW components with native generators for DaVinci Configurator Classic Version 6
-
BSW components with native generators for DaVinci Configurator Classic Version 5
A MICROSAR Classic BSW is defined as a Hybrid Generator BSW Package if there is at least one component which provides a DaVinci Configurator Classic Version 5 based generator only but no native generator for DaVinci Configurator Classic Version 6.
This is a common use case as long as not all component generators are migrated to DaVinci Configurator Classic Version 6.
A Hybrid Generator BSW Package allows the usage of BSW components which only provide a DaVinci Configurator Classic Version 5 based generator in a DaVinci Configurator Classic Version 6 project.
A proxy generator is provided which abstracts the external generator interface and supports the seamless integration and usage of DaVinci Configurator Classic Version 5 based generators.
In the following, a BSW component with native generator for DaVinci Configurator Classic Version 6 only is shortly called a BSW component for DaVinci Configurator Classic Version 6 and its generator is called a DaVinci Configurator Classic Version 6 based generator. Similarly, a BSW component with native generator for DaVinci Configurator Classic Version 5 only is shortly called a BSW component for DaVinci Configurator Classic Version 5 and its generator is called a DaVinci Configurator Classic Version 5 based generator.
Detection and Preparation of a Hybrid Generator BSW package
The DvC5Proxy generator is responsible to generate the DaVinci Configurator Classic Version 5 based generators within your DaVinci Configurator Classic Version 6 project.
Your Hybrid Generator BSW package needs to be prepared to make the DaVinci Configurator Classic Version 5 based generators available to the DvC5Proxy generator by executing following step:
-
Open a terminal at the folder
external\Misc\PrepareDavinciConfiguratorProxyof your BSW package and run following command (local python installation is required):$ python Prepare_DaVinci_Configurator.py
The output of the script indicates if your MICROSAR Classic BSW is a Hybrid Generator BSW Package. In this case, all components with DaVinci Configurator Classic Version 5 based generators are listed for information. Further, this step modifies following files in your BSW Package: Components/DvC5Proxy/GeneratorDvC6/Settings_Cfg5.xml and DaVinciConfigurator/Core/DVCfgCmd.ini. The script needs to be executed again if a DaVinci Configurator Classic Version 5 based generator is manually removed or added to your BSW package.
If your MICROSAR Classic BSW is not a Hybrid Generator BSW Package, the remaining parts of this chapter can be skipped.
Usage of Hybrid Generator BSW package
There is no difference in the overall usage workflow between a BSW component for DaVinci Configurator Classic Version 6 and BSW component for DaVinci Configurator Classic Version 5. The DvC5Proxy generator integrates the BSW component for DaVinci Configurator Classic Version 5 seamlessly in your DaVinci Configurator Classic Version 6 project.
Configuration: You configure a BSW component with DaVinci Configurator Classic Version 5 based generator the same way as any other component, e.g. using DaVinci Configurator Classic Version 6 GUI. After the BSW component configuration is changed, the DvC5Proxy generator executes the DaVinci Configurator Classic Version 5 based generators in the background and mirrors the validation results of the BSW components back to your DaVinci Configurator Classic Version 6 project.
Generation: The generation of a BSW component for DaVinci Configurator Classic Version 5 based generator is automatically handled by the DvC5Proxy generator. When the DaVinci Configurator Classic Version 6 project is generated, the DvC5Proxy generator is executed and triggers the generation of the DaVinci Configurator Classic Version 5 based generators using the DaVinci Configurator Classic Version 5.
| The validation and generation of a DaVinci Configurator Classic Version 5 based generator via the DvC5Proxy generator takes longer than the generation as a DaVinci Configurator Classic Version 6 based generator. |
Export and Import of Configuration Changes
The validation and generation phase of a DaVinci Configurator Classic Version 5 based generator is able to change configuration elements. Any changes inside a project caused by execution of a DaVinci Configurator Classic Version 5 based generator are not automatically persisted in the DaVinci Project.
Instead all configuration changes are exported into an ARXML file by the DvC5Proxy generator. After each execution of the DvC5Proxy generator, a file Cfg5_Export_ModifiedElements_/ModificationDate/.arxml is created containing all project changes caused by DaVinci Configurator Classic Version 5 based generators.
Execute following steps to synchronize changes in configuration back to the DaVinci Project:
-
Generate the configuration using DaVinci Configurator Classic as described in Generate Your ECU Configuration.
-
Check if the file Cfg5_Export_ModifiedElements_/ModificationDate/.arxml contains changed configuration elements. In this case, import the changes into your project.
$ dvcfg-b import module -p="/Path/To/DaVinci/Project" -b="/Path/To/BSW/Package" "Path/To/OutputFolder/Cfg5_Export_ModifiedElements_/ModificationDate/.arxml"
Repeat above steps until no further changed elements are exported into the ARXML file during generation.
Please note that currently only the import of EcuC artefacts restricted to module configurations is supported. This might be sufficient for many, especially MCAL related, DaVinci Configurator Classic Version 5 based generators but does not cover all use cases in general. The overall import of changed configuration elements, including non-EcuC data like internal behavior and SWC elements, will be available in an upcoming release.
Support
In case the restricted import functionality does not fulfill your project requirements, please contact Vector Support to request assistance in updating your configuration.
In case the usability or performance of a MICROSAR BSW component with DaVinci Configurator Classic Version 5 based generator does not fulfill your expectations, please contact Vector Support to request the migration of the MICROSAR BSW component to DaVinci Configurator Classic Version 6.