From 6901e9b5581d4bf2c27c1966761db6669fd6fa4f Mon Sep 17 00:00:00 2001 From: flxkrmr Date: Sun, 30 Oct 2022 09:47:05 +0100 Subject: [PATCH] Print readable message on fault code --- lib/fault_code/fault_code_util.c | 13 ------------- lib/fault_code/fault_code_util.h | 13 +++++++++++++ src/EecIvReader.cpp | 9 ++++++++- 3 files changed, 21 insertions(+), 14 deletions(-) diff --git a/lib/fault_code/fault_code_util.c b/lib/fault_code/fault_code_util.c index 201ebe9..e24e91a 100644 --- a/lib/fault_code/fault_code_util.c +++ b/lib/fault_code/fault_code_util.c @@ -2,19 +2,6 @@ void createReadableMessage(const char *faultCode, char *messageReadable, unsigned int messageReadableSize) { - fault_code_message_t fault_code_messages[] = { - (fault_code_message_t) {"111", "All systems work properly"}, - (fault_code_message_t) {"112", "IAT-sensor: voltage low"}, - (fault_code_message_t) {"113", "IAT-sensor: voltage high"}, - (fault_code_message_t) {"114", "IAT-sensor: range"}, - (fault_code_message_t) {"116", "ECT-sensor: range"}, - (fault_code_message_t) {"117", "ECT-sensor: voltage low"}, - (fault_code_message_t) {"118", "ECT-sensor: voltage high"}, - (fault_code_message_t) {"511", "ECM: ROM error"}, - (fault_code_message_t) {"512", "ECM: KAM error"}, - (fault_code_message_t) {"513", "ECM: internal reference voltage"}, - }; - char buffer[40]; for (unsigned int i = 0; i < sizeof(fault_code_messages) / sizeof(fault_code_message_t); i++) { diff --git a/lib/fault_code/fault_code_util.h b/lib/fault_code/fault_code_util.h index 6c2a63b..ceb168f 100644 --- a/lib/fault_code/fault_code_util.h +++ b/lib/fault_code/fault_code_util.h @@ -10,6 +10,19 @@ typedef struct fault_code_message_s const char *message; } fault_code_message_t; +static fault_code_message_t fault_code_messages[] = { + (fault_code_message_t) {"111", "All systems work properly"}, + (fault_code_message_t) {"112", "IAT-sensor: voltage low"}, + (fault_code_message_t) {"113", "IAT-sensor: voltage high"}, + (fault_code_message_t) {"114", "IAT-sensor: range"}, + (fault_code_message_t) {"116", "ECT-sensor: range"}, + (fault_code_message_t) {"117", "ECT-sensor: voltage low"}, + (fault_code_message_t) {"118", "ECT-sensor: voltage high"}, + (fault_code_message_t) {"511", "ECM: ROM error"}, + (fault_code_message_t) {"512", "ECM: KAM error"}, + (fault_code_message_t) {"513", "ECM: internal reference voltage"}, +}; + void createReadableMessage(const char *faultCode, char *messageReadable, unsigned int messageReadableSize); void splitMessage(const char *message, char *messageLine1, char *messageLine2, char *messageLine3, unsigned int messageLinesSize); diff --git a/src/EecIvReader.cpp b/src/EecIvReader.cpp index 7c51bfe..6639f31 100644 --- a/src/EecIvReader.cpp +++ b/src/EecIvReader.cpp @@ -4,6 +4,9 @@ #include "EecIv.h" +extern "C" { + #include "fault_code_util.h" +} #include @@ -225,5 +228,9 @@ void onKoeoFinished() { void onFaultCodeFinished(char message[]) { screenMode = RESULT_FAULT_CODE; - drawMenuScreen(BACK_SIGN, NO_SIGN, NO_SIGN, "Fault Code", message, "", ""); + char messageLine1[NUM_COLUMN-1]; + char messageLine2[NUM_COLUMN-1]; + char messageLine3[NUM_COLUMN-1]; + createReadableSplittedMessage(message, messageLine1, messageLine2, messageLine3, NUM_COLUMN - 1); + drawMenuScreen(BACK_SIGN, NO_SIGN, NO_SIGN, "Fault Code", messageLine1, messageLine2, messageLine3); } \ No newline at end of file