foxBMS-UnitTests  1.0.0
The foxBMS Unit Tests API Documentation
diag_cfg.h
Go to the documentation of this file.
1 /**
2  *
3  * @copyright © 2010 - 2021, Fraunhofer-Gesellschaft zur Foerderung der
4  * angewandten Forschung e.V. All rights reserved.
5  *
6  * BSD 3-Clause License
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions are met:
9  * 1. Redistributions of source code must retain the above copyright notice,
10  * this list of conditions and the following disclaimer.
11  * 2. Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in the
13  * documentation and/or other materials provided with the distribution.
14  * 3. Neither the name of the copyright holder nor the names of its
15  * contributors may be used to endorse or promote products derived from
16  * this software without specific prior written permission.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28  * POSSIBILITY OF SUCH DAMAGE.
29  *
30  * We kindly request you to use one or more of the following phrases to refer
31  * to foxBMS in your hardware, software, documentation or advertising
32  * materials:
33  *
34  * ″This product uses parts of foxBMS®″
35  *
36  * ″This product includes parts of foxBMS®″
37  *
38  * ″This product is derived from foxBMS®″
39  *
40  */
41 
42 /**
43  * @file diag_cfg.h
44  * @author foxBMS Team
45  * @date 2019-11-28 (date of creation)
46  * @updated 2021-03-24 (date of last update)
47  * @ingroup ENGINE_CONFIGURATION
48  * @prefix DIAG
49  *
50  * @brief Diagnostic module configuration header
51  * @details In this header filer are the different diagnosis channel defines
52  * assigned to different diagnosis IDs. Furthermore are the diagnosis
53  * error log settings be configured here.
54  */
55 
56 #ifndef FOXBMS__DIAG_CFG_H_
57 #define FOXBMS__DIAG_CFG_H_
58 
59 /*========== Includes =======================================================*/
60 #include "general.h"
61 
62 #include "battery_system_cfg.h"
63 #include "database_cfg.h"
64 
65 /*========== Macros and Definitions =========================================*/
66 /** length of the entry #DIAG_ID_CFG_s::description */
67 #define DIAG_DESCRIPTION_LENGTH (40)
68 
69 #define DIAG_ERROR_SENSITIVITY_FIRST_EVENT (0) /*!< logging at first event */
70 #define DIAG_ERROR_SENSITIVITY_THIRD_EVENT (2) /*!< logging at first event */
71 #define DIAG_ERROR_SENSITIVITY_FIFTH_EVENT (4) /*!< logging at first event */
72 #define DIAG_ERROR_SENSITIVITY_TENTH_EVENT (9) /*!< logging at tenth event */
73 
74 #define DIAG_ERROR_SENSITIVITY_HIGH (0) /*!< logging at first event */
75 #define DIAG_ERROR_SENSITIVITY_MID (5) /*!< logging at fifth event */
76 #define DIAG_ERROR_SENSITIVITY_LOW (10) /*!< logging at tenth event */
77 
78 #define DIAG_ERROR_INTERLOCK_SENSITIVITY (10) /*!< logging level of interlock */
79 
80 #define DIAG_ERROR_VOLTAGE_SENSITIVITY_MSL (500) /*!< MSL level for event occurrence if over/under voltage event */
81 #define DIAG_ERROR_VOLTAGE_SENSITIVITY_RSL (500) /*!< RSL level for event occurrence if over/under voltage event */
82 #define DIAG_ERROR_VOLTAGE_SENSITIVITY_MOL (500) /*!< MOL level for event occurrence if over/under voltage event */
83 
84 /** MSL level for event occurrence if over/under temperature event */
85 #define DIAG_ERROR_TEMPERATURE_SENSITIVITY_MSL (500)
86 /** RSL level for event occurrence if over/under temperature event */
87 #define DIAG_ERROR_TEMPERATURE_SENSITIVITY_RSL (500)
88 /** MOL level for event occurrence if over/under temperature event */
89 #define DIAG_ERROR_TEMPERATURE_SENSITIVITY_MOL (500)
90 
91 /** MSL level for event occurrence if over/under current event */
92 #define DIAG_ERROR_CURRENT_SENSITIVITY_MSL (500)
93 /** RSL level for event occurrence if over/under current event */
94 #define DIAG_ERROR_CURRENT_SENSITIVITY_RSL (500)
95 /** MOL level for event occurrence if over/under current event */
96 #define DIAG_ERROR_CURRENT_SENSITIVITY_MOL (500)
97 
98 #define DIAG_ERROR_LTC_PEC_SENSITIVITY (5) /*!< logging level of LTC PEC errors */
99 #define DIAG_ERROR_LTC_MUX_SENSITIVITY (5) /*!< logging level of LTC MUX errors */
100 #define DIAG_ERROR_LTC_SPI_SENSITIVITY (5) /*!< logging level of LTC SPI errors */
101 
102 #define DIAG_ERROR_CAN_TIMING_SENSITIVITY (100) /*!< logging level of CAN timing errors */
103 #define DIAG_ERROR_CAN_TIMING_CC_SENSITIVITY (100) /*!< logging level of CAN timing errors on the current sensor */
104 #define DIAG_ERROR_CAN_SENSOR_SENSITIVITY (100) /*!< logging level of CAN errors on the current sensor */
105 
106 /** logging level of errors connected with the contactor feedback */
107 #define DIAG_ERROR_CONTACTOR_FEEDBACK_SENSITIVITY (20)
108 
109 /** Maximum number of the same errors that are logged */
110 #define DIAG_MAX_ENTRIES_OF_ERROR (5)
111 
112 /** composite type for storing and passing on the local database table handles */
113 typedef struct DIAG_DATABASE_SHIM {
114  DATA_BLOCK_ERRORSTATE_s *pTableError; /*!< database table with errorstates */
115  DATA_BLOCK_MOL_FLAG_s *pTableMol; /*!< database table with MOL flags */
116  DATA_BLOCK_RSL_FLAG_s *pTableRsl; /*!< database table with RSL flags */
117  DATA_BLOCK_MSL_FLAG_s *pTableMsl; /*!< database table with MSL flags */
119 
120 /** variable for storing and passing on the local database table handles */
122 
123 /** list of diag IDs */
124 typedef enum DIAG_ID {
125  DIAG_ID_FLASHCHECKSUM, /**< TODO */
127  DIAG_ID_CONFIGASSERT, /**< TODO*/
142  DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_MSL, /* Cell voltage limits violated */
143  DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_RSL, /* Cell voltage limits violated */
144  DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_MOL, /* Cell voltage limits violated */
145  DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_MSL, /* Cell voltage limits violated */
146  DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_RSL, /* Cell voltage limits violated */
147  DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_MOL, /* Cell voltage limits violated */
148  DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_MSL, /* Temperature limits violated */
149  DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_RSL, /* Temperature limits violated */
150  DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_MOL, /* Temperature limits violated */
151  DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_MSL, /* Temperature limits violated */
152  DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_RSL, /* Temperature limits violated */
153  DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_MOL, /* Temperature limits violated */
154  DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_MSL, /* Temperature limits violated */
155  DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_RSL, /* Temperature limits violated */
156  DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_MOL, /* Temperature limits violated */
157  DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_MSL, /* Temperature limits violated */
158  DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_RSL, /* Temperature limits violated */
159  DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_MOL, /* Temperature limits violated */
160  DIAG_ID_OVERCURRENT_CHARGE_CELL_MSL, /* Overcurrent on cell-level */
161  DIAG_ID_OVERCURRENT_CHARGE_CELL_RSL, /* Overcurrent on cell-level */
162  DIAG_ID_OVERCURRENT_CHARGE_CELL_MOL, /* Overcurrent on cell-level */
163  DIAG_ID_OVERCURRENT_DISCHARGE_CELL_MSL, /* Overcurrent on cell-level */
164  DIAG_ID_OVERCURRENT_DISCHARGE_CELL_RSL, /* Overcurrent on cell-level */
165  DIAG_ID_OVERCURRENT_DISCHARGE_CELL_MOL, /* Overcurrent on cell-level */
166  DIAG_ID_STRING_OVERCURRENT_CHARGE_MSL, /* Overcurrent on string-level */
167  DIAG_ID_STRING_OVERCURRENT_CHARGE_RSL, /* Overcurrent on string-level */
168  DIAG_ID_STRING_OVERCURRENT_CHARGE_MOL, /* Overcurrent on string-level */
169  DIAG_ID_STRING_OVERCURRENT_DISCHARGE_MSL, /* Overcurrent on string-level */
170  DIAG_ID_STRING_OVERCURRENT_DISCHARGE_RSL, /* Overcurrent on string-level */
171  DIAG_ID_STRING_OVERCURRENT_DISCHARGE_MOL, /* Overcurrent on string-level */
172  DIAG_ID_PACK_OVERCURRENT_CHARGE_MSL, /* Overcurrent on string-level */
173  DIAG_ID_PACK_OVERCURRENT_DISCHARGE_MSL, /* Overcurrent on pack-level */
174  DIAG_ID_CURRENT_ON_OPEN_STRING, /* Current flowing on open string */
196  DIAG_ID_MAX, /**< MAX indicator - do not change */
198 
199 /** diagnosis check result (event) */
200 typedef enum DIAG_EVENT {
201  DIAG_EVENT_OK, /**< diag channel event OK */
202  DIAG_EVENT_NOT_OK, /**< diag channel event NOK */
203  DIAG_EVENT_RESET, /**< reset diag channel eventcounter to 0 */
205 
206 /** enable or disable the diagnosis handling for an event */
207 typedef enum DIAG_EVALUATE {
208  DIAG_EVALUATION_ENABLED, /**< enables evaluation of diagnosis handling */
209  DIAG_EVALUATION_DISABLED, /**< disables evaluation of diagnosis handling */
211 
212 /** impact level of diagnosis event, e.g., influences the event the whole system or only a string */
213 typedef enum DIAG_IMPACT_LEVEL {
214  DIAG_SYSTEM, /**< diag event impact is system related e.g., can timing */
215  DIAG_STRING, /**< diag event impact is string related e.g., overvoltage in string x */
217 
218 /**
219  * @def DIAG_CAN_TIMING
220  * @brief Value that is written into the field that describes whether CAN
221  * timing diag entries should be generated
222  */
223 #if CHECK_CAN_TIMING == true
224 #define DIAG_CAN_TIMING (DIAG_EVALUATION_ENABLED)
225 #else
226 #define DIAG_CAN_TIMING (DIAG_EVALUATION_DISABLED)
227 #endif
228 
229 /**
230  * @def DIAG_CAN_SENSOR_PRESENT
231  * @brief Value that is written into the field that describes whether current
232  * sensor diag entries should be generated if it is not present
233  */
234 #if CURRENT_SENSOR_PRESENT == true
235 #define DIAG_CAN_SENSOR_PRESENT (DIAG_EVALUATION_ENABLED)
236 #else /* CURRENT_SENSOR_PRESENT == true */
237 #define DIAG_CAN_SENSOR_PRESENT (DIAG_EVALUATION_DISABLED)
238 #endif /* CURRENT_SENSOR_PRESENT */
239 
240 /** diagnosis recording activation */
241 typedef enum DIAG_RECORDING {
242  DIAG_RECORDING_ENABLED, /**< enable diagnosis event recording */
243  DIAG_RECORDING_DISABLED, /**< disable diagnosis event recording */
245 
246 /**
247  * @brief function type for diag callbacks
248  * @param[in] ch_id ID of diag entry
249  * @param[in] event #DIAG_EVENT_e
250  * @param[in] kpkDiagShim shim to the database entries
251  * @param[in] data data
252  */
254  DIAG_ID_e ch_id,
255  DIAG_EVENT_e event,
256  const DIAG_DATABASE_SHIM_s *const kpkDiagShim,
257  uint32_t data);
258 
259 /** Channel configuration of one diag channel */
260 typedef struct DIAG_CH_CFG {
261  DIAG_ID_e id; /**< diagnosis event id diag_id */
262  uint8_t description[DIAG_DESCRIPTION_LENGTH]; /**< description of the id */
263  uint16_t threshold; /**< threshold for number of events which will be
264  * tolerated before generating a notification in both directions:
265  * threshold = 0: reports the value at first occurrence,
266  * threshold = 1: reports the value at second occurrence */
267  DIAG_RECORDING_e enable_recording; /**< if enabled recording in diag_memory * will be activated */
268  DIAG_EVALUATE_e enable_evaluate; /**< if enabled diagnosis event will be evaluated */
269  DIAG_CALLBACK_FUNCTION_f *fpCallback; /**< will be called if
270  * number of events exceeds threshold in both
271  * directions with parameter DIAG_EVENT_e
272  * string id or system related data */
274 
275 /** struct for device Configuration of diag module */
276 typedef struct DIAG_DEV {
277  uint8_t nr_of_ch; /*!< number of entries in DIAG_ID_CFG_s */
278  DIAG_ID_CFG_s *ch_cfg; /*!< pointer to diag channel config struct */
280 
281 /*========== Extern Constant and Variable Declarations ======================*/
282 /** diag device configuration struct */
283 extern DIAG_DEV_s diag_device;
285 
286 /*========== Extern Function Prototypes =====================================*/
287 /**
288  * @brief update function for diagnosis flags
289  * @details TODO
290  */
291 extern void DIAG_UpdateFlags(void);
292 
293 /*========== Externalized Static Functions Prototypes (Unit Test) ===========*/
294 
295 #endif /* FOXBMS__DIAG_CFG_H_ */
DATA_BLOCK_MOL_FLAG
Definition: database_cfg.h:465
DIAG_IMPACT_LEVEL_e
enum DIAG_IMPACT_LEVEL DIAG_IMPACT_LEVEL_e
DIAG_RECORDING
DIAG_RECORDING
Definition: diag_cfg.h:241
DIAG_EVALUATION_ENABLED
@ DIAG_EVALUATION_ENABLED
Definition: diag_cfg.h:208
general.h
TODO.
DIAG_ID_PACK_OVERCURRENT_CHARGE_MSL
@ DIAG_ID_PACK_OVERCURRENT_CHARGE_MSL
Definition: diag_cfg.h:172
DIAG_ID_CAN_EC_RESPONDING
@ DIAG_ID_CAN_EC_RESPONDING
Definition: diag_cfg.h:134
DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_MSL
@ DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_MSL
Definition: diag_cfg.h:145
DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_MOL
@ DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_MOL
Definition: diag_cfg.h:144
diag_device
DIAG_DEV_s diag_device
Definition: diag_cfg.c:207
DIAG_DATABASE_SHIM
Definition: diag_cfg.h:113
DIAG_ID_STRING_OVERCURRENT_CHARGE_MOL
@ DIAG_ID_STRING_OVERCURRENT_CHARGE_MOL
Definition: diag_cfg.h:168
DIAG_DESCRIPTION_LENGTH
#define DIAG_DESCRIPTION_LENGTH
Definition: diag_cfg.h:67
DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_MSL
@ DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_MSL
Definition: diag_cfg.h:157
DIAG_ID_OVERCURRENT_CHARGE_CELL_MSL
@ DIAG_ID_OVERCURRENT_CHARGE_CELL_MSL
Definition: diag_cfg.h:160
DIAG_ID_OVERCURRENT_CHARGE_CELL_RSL
@ DIAG_ID_OVERCURRENT_CHARGE_CELL_RSL
Definition: diag_cfg.h:161
DIAG_CALLBACK_FUNCTION_f
void DIAG_CALLBACK_FUNCTION_f(DIAG_ID_e ch_id, DIAG_EVENT_e event, const DIAG_DATABASE_SHIM_s *const kpkDiagShim, uint32_t data)
function type for diag callbacks
Definition: diag_cfg.h:253
DIAG_ID_SBC_RSTB_STATE
@ DIAG_ID_SBC_RSTB_STATE
Definition: diag_cfg.h:182
DIAG_ID_CONFIGASSERT
@ DIAG_ID_CONFIGASSERT
Definition: diag_cfg.h:127
DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_MSL
@ DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_MSL
Definition: diag_cfg.h:154
DIAG_CH_CFG
Definition: diag_cfg.h:260
DIAG_CH_CFG::threshold
uint16_t threshold
Definition: diag_cfg.h:263
DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_MSL
@ DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_MSL
Definition: diag_cfg.h:142
battery_system_cfg.h
Configuration of the battery system (e.g., number of battery modules, battery cells,...
DIAG_ID_PLAUSIBILITY_CELL_TEMPERATURE_SPREAD
@ DIAG_ID_PLAUSIBILITY_CELL_TEMPERATURE_SPREAD
Definition: diag_cfg.h:141
DIAG_DEV_s
struct DIAG_DEV DIAG_DEV_s
DIAG_ID_STRING_OVERCURRENT_CHARGE_RSL
@ DIAG_ID_STRING_OVERCURRENT_CHARGE_RSL
Definition: diag_cfg.h:167
DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_MSL
@ DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_MSL
Definition: diag_cfg.h:148
DIAG_CH_CFG::description
uint8_t description[DIAG_DESCRIPTION_LENGTH]
Definition: diag_cfg.h:262
DIAG_EVENT_OK
@ DIAG_EVENT_OK
Definition: diag_cfg.h:201
DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_RSL
@ DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_RSL
Definition: diag_cfg.h:149
DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_MOL
@ DIAG_ID_TEMP_OVERTEMPERATURE_CHARGE_MOL
Definition: diag_cfg.h:150
DIAG_DEV::nr_of_ch
uint8_t nr_of_ch
Definition: diag_cfg.h:277
DIAG_EVENT_RESET
@ DIAG_EVENT_RESET
Definition: diag_cfg.h:203
DIAG_ID_CURRENT_SENSOR_RESPONDING
@ DIAG_ID_CURRENT_SENSOR_RESPONDING
Definition: diag_cfg.h:135
DIAG_EVALUATE
DIAG_EVALUATE
Definition: diag_cfg.h:207
DIAG_ID_INSULATION_GROUND_ERROR
@ DIAG_ID_INSULATION_GROUND_ERROR
Definition: diag_cfg.h:195
DIAG_ID_SBC_FIN_STATE
@ DIAG_ID_SBC_FIN_STATE
Definition: diag_cfg.h:181
DIAG_ID_STRING_OVERCURRENT_DISCHARGE_RSL
@ DIAG_ID_STRING_OVERCURRENT_DISCHARGE_RSL
Definition: diag_cfg.h:170
DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_MOL
@ DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_MOL
Definition: diag_cfg.h:153
diag_kDatabaseShim
const DIAG_DATABASE_SHIM_s diag_kDatabaseShim
Definition: diag_cfg.c:99
DIAG_RECORDING_e
enum DIAG_RECORDING DIAG_RECORDING_e
DIAG_ID_e
enum DIAG_ID DIAG_ID_e
DIAG_ID_STRING_OVERCURRENT_CHARGE_MSL
@ DIAG_ID_STRING_OVERCURRENT_CHARGE_MSL
Definition: diag_cfg.h:166
DIAG_ID_OPEN_WIRE
@ DIAG_ID_OPEN_WIRE
Definition: diag_cfg.h:176
DIAG_ID_REDUNDANCY0_CELL_TEMPERATURE_MESUREMENT_TIMEOUT
@ DIAG_ID_REDUNDANCY0_CELL_TEMPERATURE_MESUREMENT_TIMEOUT
Definition: diag_cfg.h:186
DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_MOL
@ DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_MOL
Definition: diag_cfg.h:156
DIAG_ID_PRECHARGE_CONTACTOR_FEEDBACK
@ DIAG_ID_PRECHARGE_CONTACTOR_FEEDBACK
Definition: diag_cfg.h:180
DIAG_ID_REDUNDANCY0_CELL_VOLTAGE_MESUREMENT_TIMEOUT
@ DIAG_ID_REDUNDANCY0_CELL_VOLTAGE_MESUREMENT_TIMEOUT
Definition: diag_cfg.h:184
DIAG_STRING
@ DIAG_STRING
Definition: diag_cfg.h:215
DIAG_SYSTEM
@ DIAG_SYSTEM
Definition: diag_cfg.h:214
DIAG_RECORDING_ENABLED
@ DIAG_RECORDING_ENABLED
Definition: diag_cfg.h:242
DIAG_ID_OVERCURRENT_DISCHARGE_CELL_MSL
@ DIAG_ID_OVERCURRENT_DISCHARGE_CELL_MSL
Definition: diag_cfg.h:163
DIAG_ID_CAN_CC_RESPONDING
@ DIAG_ID_CAN_CC_RESPONDING
Definition: diag_cfg.h:133
DIAG_ID_cfg
DIAG_ID_CFG_s DIAG_ID_cfg[DIAG_ID_MAX]
Definition: diag_cfg.c:110
DIAG_UpdateFlags
void DIAG_UpdateFlags(void)
update function for diagnosis flags
Definition: diag_cfg.c:215
DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_MOL
@ DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_MOL
Definition: diag_cfg.h:159
DIAG_ID_OVERCURRENT_CHARGE_CELL_MOL
@ DIAG_ID_OVERCURRENT_CHARGE_CELL_MOL
Definition: diag_cfg.h:162
DIAG_ID_LTC_MUX
@ DIAG_ID_LTC_MUX
Definition: diag_cfg.h:130
DIAG_RECORDING_DISABLED
@ DIAG_RECORDING_DISABLED
Definition: diag_cfg.h:243
DIAG_EVALUATE_e
enum DIAG_EVALUATE DIAG_EVALUATE_e
DIAG_CH_CFG::enable_evaluate
DIAG_EVALUATE_e enable_evaluate
Definition: diag_cfg.h:268
DIAG_ID_CURRENT_MEASUREMENT_TIMEOUT
@ DIAG_ID_CURRENT_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:187
DIAG_ID_CURRENT_ON_OPEN_STRING
@ DIAG_ID_CURRENT_ON_OPEN_STRING
Definition: diag_cfg.h:174
DIAG_ID_PLAUSIBILITY_PACK_VOLTAGE
@ DIAG_ID_PLAUSIBILITY_PACK_VOLTAGE
Definition: diag_cfg.h:177
DIAG_ID_LTC_SPI
@ DIAG_ID_LTC_SPI
Definition: diag_cfg.h:128
DIAG_DATABASE_SHIM::pTableRsl
DATA_BLOCK_RSL_FLAG_s * pTableRsl
Definition: diag_cfg.h:116
DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_RSL
@ DIAG_ID_TEMP_UNDERTEMPERATURE_CHARGE_RSL
Definition: diag_cfg.h:155
DIAG_EVENT_NOT_OK
@ DIAG_EVENT_NOT_OK
Definition: diag_cfg.h:202
DIAG_ID_LTC_CONFIG
@ DIAG_ID_LTC_CONFIG
Definition: diag_cfg.h:131
DIAG_EVENT_e
enum DIAG_EVENT DIAG_EVENT_e
DIAG_ID_CFG_s
struct DIAG_CH_CFG DIAG_ID_CFG_s
DIAG_ID_INTERLOCK_FEEDBACK
@ DIAG_ID_INTERLOCK_FEEDBACK
Definition: diag_cfg.h:178
DIAG_ID_INSULATION_ERROR
@ DIAG_ID_INSULATION_ERROR
Definition: diag_cfg.h:194
DIAG_CH_CFG::enable_recording
DIAG_RECORDING_e enable_recording
Definition: diag_cfg.h:267
DIAG_ID_STRING_OVERCURRENT_DISCHARGE_MSL
@ DIAG_ID_STRING_OVERCURRENT_DISCHARGE_MSL
Definition: diag_cfg.h:169
DIAG_ID_PLAUSIBILITY_CELL_VOLTAGE
@ DIAG_ID_PLAUSIBILITY_CELL_VOLTAGE
Definition: diag_cfg.h:136
DIAG_ID_PLAUSIBILITY_CELL_VOLTAGE_SPREAD
@ DIAG_ID_PLAUSIBILITY_CELL_VOLTAGE_SPREAD
Definition: diag_cfg.h:140
DIAG_ID_INSULATION_MEASUREMENT_INVALID
@ DIAG_ID_INSULATION_MEASUREMENT_INVALID
Definition: diag_cfg.h:193
DIAG_ID_CURRENT_SENSOR_POWER_MEASUREMENT_TIMEOUT
@ DIAG_ID_CURRENT_SENSOR_POWER_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:191
DATA_BLOCK_MSL_FLAG
Definition: database_cfg.h:423
DIAG_ID_MEASUREMENT_IC_CELL_VOLTAGE_MEAS_ERROR
@ DIAG_ID_MEASUREMENT_IC_CELL_VOLTAGE_MEAS_ERROR
Definition: diag_cfg.h:137
DIAG_DEV
Definition: diag_cfg.h:276
DIAG_EVENT
DIAG_EVENT
Definition: diag_cfg.h:200
DIAG_ID_PACK_OVERCURRENT_DISCHARGE_MSL
@ DIAG_ID_PACK_OVERCURRENT_DISCHARGE_MSL
Definition: diag_cfg.h:173
DATA_BLOCK_ERRORSTATE
Definition: database_cfg.h:320
DATA_BLOCK_RSL_FLAG
Definition: database_cfg.h:445
DIAG_ID_MEASUREMENT_IC_CELL_TEMPERATURE_MEAS_ERROR
@ DIAG_ID_MEASUREMENT_IC_CELL_TEMPERATURE_MEAS_ERROR
Definition: diag_cfg.h:138
DIAG_ID_STRING_CONTACTOR_FEEDBACK
@ DIAG_ID_STRING_CONTACTOR_FEEDBACK
Definition: diag_cfg.h:179
DIAG_ID_SYSTEMMONITORING
@ DIAG_ID_SYSTEMMONITORING
Definition: diag_cfg.h:126
DIAG_ID_CAN_TIMING
@ DIAG_ID_CAN_TIMING
Definition: diag_cfg.h:132
DIAG_ID_BASE_CELL_TEMPERATURE_MESUREMENT_TIMEOUT
@ DIAG_ID_BASE_CELL_TEMPERATURE_MESUREMENT_TIMEOUT
Definition: diag_cfg.h:185
DIAG_CH_CFG::fpCallback
DIAG_CALLBACK_FUNCTION_f * fpCallback
Definition: diag_cfg.h:269
DIAG_DATABASE_SHIM::pTableMsl
DATA_BLOCK_MSL_FLAG_s * pTableMsl
Definition: diag_cfg.h:117
DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_RSL
@ DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_RSL
Definition: diag_cfg.h:152
DIAG_ID_FLASHCHECKSUM
@ DIAG_ID_FLASHCHECKSUM
Definition: diag_cfg.h:125
DIAG_ID_CURRENT_SENSOR_V3_MEASUREMENT_TIMEOUT
@ DIAG_ID_CURRENT_SENSOR_V3_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:190
DIAG_ID_STRING_OVERCURRENT_DISCHARGE_MOL
@ DIAG_ID_STRING_OVERCURRENT_DISCHARGE_MOL
Definition: diag_cfg.h:171
DIAG_ID_BASE_CELL_VOLTAGE_MESUREMENT_TIMEOUT
@ DIAG_ID_BASE_CELL_VOLTAGE_MESUREMENT_TIMEOUT
Definition: diag_cfg.h:183
DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_MOL
@ DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_MOL
Definition: diag_cfg.h:147
DIAG_DATABASE_SHIM_s
struct DIAG_DATABASE_SHIM DIAG_DATABASE_SHIM_s
DIAG_DATABASE_SHIM::pTableMol
DATA_BLOCK_MOL_FLAG_s * pTableMol
Definition: diag_cfg.h:115
DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_RSL
@ DIAG_ID_CELLVOLTAGE_UNDERVOLTAGE_RSL
Definition: diag_cfg.h:146
DIAG_ID_OVERCURRENT_DISCHARGE_CELL_RSL
@ DIAG_ID_OVERCURRENT_DISCHARGE_CELL_RSL
Definition: diag_cfg.h:164
DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_MSL
@ DIAG_ID_TEMP_OVERTEMPERATURE_DISCHARGE_MSL
Definition: diag_cfg.h:151
DIAG_ID_OVERCURRENT_DISCHARGE_CELL_MOL
@ DIAG_ID_OVERCURRENT_DISCHARGE_CELL_MOL
Definition: diag_cfg.h:165
DIAG_DATABASE_SHIM::pTableError
DATA_BLOCK_ERRORSTATE_s * pTableError
Definition: diag_cfg.h:114
DIAG_EVALUATION_DISABLED
@ DIAG_EVALUATION_DISABLED
Definition: diag_cfg.h:209
DIAG_ID_PLAUSIBILITY_CELL_TEMP
@ DIAG_ID_PLAUSIBILITY_CELL_TEMP
Definition: diag_cfg.h:139
DIAG_ID_POWER_MEASUREMENT_ERROR
@ DIAG_ID_POWER_MEASUREMENT_ERROR
Definition: diag_cfg.h:192
DIAG_ID_CURRENT_MEASUREMENT_ERROR
@ DIAG_ID_CURRENT_MEASUREMENT_ERROR
Definition: diag_cfg.h:188
DIAG_DEV::ch_cfg
DIAG_ID_CFG_s * ch_cfg
Definition: diag_cfg.h:278
DIAG_CH_CFG::id
DIAG_ID_e id
Definition: diag_cfg.h:261
DIAG_ID_DEEP_DISCHARGE_DETECTED
@ DIAG_ID_DEEP_DISCHARGE_DETECTED
Definition: diag_cfg.h:175
DIAG_IMPACT_LEVEL
DIAG_IMPACT_LEVEL
Definition: diag_cfg.h:213
DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_RSL
@ DIAG_ID_TEMP_UNDERTEMPERATURE_DISCHARGE_RSL
Definition: diag_cfg.h:158
DIAG_ID
DIAG_ID
Definition: diag_cfg.h:124
database_cfg.h
Database configuration header.
DIAG_ID_MAX
@ DIAG_ID_MAX
Definition: diag_cfg.h:196
DIAG_ID_LTC_PEC
@ DIAG_ID_LTC_PEC
Definition: diag_cfg.h:129
DIAG_ID_CURRENT_SENSOR_V1_MEASUREMENT_TIMEOUT
@ DIAG_ID_CURRENT_SENSOR_V1_MEASUREMENT_TIMEOUT
Definition: diag_cfg.h:189
DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_RSL
@ DIAG_ID_CELLVOLTAGE_OVERVOLTAGE_RSL
Definition: diag_cfg.h:143