RTA Knowledge Base

Introduction

Scope

This application note describes how to integrate the RTA-SUM ERRH module in your RTA-CAR project. The ERRH module is an ASW module that:

  • Collects all the error events from the SUM and BSW modules
  • Does conditional checking of these events for DTC setting and event suppression
  • Debouncing of events and notifies Dem of these event statuses   
  • Conditional checks for clearing DTCs that are requested by the Dcm

Prerequisites

  • The user should read the RTA-SUM_ERRH_User_Guide.pdf available in the RTA-SUM package.
  • It is assumed you have followed the 1. SUM Integration - Getting started to install the RTA-SUM plugin.
  • In order to successfully follow this guide, you shall have the RTA-CAR toolchain installed and you must be familiar with the AUTOSAR specifications, terminology and methodology. You also must be familiar with the GM specification and GM-SUM modules functionalities.


The ERRH module integration depends on the below SUM modules being integrated in the project:

  • PNC - a working PNC project is recommended.

A working project with the following modules is also recommended, since the ERRH is linked with them:

  • Dem
  • Dcm
  • Nvm
  • SUSD (SUM)
  • LNM (SUM)
  • SSC (SUM)
  • SSM (SUM)

ERRH Configuration

If you haven't had already, create an Errh module by following the generic SUM guide.

It is important to note that when modifying the configuration for the ERRH that you perform the changes in the correct .arxml file, to ensure configurations relating to the module are tracked in a module-specific file. It is also recommended that generic SUM configurations are inserted into an .arxml file labelled with the following format: "<Module>_SUM_EcucValues.arxml". See the image below for an example.


Note: The ErrhGeneral and Errh_C_Params containers are the only mandatory containers. The integrator can configure the containers under ErrhConfigSets incrementally, no need to configure them all in the initial integration.

ERRH Calibration Configuration Parameters

Firstly configure the parameters in Errh_C_Params according to your Partial Network, Low Voltage Battery and diagnostic configuration. For details regarding the specific parameters refer to the ERRH module User Guide. See the image below for an example configuration.


ERRHConfigSet

  • ERRH needs to reference the WdgMCheckPoint configured for it so that it creates the relevant ports.

BswErrors

The BswErrors are collections/aggregates of BSW production error events that come from the Dem module.

To create BswErrors right click ErrhConfigSet > New Child > BswError.

Choose the filter type and the thresholds related to the filter type, where X is the number of BSW event errors needed to set the related DTC, and Y is the number of counts/time the BSW event errors require to set the related DTC.

The DemEvent reference needs to be taken from a DemEventParameter in the Dem module, which needs to have a DemDTC and its related parameters configured. 

CanChannel

In order to manage BUS_OFF faults, it is also necessary to add the required references. For each Can channel available, configure the relevant DemEvent and Can_Channel as shown in the example below.

DtcConfigs

Any error events that are linked to the ERRH need to have a corresponding DtcConfig that maps to their DTCs.

To create a new one, right click > Create DtcConfigs.


The DtcConfig FaultType is project specific; refer to GB6001 for a definition of the types. The DTCRef reference needs to be taken from a DemDTC in the Dem module.

Please note that DTCConfigs container at a minimum should contain 1 (one) DTCConfig, for DTCTriggered be updated in Runnable_DTCsManagement

SumErrors

SUM specific errors are handled in SumErrors.

SUSD RunCrank faults are managed by the ERRH.

Below is an example of a SUSD DemEvent reference that is taken from a DemEventParameter in the Dem module, which needs to have a DemDTC and its related parameters configured.

The ERRH also handles SSM faults, when linked to the Authenticated Messages managed by the SSC module. An example of configuration is shown below (keep in mind that both SSC and SSM are required for this configuration):

Node loss events are configured in their own container "NodeLossErrors", collected separately depending on whether they are LNM managed or SSM managed. For each node a sub-container needs to created; a sample configuration is shown below, with the relevant Dem event referenced:

The SSCErrors container collects the specific errors linked to the SSC module security features. It is possible to configure MAC Generate, MAC Verify and Key Slot Verify faults under the respective containers; a sample configuration is shown below for each one.

MAC Generate errors require the configuration of the Dem Event referenced and, optionally, the filter definition, similarly to previous fault:

MAC Verify errors' configuration mirrors the Generate one:

Key Slot Verify errors require the configuration of not only the Dem Event referenced, but also of the FailedAuthenticationCounter and the QueueLength. Is is also important to set the KSV FilterType, as shown below:

General ERRH Configuration

Below is an example of an ErrhGeneral configuration. Errh_ComMPNCRef references a ComMPnc container in the ComM module, which should have been created as part of a PNC (Partial Network Cluster) project.


Build the ERRH Module

Now it is possible to run the ERRH Build by following the SUM Generation section of RTA-CAR 9.2.1 - 1. SUM Integration - Getting started.

Configuration of BSW

BswM Configuration

Firstly make sure to add the ERRH module's header file in the BswMUserIncludeFiles container under BswMGeneral:

A runnable needs to be referenced in the BswM to initialize the ERRH module.  

To do this a BswMAction needs to be created to then create the Init function in a BswMUserCallout container.

Then an ActionListItem that is linked to this BswMAction initialisation function needs to be created, so that it can be invoked as part of a BswM Rule. 

To allow the ERRH to control the enabling/disabling of DTC setting, start by adding the following DataTypeMappingSets:

Then create a switch port, referencing the ERRH's ModeGroupRef dedicated to DTC handling:


Next step is the creation of required Action Items and Action Lists, and referencing the Switch Port just created. Below you can find a sample configuration, for the enabling/disabling of both Dtcs:

Then create a ModeRequestPort to interface with the ERRH mode changes:


Set up the necessary Arbitration rules to manage the DTC setting. Refer to the example below:

Finally add a new port to the DCM, through which it will access the interface ServiceRequestNotification:

Dem Configuration

The ERRH interacts and relies on the Dem events to perform its functions. DTCs and their Attributes are defined here, with their linked Dem Events.

An example for an SSM_FailedSafety event is shown below:

Finally set up the DemEvent that will interface with the ERRH module:


For BswErrors the ERRH gets notified if Dem event status changes through Port GeneralCBStatusEvt(a connection to this port between ERRH and Dem is required).

The parameter DemGeneralInterfaceSupport needs to be set to "true" see below to get Dem to make the port GeneralCBStatusEvt available


GeneralCBStatusEvt  is only triggered for Dem Events that have a DemCallbackEventStatusChangedRBRef configured.


Each event will need its own DemCallbackEventStatusChangedRB (no DemCallbackEventStatusChangedFnc is configured for DemCallbackEventStatusChanged so that Dem provides an RTE port instead).

For a complete sample configuration please refer to the RIP, particularly at DEM_ ERRH_EcucValues.arxml.

Generate BSW

Generate the BSW code to create the interfaces between the ERRH, BSW and SUM modules. 

ASW and System Update

Now the BSW and the ERRH configuration is completed. The next step is to update the ASW adding the ERRH to the composition and creating the connections with the other SWC (ASW, DEM, DCM, other SUMs).

An example might be the ERRH, that needs to be connected to the SUSD for the PermitExecution and the ShutdownPermission signals (please refer to the SUSD and ERRH User Guide for further information).

If project specific conditions are required to start the Operation Cycle, the integrator should provide some integration code and provide a PPort to connect to the SWC_ERRH_OperationCycle_EnableConditions port.

How to create the connections is out of the scope of this AN. Please consult the RTA-CAR Guides for more information.

In the RIP we also added a test SWC to test the ERRH functionalities.

Now you can:

  1. Update all the connections in the ASW composition
  2. Add the SWC to the ECU Mapping using the "SWC To ECU Mapping Editor"
  3. Map the new signals in the Signal Mapping Editor
  4. Regenerate the Ecu Extract
  5. Update the RTE Configuration mapping the new runnables to the Tasks

BSW/RTE/OS generation

The last steps are:

  1. Run the BSW Code Generator
  2. Regenerate the RTE
  3. Generate OS

Integration with the ERRH is complete.



  • No labels