mirror of
https://github.com/dalathegreat/Battery-Emulator.git
synced 2025-10-05 02:39:57 +02:00
Add event for SMA pairing event to aid troubleshooting
This commit is contained in:
parent
74591cd9a2
commit
702149f388
8 changed files with 16 additions and 0 deletions
|
@ -101,6 +101,7 @@ void init_events(void) {
|
|||
events.entries[EVENT_SERIAL_RX_FAILURE].level = EVENT_LEVEL_ERROR;
|
||||
events.entries[EVENT_SERIAL_TX_FAILURE].level = EVENT_LEVEL_ERROR;
|
||||
events.entries[EVENT_SERIAL_TRANSMITTER_FAILURE].level = EVENT_LEVEL_ERROR;
|
||||
events.entries[EVENT_SMA_PAIRING].level = EVENT_LEVEL_INFO;
|
||||
events.entries[EVENT_RESET_UNKNOWN].level = EVENT_LEVEL_INFO;
|
||||
events.entries[EVENT_RESET_POWERON].level = EVENT_LEVEL_INFO;
|
||||
events.entries[EVENT_RESET_EXT].level = EVENT_LEVEL_INFO;
|
||||
|
@ -305,6 +306,8 @@ const char* get_event_message_string(EVENTS_ENUM_TYPE event) {
|
|||
return "Error in serial function: No ACK from receiver!";
|
||||
case EVENT_SERIAL_TRANSMITTER_FAILURE:
|
||||
return "Error in serial function: Some ERROR level fault in transmitter, received by receiver";
|
||||
case EVENT_SMA_PAIRING:
|
||||
return "SMA inverter trying to pair, contactors will close and open according to Enable line";
|
||||
case EVENT_OTA_UPDATE:
|
||||
return "OTA update started!";
|
||||
case EVENT_OTA_UPDATE_TIMEOUT:
|
||||
|
|
|
@ -74,6 +74,7 @@
|
|||
XX(EVENT_SERIAL_RX_FAILURE) \
|
||||
XX(EVENT_SERIAL_TX_FAILURE) \
|
||||
XX(EVENT_SERIAL_TRANSMITTER_FAILURE) \
|
||||
XX(EVENT_SMA_PAIRING) \
|
||||
XX(EVENT_TASK_OVERRUN) \
|
||||
XX(EVENT_RESET_UNKNOWN) \
|
||||
XX(EVENT_RESET_POWERON) \
|
||||
|
|
|
@ -216,6 +216,8 @@ void SmaBydHInverter::map_can_frame_to_variable(CAN_frame rx_frame) {
|
|||
#ifdef DEBUG_LOG
|
||||
logging.println("Received 0x5E7: SMA pairing request");
|
||||
#endif // DEBUG_LOG
|
||||
pairing_events++;
|
||||
set_event(EVENT_SMA_PAIRING, pairing_events);
|
||||
datalayer.system.status.CAN_inverter_still_alive = CAN_STILL_ALIVE;
|
||||
transmit_can_init();
|
||||
break;
|
||||
|
|
|
@ -24,6 +24,7 @@ class SmaBydHInverter : public CanInverterProtocol {
|
|||
|
||||
unsigned long previousMillis100ms = 0;
|
||||
|
||||
uint8_t pairing_events = 0;
|
||||
uint32_t inverter_time = 0;
|
||||
uint16_t inverter_voltage = 0;
|
||||
int16_t inverter_current = 0;
|
||||
|
|
|
@ -206,6 +206,8 @@ void SmaBydHvsInverter::map_can_frame_to_variable(CAN_frame rx_frame) {
|
|||
#ifdef DEBUG_LOG
|
||||
logging.println("Received 0x5E7: SMA pairing request");
|
||||
#endif // DEBUG_LOG
|
||||
pairing_events++;
|
||||
set_event(EVENT_SMA_PAIRING, pairing_events);
|
||||
datalayer.system.status.CAN_inverter_still_alive = CAN_STILL_ALIVE;
|
||||
transmit_can_init = true;
|
||||
break;
|
||||
|
|
|
@ -28,6 +28,7 @@ class SmaBydHvsInverter : public CanInverterProtocol {
|
|||
7; //TODO, tweak to as low as possible before performance issues/crashes appear
|
||||
bool transmit_can_init = false;
|
||||
|
||||
uint8_t pairing_events = 0;
|
||||
uint32_t inverter_time = 0;
|
||||
uint16_t inverter_voltage = 0;
|
||||
int16_t inverter_current = 0;
|
||||
|
|
|
@ -100,6 +100,11 @@ void SmaTripowerInverter::map_can_frame_to_variable(CAN_frame rx_frame) {
|
|||
//Inverter brand (frame1-3 = 0x53 0x4D 0x41) = SMA
|
||||
break;
|
||||
case 0x660: //Message originating from SMA inverter - Pairing request
|
||||
#ifdef DEBUG_LOG
|
||||
logging.println("Received 0x660: SMA pairing request");
|
||||
#endif // DEBUG_LOG
|
||||
pairing_events++;
|
||||
set_event(EVENT_SMA_PAIRING, pairing_events);
|
||||
datalayer.system.status.CAN_inverter_still_alive = CAN_STILL_ALIVE;
|
||||
transmit_can_init();
|
||||
break;
|
||||
|
|
|
@ -42,6 +42,7 @@ class SmaTripowerInverter : public CanInverterProtocol {
|
|||
uint32_t inverter_time = 0;
|
||||
uint16_t inverter_voltage = 0;
|
||||
int16_t inverter_current = 0;
|
||||
uint8_t pairing_events = 0;
|
||||
bool pairing_completed = false;
|
||||
int16_t temperature_average = 0;
|
||||
uint16_t ampere_hours_remaining = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue