mirror of
https://github.com/dalathegreat/Battery-Emulator.git
synced 2025-10-05 19:42:08 +02:00
Add more mappings
This commit is contained in:
parent
dd341c06a1
commit
8a05d5f66b
4 changed files with 26 additions and 26 deletions
|
@ -222,8 +222,8 @@ static uint16_t poll_unknown1 = 0;
|
||||||
static uint16_t poll_raw_soc_max = 0;
|
static uint16_t poll_raw_soc_max = 0;
|
||||||
static uint16_t poll_raw_soc_min = 0;
|
static uint16_t poll_raw_soc_min = 0;
|
||||||
static uint16_t poll_unknown4 = 0;
|
static uint16_t poll_unknown4 = 0;
|
||||||
static uint16_t poll_unknown5 = 0;
|
static uint16_t poll_cap_module_max = 0;
|
||||||
static uint16_t poll_unknown6 = 0;
|
static uint16_t poll_cap_module_min = 0;
|
||||||
static uint16_t poll_unknown7 = 0;
|
static uint16_t poll_unknown7 = 0;
|
||||||
static uint16_t poll_unknown8 = 0;
|
static uint16_t poll_unknown8 = 0;
|
||||||
|
|
||||||
|
@ -270,8 +270,8 @@ void update_values_battery() { //This function maps all the values fetched via
|
||||||
datalayer_extended.geometryC.rawSOCmax = poll_raw_soc_max;
|
datalayer_extended.geometryC.rawSOCmax = poll_raw_soc_max;
|
||||||
datalayer_extended.geometryC.rawSOCmin = poll_raw_soc_min;
|
datalayer_extended.geometryC.rawSOCmin = poll_raw_soc_min;
|
||||||
datalayer_extended.geometryC.unknown4 = poll_unknown4;
|
datalayer_extended.geometryC.unknown4 = poll_unknown4;
|
||||||
datalayer_extended.geometryC.unknown5 = poll_unknown5;
|
datalayer_extended.geometryC.capModMax = poll_cap_module_max;
|
||||||
datalayer_extended.geometryC.unknown6 = poll_unknown6;
|
datalayer_extended.geometryC.capModMin = poll_cap_module_min;
|
||||||
datalayer_extended.geometryC.unknown7 = poll_unknown7;
|
datalayer_extended.geometryC.unknown7 = poll_unknown7;
|
||||||
datalayer_extended.geometryC.unknown8 = poll_unknown8;
|
datalayer_extended.geometryC.unknown8 = poll_unknown8;
|
||||||
}
|
}
|
||||||
|
@ -482,11 +482,11 @@ void handle_incoming_can_frame_battery(CAN_frame rx_frame) {
|
||||||
case POLL_UNKNOWN_4:
|
case POLL_UNKNOWN_4:
|
||||||
poll_unknown4 = rx_frame.data.u8[4];
|
poll_unknown4 = rx_frame.data.u8[4];
|
||||||
break;
|
break;
|
||||||
case POLL_UNKNOWN_5:
|
case POLL_CAPACITY_MODULE_MAX:
|
||||||
poll_unknown5 = (rx_frame.data.u8[4] << 8) | rx_frame.data.u8[5];
|
poll_cap_module_max = (rx_frame.data.u8[4] << 8) | rx_frame.data.u8[5];
|
||||||
break;
|
break;
|
||||||
case POLL_UNKNOWN_6:
|
case POLL_CAPACITY_MODULE_MIN:
|
||||||
poll_unknown6 = (rx_frame.data.u8[4] << 8) | rx_frame.data.u8[5];
|
poll_cap_module_min = (rx_frame.data.u8[4] << 8) | rx_frame.data.u8[5];
|
||||||
break;
|
break;
|
||||||
case POLL_UNKNOWN_7:
|
case POLL_UNKNOWN_7:
|
||||||
poll_unknown7 = rx_frame.data.u8[4];
|
poll_unknown7 = rx_frame.data.u8[4];
|
||||||
|
@ -648,16 +648,16 @@ void transmit_can_battery() {
|
||||||
case POLL_UNKNOWN_4:
|
case POLL_UNKNOWN_4:
|
||||||
GEELY_POLL.data.u8[2] = (uint8_t)(POLL_UNKNOWN_4 >> 8);
|
GEELY_POLL.data.u8[2] = (uint8_t)(POLL_UNKNOWN_4 >> 8);
|
||||||
GEELY_POLL.data.u8[3] = (uint8_t)POLL_UNKNOWN_4;
|
GEELY_POLL.data.u8[3] = (uint8_t)POLL_UNKNOWN_4;
|
||||||
poll_pid = POLL_UNKNOWN_5;
|
poll_pid = POLL_CAPACITY_MODULE_MAX;
|
||||||
break;
|
break;
|
||||||
case POLL_UNKNOWN_5:
|
case POLL_CAPACITY_MODULE_MAX:
|
||||||
GEELY_POLL.data.u8[2] = (uint8_t)(POLL_UNKNOWN_5 >> 8);
|
GEELY_POLL.data.u8[2] = (uint8_t)(POLL_CAPACITY_MODULE_MAX >> 8);
|
||||||
GEELY_POLL.data.u8[3] = (uint8_t)POLL_UNKNOWN_5;
|
GEELY_POLL.data.u8[3] = (uint8_t)POLL_CAPACITY_MODULE_MAX;
|
||||||
poll_pid = POLL_UNKNOWN_6;
|
poll_pid = POLL_CAPACITY_MODULE_MIN;
|
||||||
break;
|
break;
|
||||||
case POLL_UNKNOWN_6:
|
case POLL_CAPACITY_MODULE_MIN:
|
||||||
GEELY_POLL.data.u8[2] = (uint8_t)(POLL_UNKNOWN_6 >> 8);
|
GEELY_POLL.data.u8[2] = (uint8_t)(POLL_CAPACITY_MODULE_MIN >> 8);
|
||||||
GEELY_POLL.data.u8[3] = (uint8_t)POLL_UNKNOWN_6;
|
GEELY_POLL.data.u8[3] = (uint8_t)POLL_CAPACITY_MODULE_MIN;
|
||||||
poll_pid = POLL_UNKNOWN_7;
|
poll_pid = POLL_UNKNOWN_7;
|
||||||
break;
|
break;
|
||||||
case POLL_UNKNOWN_7:
|
case POLL_UNKNOWN_7:
|
||||||
|
|
|
@ -17,14 +17,14 @@
|
||||||
#define POLL_CELL_MIN_VOLTAGE_NUMBER 0x4B20
|
#define POLL_CELL_MIN_VOLTAGE_NUMBER 0x4B20
|
||||||
#define POLL_AMOUNT_CELLS 0x4B07
|
#define POLL_AMOUNT_CELLS 0x4B07
|
||||||
#define POLL_SPECIFICIAL_VOLTAGE 0x4B05
|
#define POLL_SPECIFICIAL_VOLTAGE 0x4B05
|
||||||
#define POLL_UNKNOWN_1 0x4BDA
|
#define POLL_UNKNOWN_1 0x4BDA //245 on two batteries
|
||||||
#define POLL_RAW_SOC_MAX 0x4BC3
|
#define POLL_RAW_SOC_MAX 0x4BC3
|
||||||
#define POLL_RAW_SOC_MIN 0x4BC4
|
#define POLL_RAW_SOC_MIN 0x4BC4
|
||||||
#define POLL_UNKNOWN_4 0xDF00
|
#define POLL_UNKNOWN_4 0xDF00 //144 (the other battery 143)
|
||||||
#define POLL_UNKNOWN_5 0x4B3D
|
#define POLL_CAPACITY_MODULE_MAX 0x4B3D
|
||||||
#define POLL_UNKNOWN_6 0x4B3E
|
#define POLL_CAPACITY_MODULE_MIN 0x4B3E
|
||||||
#define POLL_UNKNOWN_7 0x4B24
|
#define POLL_UNKNOWN_7 0x4B24 //1 (the other battery 23)
|
||||||
#define POLL_UNKNOWN_8 0x4B26
|
#define POLL_UNKNOWN_8 0x4B26 //16 (the other battery 33)
|
||||||
|
|
||||||
void setup_battery(void);
|
void setup_battery(void);
|
||||||
void transmit_can_frame(CAN_frame* tx_frame, int interface);
|
void transmit_can_frame(CAN_frame* tx_frame, int interface);
|
||||||
|
|
|
@ -288,8 +288,8 @@ typedef struct {
|
||||||
uint16_t rawSOCmax = 0;
|
uint16_t rawSOCmax = 0;
|
||||||
uint16_t rawSOCmin = 0;
|
uint16_t rawSOCmin = 0;
|
||||||
uint16_t unknown4 = 0;
|
uint16_t unknown4 = 0;
|
||||||
uint16_t unknown5 = 0;
|
uint16_t capModMax = 0;
|
||||||
uint16_t unknown6 = 0;
|
uint16_t capModMin = 0;
|
||||||
uint16_t unknown7 = 0;
|
uint16_t unknown7 = 0;
|
||||||
uint16_t unknown8 = 0;
|
uint16_t unknown8 = 0;
|
||||||
} DATALAYER_INFO_GEELY_GEOMETRY_C;
|
} DATALAYER_INFO_GEELY_GEOMETRY_C;
|
||||||
|
|
|
@ -472,8 +472,8 @@ String advanced_battery_processor(const String& var) {
|
||||||
content += "<h4>Raw SOC max: " + String(datalayer_extended.geometryC.rawSOCmax) + "</h4>";
|
content += "<h4>Raw SOC max: " + String(datalayer_extended.geometryC.rawSOCmax) + "</h4>";
|
||||||
content += "<h4>Raw SOC min: " + String(datalayer_extended.geometryC.rawSOCmin) + "</h4>";
|
content += "<h4>Raw SOC min: " + String(datalayer_extended.geometryC.rawSOCmin) + "</h4>";
|
||||||
content += "<h4>Unknown4: " + String(datalayer_extended.geometryC.unknown4) + "</h4>";
|
content += "<h4>Unknown4: " + String(datalayer_extended.geometryC.unknown4) + "</h4>";
|
||||||
content += "<h4>Unknown5: " + String(datalayer_extended.geometryC.unknown5) + "</h4>";
|
content += "<h4>Capacity module max: " + String((datalayer_extended.geometryC.capModMax / 10)) + "Ah</h4>";
|
||||||
content += "<h4>Unknown6: " + String(datalayer_extended.geometryC.unknown6) + "</h4>";
|
content += "<h4>Capacity module min: " + String((datalayer_extended.geometryC.capModMin / 10)) + "Ah</h4>";
|
||||||
content += "<h4>Unknown7: " + String(datalayer_extended.geometryC.unknown7) + "</h4>";
|
content += "<h4>Unknown7: " + String(datalayer_extended.geometryC.unknown7) + "</h4>";
|
||||||
content += "<h4>Unknown8: " + String(datalayer_extended.geometryC.unknown8) + "</h4>";
|
content += "<h4>Unknown8: " + String(datalayer_extended.geometryC.unknown8) + "</h4>";
|
||||||
#endif //GEELY_GEOMETRY_C_BATTERY
|
#endif //GEELY_GEOMETRY_C_BATTERY
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue