foxBMS  1.6.0
The foxBMS Battery Management System API Documentation
database_cfg.c File Reference

Database configuration. More...

#include "database_cfg.h"
#include <stdint.h>
Include dependency graph for database_cfg.c:

Go to the source code of this file.

Variables

static DATA_BLOCK_MIN_MAX_s data_blockMinMax = {.header.uniqueId = DATA_BLOCK_ID_MIN_MAX}
 
static DATA_BLOCK_CURRENT_SENSOR_s data_blockCurrentSensor = {.header.uniqueId = DATA_BLOCK_ID_CURRENT_SENSOR}
 
static DATA_BLOCK_BALANCING_CONTROL_s data_blockControlBalancing = {.header.uniqueId = DATA_BLOCK_ID_BALANCING_CONTROL}
 
static DATA_BLOCK_SLAVE_CONTROL_s data_blockSlaveControl = {.header.uniqueId = DATA_BLOCK_ID_SLAVE_CONTROL}
 
static DATA_BLOCK_USER_MUX_s data_blockUserMux = {.header.uniqueId = DATA_BLOCK_ID_USER_MUX}
 
static DATA_BLOCK_ERROR_STATE_s data_blockErrors = {.header.uniqueId = DATA_BLOCK_ID_ERROR_STATE}
 
static DATA_BLOCK_CONTACTOR_FEEDBACK_s data_blockContactorFeedback
 
static DATA_BLOCK_INTERLOCK_FEEDBACK_s data_blockInterlockFeedback
 
static DATA_BLOCK_SOF_s data_blockSof = {.header.uniqueId = DATA_BLOCK_ID_SOF}
 
static DATA_BLOCK_SYSTEM_STATE_s data_blockSystemstate = {.header.uniqueId = DATA_BLOCK_ID_SYSTEM_STATE}
 
static DATA_BLOCK_MSL_FLAG_s data_blockMsl = {.header.uniqueId = DATA_BLOCK_ID_MSL_FLAG}
 
static DATA_BLOCK_RSL_FLAG_s data_blockRsl = {.header.uniqueId = DATA_BLOCK_ID_RSL_FLAG}
 
static DATA_BLOCK_MOL_FLAG_s data_blockMol = {.header.uniqueId = DATA_BLOCK_ID_MOL_FLAG}
 
static DATA_BLOCK_SOC_s data_blockSoc = {.header.uniqueId = DATA_BLOCK_ID_SOC}
 
static DATA_BLOCK_SOH_s data_blockSoh = {.header.uniqueId = DATA_BLOCK_ID_SOH}
 
static DATA_BLOCK_SOE_s data_blockSoe = {.header.uniqueId = DATA_BLOCK_ID_SOE}
 
static DATA_BLOCK_STATE_REQUEST_s data_blockStaterequest = {.header.uniqueId = DATA_BLOCK_ID_STATE_REQUEST}
 
static DATA_BLOCK_MOVING_AVERAGE_s data_blockMovingAverage = {.header.uniqueId = DATA_BLOCK_ID_MOVING_AVERAGE}
 
static DATA_BLOCK_INSULATION_MONITORING_s data_blockInsulationMonitoring
 
static DATA_BLOCK_PACK_VALUES_s data_blockPackValues = {.header.uniqueId = DATA_BLOCK_ID_PACK_VALUES}
 
static DATA_BLOCK_ADC_VOLTAGE_s data_blockAdcVoltage = {.header.uniqueId = DATA_BLOCK_ID_ADC_VOLTAGE}
 
static DATA_BLOCK_HTSEN_s data_blockHumidityTemperatureSensor = {.header.uniqueId = DATA_BLOCK_ID_HTSEN}
 
static DATA_BLOCK_DUMMY_FOR_SELF_TEST_s data_blockDummyForSelfTest
 
static DATA_BLOCK_AEROSOL_SENSOR_s data_blockAerosolSensor = {.header.uniqueId = DATA_BLOCK_ID_AEROSOL_SENSOR}
 
DATA_BASE_s data_database []
 channel configuration of database (data blocks) More...
 
static DATA_BLOCK_CELL_VOLTAGE_s data_blockCellVoltage = {.header.uniqueId = DATA_BLOCK_ID_CELL_VOLTAGE}
 
static DATA_BLOCK_CELL_VOLTAGE_s data_blockCellVoltageBase = {.header.uniqueId = DATA_BLOCK_ID_CELL_VOLTAGE_BASE}
 
static DATA_BLOCK_CELL_VOLTAGE_s data_blockCellVoltageRedundancy0
 
static DATA_BLOCK_CELL_TEMPERATURE_s data_blockCellTemperature = {.header.uniqueId = DATA_BLOCK_ID_CELL_TEMPERATURE}
 
static DATA_BLOCK_CELL_TEMPERATURE_s data_blockCellTemperatureBase
 
static DATA_BLOCK_CELL_TEMPERATURE_s data_blockCellTemperatureRedundancy0
 
static DATA_BLOCK_BALANCING_FEEDBACK_s data_blockFeedbackBalancingBase
 
static DATA_BLOCK_BALANCING_FEEDBACK_s data_blockFeedbackBalancingRedundancy0
 
static DATA_BLOCK_OPEN_WIRE_s data_blockOpenWireBase = {.header.uniqueId = DATA_BLOCK_ID_OPEN_WIRE_BASE}
 
static DATA_BLOCK_OPEN_WIRE_s data_blockOpenWireRedundancy0 = {.header.uniqueId = DATA_BLOCK_ID_OPEN_WIRE_REDUNDANCY0}
 
static DATA_BLOCK_ALL_GPIO_VOLTAGES_s data_blockLtcAllGpioVoltagesBase
 
static DATA_BLOCK_ALL_GPIO_VOLTAGES_s data_blockLtcAllGpioVoltagesRedundancy0
 

Detailed Description

Database configuration.

SPDX-License-Identifier: BSD-3-Clause

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

We kindly request you to use one or more of the following phrases to refer to foxBMS in your hardware, software, documentation or advertising materials:

  • ″This product uses parts of foxBMS®″
  • ″This product includes parts of foxBMS®″
  • ″This product is derived from foxBMS®″
Author
foxBMS Team
Date
2015-08-18 (date of creation)
Updated
2023-10-12 (date of last update)
Version
v1.6.0
Prefix
DATA

Configuration of database module

Definition in file database_cfg.c.

Variable Documentation

◆ data_blockAdcVoltage

DATA_BLOCK_ADC_VOLTAGE_s data_blockAdcVoltage = {.header.uniqueId = DATA_BLOCK_ID_ADC_VOLTAGE}
static

data block: adc temperature

Definition at line 171 of file database_cfg.c.

◆ data_blockAerosolSensor

DATA_BLOCK_AEROSOL_SENSOR_s data_blockAerosolSensor = {.header.uniqueId = DATA_BLOCK_ID_AEROSOL_SENSOR}
static

data block: aerosol sensor

Definition at line 181 of file database_cfg.c.

◆ data_blockCellTemperature

DATA_BLOCK_CELL_TEMPERATURE_s data_blockCellTemperature = {.header.uniqueId = DATA_BLOCK_ID_CELL_TEMPERATURE}
static

data block: cell temperature

Definition at line 78 of file database_cfg.c.

◆ data_blockCellTemperatureBase

DATA_BLOCK_CELL_TEMPERATURE_s data_blockCellTemperatureBase
static
Initial value:
= {
@ DATA_BLOCK_ID_CELL_TEMPERATURE_BASE
Definition: database_cfg.h:87

data block: cell temperature

Definition at line 79 of file database_cfg.c.

◆ data_blockCellTemperatureRedundancy0

DATA_BLOCK_CELL_TEMPERATURE_s data_blockCellTemperatureRedundancy0
static
Initial value:
= {
@ DATA_BLOCK_ID_CELL_TEMPERATURE_REDUNDANCY0
Definition: database_cfg.h:88

data block: cell temperature

Definition at line 81 of file database_cfg.c.

◆ data_blockCellVoltage

DATA_BLOCK_CELL_VOLTAGE_s data_blockCellVoltage = {.header.uniqueId = DATA_BLOCK_ID_CELL_VOLTAGE}
static

data block: cell voltage

Definition at line 70 of file database_cfg.c.

◆ data_blockCellVoltageBase

DATA_BLOCK_CELL_VOLTAGE_s data_blockCellVoltageBase = {.header.uniqueId = DATA_BLOCK_ID_CELL_VOLTAGE_BASE}
static

data block: cell voltage

Definition at line 71 of file database_cfg.c.

◆ data_blockCellVoltageRedundancy0

DATA_BLOCK_CELL_VOLTAGE_s data_blockCellVoltageRedundancy0
static
Initial value:
= {
@ DATA_BLOCK_ID_CELL_VOLTAGE_REDUNDANCY0
Definition: database_cfg.h:91

data block: cell voltage

Definition at line 72 of file database_cfg.c.

◆ data_blockContactorFeedback

DATA_BLOCK_CONTACTOR_FEEDBACK_s data_blockContactorFeedback
static
Initial value:
= {
@ DATA_BLOCK_ID_CONTACTOR_FEEDBACK
Definition: database_cfg.h:92

data block: contactor feedback

Definition at line 126 of file database_cfg.c.

◆ data_blockControlBalancing

DATA_BLOCK_BALANCING_CONTROL_s data_blockControlBalancing = {.header.uniqueId = DATA_BLOCK_ID_BALANCING_CONTROL}
static

data block: balancing control

Definition at line 92 of file database_cfg.c.

◆ data_blockCurrentSensor

DATA_BLOCK_CURRENT_SENSOR_s data_blockCurrentSensor = {.header.uniqueId = DATA_BLOCK_ID_CURRENT_SENSOR}
static

data block: current sensor

Definition at line 89 of file database_cfg.c.

◆ data_blockDummyForSelfTest

DATA_BLOCK_DUMMY_FOR_SELF_TEST_s data_blockDummyForSelfTest
static
Initial value:
= {
@ DATA_BLOCK_ID_DUMMY_FOR_SELF_TEST
Definition: database_cfg.h:94

data block: used for self-test

Definition at line 177 of file database_cfg.c.

◆ data_blockErrors

DATA_BLOCK_ERROR_STATE_s data_blockErrors = {.header.uniqueId = DATA_BLOCK_ID_ERROR_STATE}
static

data block: error flags

Definition at line 123 of file database_cfg.c.

◆ data_blockFeedbackBalancingBase

DATA_BLOCK_BALANCING_FEEDBACK_s data_blockFeedbackBalancingBase
static
Initial value:
= {
@ DATA_BLOCK_ID_BALANCING_FEEDBACK_BASE
Definition: database_cfg.h:84

data block: balancing feedback

Definition at line 99 of file database_cfg.c.

◆ data_blockFeedbackBalancingRedundancy0

DATA_BLOCK_BALANCING_FEEDBACK_s data_blockFeedbackBalancingRedundancy0
static
Initial value:
= {
@ DATA_BLOCK_ID_BALANCING_FEEDBACK_REDUNDANCY0
Definition: database_cfg.h:85

data block: balancing feedback

Definition at line 101 of file database_cfg.c.

◆ data_blockHumidityTemperatureSensor

DATA_BLOCK_HTSEN_s data_blockHumidityTemperatureSensor = {.header.uniqueId = DATA_BLOCK_ID_HTSEN}
static

data block: I2C humidity/temperature sensor measurements

Definition at line 174 of file database_cfg.c.

◆ data_blockInsulationMonitoring

DATA_BLOCK_INSULATION_MONITORING_s data_blockInsulationMonitoring
static
Initial value:
= {
@ DATA_BLOCK_ID_INSULATION_MONITORING
Definition: database_cfg.h:97

data block: insulation monitoring

Definition at line 164 of file database_cfg.c.

◆ data_blockInterlockFeedback

DATA_BLOCK_INTERLOCK_FEEDBACK_s data_blockInterlockFeedback
static
Initial value:
= {
@ DATA_BLOCK_ID_INTERLOCK_FEEDBACK
Definition: database_cfg.h:98

data block: interlock feedback

Definition at line 130 of file database_cfg.c.

◆ data_blockLtcAllGpioVoltagesBase

DATA_BLOCK_ALL_GPIO_VOLTAGES_s data_blockLtcAllGpioVoltagesBase
static
Initial value:
= {
@ DATA_BLOCK_ID_ALL_GPIO_VOLTAGES_BASE
Definition: database_cfg.h:81

data block: LTC GPIO voltage

Definition at line 116 of file database_cfg.c.

◆ data_blockLtcAllGpioVoltagesRedundancy0

DATA_BLOCK_ALL_GPIO_VOLTAGES_s data_blockLtcAllGpioVoltagesRedundancy0
static
Initial value:
= {
@ DATA_BLOCK_ID_ALL_GPIO_VOLTAGES_REDUNDANCY0
Definition: database_cfg.h:82

data block: LTC GPIO voltage

Definition at line 118 of file database_cfg.c.

◆ data_blockMinMax

DATA_BLOCK_MIN_MAX_s data_blockMinMax = {.header.uniqueId = DATA_BLOCK_ID_MIN_MAX}
static

data block: minimum and maximum values

Definition at line 86 of file database_cfg.c.

◆ data_blockMol

DATA_BLOCK_MOL_FLAG_s data_blockMol = {.header.uniqueId = DATA_BLOCK_ID_MOL_FLAG}
static

data block: maximum operating limit violations

Definition at line 146 of file database_cfg.c.

◆ data_blockMovingAverage

DATA_BLOCK_MOVING_AVERAGE_s data_blockMovingAverage = {.header.uniqueId = DATA_BLOCK_ID_MOVING_AVERAGE}
static

data block: moving average

Definition at line 161 of file database_cfg.c.

◆ data_blockMsl

DATA_BLOCK_MSL_FLAG_s data_blockMsl = {.header.uniqueId = DATA_BLOCK_ID_MSL_FLAG}
static

data block: maximum safety limit violations

Definition at line 140 of file database_cfg.c.

◆ data_blockOpenWireBase

DATA_BLOCK_OPEN_WIRE_s data_blockOpenWireBase = {.header.uniqueId = DATA_BLOCK_ID_OPEN_WIRE_BASE}
static

data block: open wire check

Definition at line 110 of file database_cfg.c.

◆ data_blockOpenWireRedundancy0

DATA_BLOCK_OPEN_WIRE_s data_blockOpenWireRedundancy0 = {.header.uniqueId = DATA_BLOCK_ID_OPEN_WIRE_REDUNDANCY0}
static

data block: open wire check

Definition at line 111 of file database_cfg.c.

◆ data_blockPackValues

DATA_BLOCK_PACK_VALUES_s data_blockPackValues = {.header.uniqueId = DATA_BLOCK_ID_PACK_VALUES}
static

data block: pack values

Definition at line 168 of file database_cfg.c.

◆ data_blockRsl

DATA_BLOCK_RSL_FLAG_s data_blockRsl = {.header.uniqueId = DATA_BLOCK_ID_RSL_FLAG}
static

data block: recommended safety limit violations

Definition at line 143 of file database_cfg.c.

◆ data_blockSlaveControl

DATA_BLOCK_SLAVE_CONTROL_s data_blockSlaveControl = {.header.uniqueId = DATA_BLOCK_ID_SLAVE_CONTROL}
static

data block: slave control

Definition at line 95 of file database_cfg.c.

◆ data_blockSoc

DATA_BLOCK_SOC_s data_blockSoc = {.header.uniqueId = DATA_BLOCK_ID_SOC}
static

data block: soc

Definition at line 149 of file database_cfg.c.

◆ data_blockSoe

DATA_BLOCK_SOE_s data_blockSoe = {.header.uniqueId = DATA_BLOCK_ID_SOE}
static

data block: soe

Definition at line 155 of file database_cfg.c.

◆ data_blockSof

DATA_BLOCK_SOF_s data_blockSof = {.header.uniqueId = DATA_BLOCK_ID_SOF}
static

data block: sof

Definition at line 134 of file database_cfg.c.

◆ data_blockSoh

DATA_BLOCK_SOH_s data_blockSoh = {.header.uniqueId = DATA_BLOCK_ID_SOH}
static

data block: soh

Definition at line 152 of file database_cfg.c.

◆ data_blockStaterequest

DATA_BLOCK_STATE_REQUEST_s data_blockStaterequest = {.header.uniqueId = DATA_BLOCK_ID_STATE_REQUEST}
static

data block: can state request

Definition at line 158 of file database_cfg.c.

◆ data_blockSystemstate

DATA_BLOCK_SYSTEM_STATE_s data_blockSystemstate = {.header.uniqueId = DATA_BLOCK_ID_SYSTEM_STATE}
static

data block: system state

Definition at line 137 of file database_cfg.c.

◆ data_blockUserMux

DATA_BLOCK_USER_MUX_s data_blockUserMux = {.header.uniqueId = DATA_BLOCK_ID_USER_MUX}
static

data block: user mux

Definition at line 106 of file database_cfg.c.

◆ data_database

DATA_BASE_s data_database[]

channel configuration of database (data blocks)

all data block managed by database are listed here (address, size, consistency type)

Definition at line 188 of file database_cfg.c.