foxBMS - Unit Tests  1.6.0
The foxBMS Unit Tests API Documentation
diag_cfg.c
Go to the documentation of this file.
1 /**
2  *
3  * @copyright © 2010 - 2023, Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V.
4  * All rights reserved.
5  *
6  * SPDX-License-Identifier: BSD-3-Clause
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions are met:
10  *
11  * 1. Redistributions of source code must retain the above copyright notice, this
12  * list of conditions and the following disclaimer.
13  *
14  * 2. Redistributions in binary form must reproduce the above copyright notice,
15  * this list of conditions and the following disclaimer in the documentation
16  * and/or other materials provided with the distribution.
17  *
18  * 3. Neither the name of the copyright holder nor the names of its
19  * contributors may be used to endorse or promote products derived from
20  * this software without specific prior written permission.
21  *
22  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
23  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
25  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
26  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
28  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
30  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32  *
33  * We kindly request you to use one or more of the following phrases to refer to
34  * foxBMS in your hardware, software, documentation or advertising materials:
35  *
36  * - ″This product uses parts of foxBMS®″
37  * - ″This product includes parts of foxBMS®″
38  * - ″This product is derived from foxBMS®″
39  *
40  */
41 
42 /**
43  * @file diag_cfg.c
44  * @author foxBMS Team
45  * @date 2019-11-28 (date of creation)
46  * @updated 2023-10-12 (date of last update)
47  * @version v1.6.0
48  * @ingroup ENGINE_CONFIGURATION
49  * @prefix DIAG
50  *
51  * @brief Diagnostic module configuration
52  *
53  * @details The configuration of the different diagnosis events defined in
54  * diag_cfg.h is set in the array diag_diagnosisIdConfiguration[],
55  * e.g., initialization errors or runtime errors.
56  *
57  * Every entry of the diag_diagnosisIdConfiguration[] array consists
58  * of
59  * - name of the diagnosis event (defined in diag_cfg.h)
60  * - type of diagnosis event
61  * - diagnosis sensitivity (after how many occurrences event is
62  * counted as error)
63  * - enabling of the recording for diagnosis event
64  * - enabling of the diagnosis event
65  * - callback function for diagnosis event if wished, otherwise
66  * DIAG_dummy_callback
67  *
68  * The system monitoring configuration defined in diag_cfg.h is set in
69  * the array sysm_ch_cfg[]. The system monitoring is at the moment
70  * only used for supervising the cyclic/periodic tasks.
71  *
72  * Every entry of the sysm_ch_cfg[] consists of
73  * - enum of monitored object
74  * - type of monitored object (at the moment only
75  * DIAG_SYSMON_CYCLICTASK is supported)
76  * - maximum delay in [ms] in which the object needs to call the
77  * SYSM_Notify function defined in diag.c
78  * - enabling of the recording for system monitoring
79  * - enabling of the system monitoring for the monitored object
80  * - callback function if system monitoring notices an error if
81  * wished, otherwise SYSM_DummyCallback
82  */
83 
84 /*========== Includes =======================================================*/
85 #include "general.h"
86 
87 #include "diag_cfg.h"
88 
89 #include "database.h"
90 #include "diag_cbs.h"
91 
92 #include <stdint.h>
93 
94 /*========== Macros and Definitions =========================================*/
95 /** value of #DIAG_ID_MAX (as a define for the pre-processor) */
96 #define DIAG_ID_MAX_FOR_INIT (85u)
97 
98 FAS_STATIC_ASSERT(DIAG_ID_MAX_FOR_INIT == (uint16_t)DIAG_ID_MAX, "Both values need to be identical.");
99 
100 /*========== Static Constant and Variable Definitions =======================*/
101 /** local copy of the #DATA_BLOCK_ERROR_STATE_s table */
103 
104 /** local copy of the #DATA_BLOCK_MOL_FLAG_s table */
106 
107 /** local copy of the #DATA_BLOCK_RSL_FLAG_s table */
109 
110 /** local copy of the #DATA_BLOCK_MSL_FLAG_s table */
112 
115  .pTableMol = &diag_tableMolFlags,
116  .pTableRsl = &diag_tableRslFlags,
117  .pTableMsl = &diag_tableMslFlags,
118 };
119 
120 /*========== Static Function Prototypes =====================================*/
121 
122 /*========== Extern Constant and Variable Definitions =======================*/
123 /** variable tracking the state of the diag channels */
125  /* clang-format off */
129 
131 
135 
139 
143 
147 
151 
155 
159 
163 
167 
171 
174 
176 
182 
183  /* Communication events */
206 
208 
211 
214 
220 
225 
228 
231 
233 
235 
237  /* clang-format on */
238 };
239 
242  .pConfigurationOfDiagnosisEntries = &diag_diagnosisIdConfiguration[0],
243  .numberOfFatalErrors = 0u,
244  .pFatalErrorLinkTable = {GEN_REPEAT_U(NULL_PTR, GEN_STRIP(DIAG_ID_MAX_FOR_INIT))},
245 };
246 
247 /*========== Static Function Implementations ================================*/
248 
249 /*========== Extern Function Implementations ================================*/
250 void DIAG_UpdateFlags(void) {
252 }
253 
254 /*========== Externalized Static Function Implementations (Unit Test) =======*/
255 #ifdef UNITY_UNIT_TEST
256 #endif
Database module header.
#define DATA_WRITE_DATA(...)
Definition: database.h:96
@ DATA_BLOCK_ID_ERROR_STATE
Definition: database_cfg.h:95
@ DATA_BLOCK_ID_RSL_FLAG
Definition: database_cfg.h:106
@ DATA_BLOCK_ID_MSL_FLAG
Definition: database_cfg.h:102
@ DATA_BLOCK_ID_MOL_FLAG
Definition: database_cfg.h:100
Diagnosis driver header.
void DIAG_ErrorCanTiming(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for CAN related events
Definition: diag_cbs_can.c:73
void DIAG_ErrorCurrentOnOpenString(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for overcurrent charge events
void DIAG_ErrorUndervoltage(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for undervoltage events
void DIAG_ErrorCanTxQueueFull(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for CAN Tx related events
Definition: diag_cbs_can.c:109
void DIAG_ErrorOvertemperatureDischarge(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for overtemperature discharge events
void DIAG_ErrorCurrentMeasurement(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for current measurement related events
void DIAG_ErrorPlausibility(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for plausibility check related events
void DIAG_ErrorAfe(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for AFE related events
Definition: diag_cbs_afe.c:72
void DIAG_PrechargeContactorFeedback(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for precharge contactor feedback related events
void DIAG_ErrorCurrentSensor(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for current sensor related events
void DIAG_AlertFlag(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for ALERT flag
Definition: diag_cbs_bms.c:73
void DIAG_ErrorUndertemperatureCharge(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for undertemperature charge events
void DIAG_PrechargeProcess(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for precharge abort reasons
Definition: diag_cbs_bms.c:92
void DIAG_ErrorDeepDischarge(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for deep discharge events
void DIAG_ErrorOvertemperatureCharge(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for overtemperature charge events
void DIAG_ErrorOvervoltage(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for overvoltage events
void DIAG_ErrorHighVoltageMeasurement(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for current sensor related events
void DIAG_DummyCallback(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
dummy callback function of diagnosis events
void DIAG_I2c(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for I2C port expander related events
Definition: diag_cbs_i2c.c:71
void DIAG_ErrorSystemMonitoring(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
Callback function for system monitoring related diagnosis events.
void DIAG_AerosolAlert(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for aerosol alert
void DIAG_StringContactorFeedback(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for string contactor feedback related events
void DIAG_ErrorUndertemperatureDischarge(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for undertemperature discharge events
void DIAG_ErrorAfeDriver(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for AFE module related events
Definition: diag_cbs_afe.c:127
void DIAG_ErrorPowerMeasurement(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for current sensor related events
void DIAG_ErrorOvercurrentCharge(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for overcurrent charge events
void DIAG_FramError(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for FRAM related events
Definition: diag_cbs_fram.c:72
void DIAG_PlausibilityCheck(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for plausibility check related events
void DIAG_Sbc(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for SBC related events
Definition: diag_cbs_sbc.c:72
void DIAG_ErrorInterlock(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
Callback function for interlock related diagnosis events.
void DIAG_ErrorOvercurrentDischarge(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for overcurrent discharge events
void DIAG_ErrorCanRxQueueFull(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for CAN Rx related events
Definition: diag_cbs_can.c:90
void DIAG_Insulation(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t stringNumber)
diagnosis callback function for the insulation measurement
void DIAG_Rtc(DIAG_ID_e diagId, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
diagnosis callback function for RTC related events
Definition: diag_cbs_rtc.c:71
static DATA_BLOCK_ERROR_STATE_s diag_tableErrorFlags
Definition: diag_cfg.c:102
#define DIAG_ID_MAX_FOR_INIT
Definition: diag_cfg.c:96
static DATA_BLOCK_MSL_FLAG_s diag_tableMslFlags
Definition: diag_cfg.c:111
static DATA_BLOCK_RSL_FLAG_s diag_tableRslFlags
Definition: diag_cfg.c:108
void DIAG_UpdateFlags(void)
update function for diagnosis flags
Definition: diag_cfg.c:250
DIAG_ID_CFG_s diag_diagnosisIdConfiguration[]
Definition: diag_cfg.c:124
static DATA_BLOCK_MOL_FLAG_s diag_tableMolFlags
Definition: diag_cfg.c:105
FAS_STATIC_ASSERT(DIAG_ID_MAX_FOR_INIT==(uint16_t) DIAG_ID_MAX, "Both values need to be identical.")
const DIAG_DATABASE_SHIM_s diag_kDatabaseShim
Definition: diag_cfg.c:113
DIAG_DEV_s diag_device
Definition: diag_cfg.c:240
Diagnostic module configuration header.
#define DIAG_ERROR_VOLTAGE_SENSITIVITY_RSL
Definition: diag_cfg.h:81
#define DIAG_ERROR_CURRENT_SENSITIVITY_MOL
Definition: diag_cfg.h:96
#define DIAG_ERROR_LTC_MUX_SENSITIVITY
Definition: diag_cfg.h:99
#define DIAG_DELAY_REDUNDANCY_MEAS_ERROR_ms
Definition: diag_cfg.h:159
#define DIAG_ERROR_SENSITIVITY_HIGH
Definition: diag_cfg.h:74
#define DIAG_DELAY_DEEP_DISCHARGE_ms
Definition: diag_cfg.h:155
#define DIAG_ERROR_INTERLOCK_SENSITIVITY
Definition: diag_cfg.h:78
#define DIAG_ERROR_CURRENT_SENSITIVITY_RSL
Definition: diag_cfg.h:94
#define DIAG_ERROR_TEMPERATURE_SENSITIVITY_RSL
Definition: diag_cfg.h:87
#define DIAG_ERROR_SENSITIVITY_FIFTH_EVENT
Definition: diag_cfg.h:71
#define DIAG_NO_DELAY
Definition: diag_cfg.h:129
#define DIAG_DELAY_TEMPERATURE_ms
Definition: diag_cfg.h:137
#define DIAG_DELAY_AFE_ms
Definition: diag_cfg.h:141
#define DIAG_DELAY_CONTACTOR_FEEDBACK_ms
Definition: diag_cfg.h:153
@ DIAG_EVALUATION_ENABLED
Definition: diag_cfg.h:274
#define DIAG_DELAY_INTERLOCK_ms
Definition: diag_cfg.h:131
#define DIAG_DELAY_OVERCURRENT_ms
Definition: diag_cfg.h:139
#define DIAG_ERROR_TEMPERATURE_SENSITIVITY_MOL
Definition: diag_cfg.h:89
#define DIAG_DELAY_REDUNDANCY_MEAS_TIMEOUT_ms
Definition: diag_cfg.h:157
#define DIAG_DELAY_PL_PACK_VOLTAGE_ms
Definition: diag_cfg.h:151
#define DIAG_ERROR_CAN_TIMING_CC_SENSITIVITY
Definition: diag_cfg.h:103
@ DIAG_WARNING
Definition: diag_cfg.h:309
@ DIAG_INFO
Definition: diag_cfg.h:310
@ DIAG_FATAL_ERROR
Definition: diag_cfg.h:308
#define DIAG_ERROR_CAN_SENSOR_SENSITIVITY
Definition: diag_cfg.h:104
#define DIAG_DELAY_EC_CC_TIMING_ms
Definition: diag_cfg.h:145
#define DIAG_ERROR_SENSITIVITY_TENTH_EVENT
Definition: diag_cfg.h:72
@ DIAG_ID_AFE_MUX
Definition: diag_cfg.h:182
@ DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_MSL
Definition: diag_cfg.h:205
@ DIAG_ID_POWER_MEASUREMENT_ERROR
Definition: diag_cfg.h:250
@ DIAG_ID_CELL_VOLTAGE_UNDERVOLTAGE_MSL
Definition: diag_cfg.h:199
@ DIAG_ID_PACK_OVERCURRENT_CHARGE_MSL
Definition: diag_cfg.h:226
@ DIAG_ID_I2C_RTC_ERROR
Definition: diag_cfg.h:256
@ DIAG_ID_OVERCURRENT_CHARGE_CELL_RSL
Definition: diag_cfg.h:215
@ DIAG_ID_CURRENT_SENSOR_V2_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:247
@ DIAG_ID_AFE_CELL_VOLTAGE_MEAS_ERROR
Definition: diag_cfg.h:191
@ DIAG_ID_CAN_CC_RESPONDING
Definition: diag_cfg.h:187
@ DIAG_ID_CURRENT_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:244
@ DIAG_ID_AFE_CELL_TEMPERATURE_MEAS_ERROR
Definition: diag_cfg.h:192
@ DIAG_ID_RTC_CLOCK_INTEGRITY_ERROR
Definition: diag_cfg.h:257
@ DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_MSL
Definition: diag_cfg.h:208
@ DIAG_ID_PLAUSIBILITY_CELL_TEMPERATURE_SPREAD
Definition: diag_cfg.h:195
@ DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_RSL
Definition: diag_cfg.h:206
@ DIAG_ID_STRING_OVERCURRENT_DISCHARGE_MOL
Definition: diag_cfg.h:225
@ DIAG_ID_INSULATION_MEASUREMENT_VALID
Definition: diag_cfg.h:251
@ DIAG_ID_STRING_OVERCURRENT_DISCHARGE_RSL
Definition: diag_cfg.h:224
@ DIAG_ID_PLAUSIBILITY_CELL_VOLTAGE_SPREAD
Definition: diag_cfg.h:194
@ DIAG_ID_BASE_CELL_TEMPERATURE_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:240
@ DIAG_ID_AFE_OPEN_WIRE
Definition: diag_cfg.h:230
@ DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_RSL
Definition: diag_cfg.h:212
@ DIAG_ID_CELL_VOLTAGE_UNDERVOLTAGE_RSL
Definition: diag_cfg.h:200
@ DIAG_ID_PLAUSIBILITY_PACK_VOLTAGE
Definition: diag_cfg.h:231
@ DIAG_ID_CELL_VOLTAGE_OVERVOLTAGE_MSL
Definition: diag_cfg.h:196
@ DIAG_ID_STRING_OVERCURRENT_CHARGE_RSL
Definition: diag_cfg.h:221
@ DIAG_ID_STRING_PLUS_CONTACTOR_FEEDBACK
Definition: diag_cfg.h:234
@ DIAG_ID_I2C_PEX_ERROR
Definition: diag_cfg.h:255
@ DIAG_ID_PLAUSIBILITY_CELL_VOLTAGE
Definition: diag_cfg.h:190
@ DIAG_ID_FLASHCHECKSUM
Definition: diag_cfg.h:177
@ DIAG_ID_PLAUSIBILITY_CELL_TEMP
Definition: diag_cfg.h:193
@ DIAG_ID_OVERCURRENT_DISCHARGE_CELL_MSL
Definition: diag_cfg.h:217
@ DIAG_ID_CONFIGASSERT
Definition: diag_cfg.h:179
@ DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_RSL
Definition: diag_cfg.h:209
@ DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_MOL
Definition: diag_cfg.h:207
@ DIAG_ID_STRING_OVERCURRENT_CHARGE_MSL
Definition: diag_cfg.h:220
@ DIAG_ID_STRING_MINUS_CONTACTOR_FEEDBACK
Definition: diag_cfg.h:233
@ DIAG_ID_STRING_OVERCURRENT_CHARGE_MOL
Definition: diag_cfg.h:222
@ DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_MSL
Definition: diag_cfg.h:202
@ DIAG_ID_AFE_COM_INTEGRITY
Definition: diag_cfg.h:181
@ DIAG_ID_CURRENT_SENSOR_POWER_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:249
@ DIAG_ID_BASE_CELL_VOLTAGE_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:238
@ DIAG_ID_SYSTEM_MONITORING
Definition: diag_cfg.h:178
@ DIAG_ID_CELL_VOLTAGE_OVERVOLTAGE_RSL
Definition: diag_cfg.h:197
@ DIAG_ID_INSULATION_GROUND_ERROR
Definition: diag_cfg.h:254
@ DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_MOL
Definition: diag_cfg.h:204
@ DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_MOL
Definition: diag_cfg.h:210
@ DIAG_ID_FRAM_READ_CRC_ERROR
Definition: diag_cfg.h:259
@ DIAG_ID_PRECHARGE_ABORT_REASON_CURRENT
Definition: diag_cfg.h:243
@ DIAG_ID_MAX
Definition: diag_cfg.h:262
@ DIAG_ID_SBC_RSTB_STATE
Definition: diag_cfg.h:237
@ DIAG_ID_PRECHARGE_CONTACTOR_FEEDBACK
Definition: diag_cfg.h:235
@ DIAG_ID_CAN_TIMING
Definition: diag_cfg.h:184
@ DIAG_ID_RTC_BATTERY_LOW_ERROR
Definition: diag_cfg.h:258
@ DIAG_ID_PACK_OVERCURRENT_DISCHARGE_MSL
Definition: diag_cfg.h:227
@ DIAG_ID_CURRENT_SENSOR_V1_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:246
@ DIAG_ID_DEEP_DISCHARGE_DETECTED
Definition: diag_cfg.h:229
@ DIAG_ID_CURRENT_SENSOR_V3_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:248
@ DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_MOL
Definition: diag_cfg.h:213
@ DIAG_ID_PRECHARGE_ABORT_REASON_VOLTAGE
Definition: diag_cfg.h:242
@ DIAG_ID_SBC_FIN_STATE
Definition: diag_cfg.h:236
@ DIAG_ID_CELL_VOLTAGE_UNDERVOLTAGE_MOL
Definition: diag_cfg.h:201
@ DIAG_ID_LOW_INSULATION_RESISTANCE_ERROR
Definition: diag_cfg.h:252
@ DIAG_ID_CELL_VOLTAGE_OVERVOLTAGE_MOL
Definition: diag_cfg.h:198
@ DIAG_ID_CURRENT_ON_OPEN_STRING
Definition: diag_cfg.h:228
@ DIAG_ID_STRING_OVERCURRENT_DISCHARGE_MSL
Definition: diag_cfg.h:223
@ DIAG_ID_REDUNDANCY0_CELL_VOLTAGE_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:239
@ DIAG_ID_OVERCURRENT_CHARGE_CELL_MSL
Definition: diag_cfg.h:214
@ DIAG_ID_OVERCURRENT_DISCHARGE_CELL_MOL
Definition: diag_cfg.h:219
@ DIAG_ID_CURRENT_SENSOR_RESPONDING
Definition: diag_cfg.h:189
@ DIAG_ID_CURRENT_MEASUREMENT_ERROR
Definition: diag_cfg.h:245
@ DIAG_ID_CAN_RX_QUEUE_FULL
Definition: diag_cfg.h:185
@ DIAG_ID_AEROSOL_ALERT
Definition: diag_cfg.h:261
@ DIAG_ID_AFE_SPI
Definition: diag_cfg.h:180
@ DIAG_ID_OVERCURRENT_CHARGE_CELL_MOL
Definition: diag_cfg.h:216
@ DIAG_ID_CAN_EC_RESPONDING
Definition: diag_cfg.h:188
@ DIAG_ID_ALERT_MODE
Definition: diag_cfg.h:260
@ DIAG_ID_CAN_TX_QUEUE_FULL
Definition: diag_cfg.h:186
@ DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_RSL
Definition: diag_cfg.h:203
@ DIAG_ID_INTERLOCK_FEEDBACK
Definition: diag_cfg.h:232
@ DIAG_ID_OVERCURRENT_DISCHARGE_CELL_RSL
Definition: diag_cfg.h:218
@ DIAG_ID_AFE_CONFIG
Definition: diag_cfg.h:183
@ DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_MSL
Definition: diag_cfg.h:211
@ DIAG_ID_REDUNDANCY0_CELL_TEMPERATURE_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:241
@ DIAG_ID_LOW_INSULATION_RESISTANCE_WARNING
Definition: diag_cfg.h:253
#define DIAG_CAN_TIMING
Value that is written into the field that describes whether CAN timing diag entries should be generat...
Definition: diag_cfg.h:290
#define DIAG_ERROR_CURRENT_SENSITIVITY_MSL
Definition: diag_cfg.h:92
#define DIAG_ERROR_LTC_PEC_SENSITIVITY
Definition: diag_cfg.h:98
#define DIAG_DELAY_OVERVOLTAGE_ms
Definition: diag_cfg.h:133
#define DIAG_CAN_SENSOR_PRESENT
Value that is written into the field that describes whether current sensor diag entries should be gen...
Definition: diag_cfg.h:301
#define DIAG_DELAY_SBC_ms
Definition: diag_cfg.h:149
#define DIAG_DELAY_DISCARDED
Definition: diag_cfg.h:127
#define DIAG_ERROR_VOLTAGE_SENSITIVITY_MOL
Definition: diag_cfg.h:82
#define DIAG_ERROR_TEMPERATURE_SENSITIVITY_MSL
Definition: diag_cfg.h:85
#define DIAG_ERROR_CAN_TIMING_SENSITIVITY
Definition: diag_cfg.h:102
#define DIAG_ERROR_SENSITIVITY_FIRST_EVENT
Definition: diag_cfg.h:69
#define DIAG_ERROR_CONTACTOR_FEEDBACK_SENSITIVITY
Definition: diag_cfg.h:114
#define DIAG_DELAY_CAN_TIMING_ms
Definition: diag_cfg.h:143
#define DIAG_DELAY_CURRENT_SENSOR_ms
Definition: diag_cfg.h:147
#define DIAG_DELAY_UNDERVOLTAGE_ms
Definition: diag_cfg.h:135
#define DIAG_ERROR_LTC_SPI_SENSITIVITY
Definition: diag_cfg.h:100
@ DIAG_RECORDING_ENABLED
Definition: diag_cfg.h:315
#define DIAG_ERROR_VOLTAGE_SENSITIVITY_MSL
Definition: diag_cfg.h:80
#define NULL_PTR
Null pointer.
Definition: fstd_types.h:77
General macros and definitions for the whole platform.
#define GEN_REPEAT_U(x, n)
Macro that helps to generate a series of literals (for array initializers).
Definition: general.h:250
#define GEN_STRIP(x)
Definition: general.h:261
DATA_BLOCK_HEADER_s header
Definition: database_cfg.h:337
DATA_BLOCK_ID_e uniqueId
Definition: database_cfg.h:125
DATA_BLOCK_HEADER_s header
Definition: database_cfg.h:497
DATA_BLOCK_HEADER_s header
Definition: database_cfg.h:455
DATA_BLOCK_HEADER_s header
Definition: database_cfg.h:477
DATA_BLOCK_ERROR_STATE_s * pTableError
Definition: diag_cfg.h:166
uint8_t nrOfConfiguredDiagnosisEntries
Definition: diag_cfg.h:353