From 2850a384295135b23604f9be6d4b3c90bdacba45 Mon Sep 17 00:00:00 2001 From: rusEfi Date: Tue, 18 Nov 2014 08:03:12 -0600 Subject: [PATCH] auto-sync --- .../controllers/algo/engine_configuration.cpp | 2 -- firmware/controllers/algo/signal_executor.c | 4 ++-- firmware/controllers/algo/wave_chart.cpp | 3 +-- firmware/controllers/algo/wave_chart.h | 2 +- .../controllers/trigger/rpm_calculator.cpp | 6 ++--- firmware/controllers/trigger/rpm_calculator.h | 2 +- .../controllers/trigger/trigger_central.cpp | 23 +++++++++++-------- firmware/emulation/wave_analyzer.cpp | 4 ++-- firmware/rusefi.cpp | 2 +- firmware/svnversion.h | 4 ++-- .../src/com/rusefi/waves/WaveReport.java | 23 ++++++++++--------- .../waves/test/WaveChartParserTest.java | 16 ++++++------- java_console/ui/src/com/irnems/Launcher.java | 2 +- 13 files changed, 48 insertions(+), 45 deletions(-) diff --git a/firmware/controllers/algo/engine_configuration.cpp b/firmware/controllers/algo/engine_configuration.cpp index 93d7934f12..19469075c2 100644 --- a/firmware/controllers/algo/engine_configuration.cpp +++ b/firmware/controllers/algo/engine_configuration.cpp @@ -452,7 +452,6 @@ void setDefaultConfiguration(engine_configuration_s *engineConfiguration, board_ void resetConfigurationExt(Logging * logger, engine_type_e engineType, Engine *engine) { engine_configuration_s *engineConfiguration = engine->engineConfiguration; - engine_configuration2_s *engineConfiguration2 = engine->engineConfiguration2; board_configuration_s *boardConfiguration = &engineConfiguration->bc; /** * Let's apply global defaults first @@ -587,7 +586,6 @@ void applyNonPersistentConfiguration(Logging * logger, Engine *engine) { void prepareShapes(Engine *engine) { prepareOutputSignals(engine); - engine_configuration_s *engineConfiguration = engine->engineConfiguration; engine_configuration2_s *engineConfiguration2 = engine->engineConfiguration2; // todo: looks like this is here only for unit tests. todo: remove diff --git a/firmware/controllers/algo/signal_executor.c b/firmware/controllers/algo/signal_executor.c index ce83f0d41e..32ea079680 100644 --- a/firmware/controllers/algo/signal_executor.c +++ b/firmware/controllers/algo/signal_executor.c @@ -71,7 +71,7 @@ void turnPinHigh(io_pin_e pin) { #endif #if EFI_WAVE_CHART - addWaveChartEvent(getPinName(pin), WC_UP, ""); + addWaveChartEvent(getPinName(pin), WC_UP); #endif /* EFI_WAVE_ANALYZER */ } @@ -87,7 +87,7 @@ void turnPinLow(io_pin_e pin) { #endif /* EFI_DEFAILED_LOGGING */ #if EFI_WAVE_CHART - addWaveChartEvent(getPinName(pin), WC_DOWN, ""); + addWaveChartEvent(getPinName(pin), WC_DOWN); #endif /* EFI_WAVE_ANALYZER */ } diff --git a/firmware/controllers/algo/wave_chart.cpp b/firmware/controllers/algo/wave_chart.cpp index 6714330608..b2185dcd13 100644 --- a/firmware/controllers/algo/wave_chart.cpp +++ b/firmware/controllers/algo/wave_chart.cpp @@ -143,7 +143,7 @@ static char timeBuffer[10]; /** * @brief Register an event for digital sniffer */ -void WaveChart::addWaveChartEvent3(const char *name, const char * msg, const char * msg2) { +void WaveChart::addWaveChartEvent3(const char *name, const char * msg) { if(!isChartActive) { return; } @@ -194,7 +194,6 @@ void WaveChart::addWaveChartEvent3(const char *name, const char * msg, const cha itoa10(timeBuffer, time100); appendFast(&logging, timeBuffer); - appendFast(&logging, msg2); appendFast(&logging, CHART_DELIMETER); } if (!alreadyLocked) { diff --git a/firmware/controllers/algo/wave_chart.h b/firmware/controllers/algo/wave_chart.h index 48033f991b..dd3977becf 100644 --- a/firmware/controllers/algo/wave_chart.h +++ b/firmware/controllers/algo/wave_chart.h @@ -26,7 +26,7 @@ public: bool_t isWaveChartFull(); bool_t isStartedTooLongAgo(); void publishChartIfFull(); - void addWaveChartEvent3(const char *name, const char *msg, const char *msg2); + void addWaveChartEvent3(const char *name, const char *msg); private: #if EFI_WAVE_CHART Logging logging; diff --git a/firmware/controllers/trigger/rpm_calculator.cpp b/firmware/controllers/trigger/rpm_calculator.cpp index 3b3ecf51b0..e650314acc 100644 --- a/firmware/controllers/trigger/rpm_calculator.cpp +++ b/firmware/controllers/trigger/rpm_calculator.cpp @@ -184,7 +184,7 @@ static char rpmBuffer[10]; */ static void onTdcCallback(void) { itoa10(rpmBuffer, getRpm()); - addWaveChartEvent(TOP_DEAD_CENTER_MESSAGE, (char*) rpmBuffer, ""); + addWaveChartEvent(TOP_DEAD_CENTER_MESSAGE, (char*) rpmBuffer); } /** @@ -260,11 +260,11 @@ void scheduleByAngle(int rpm, scheduling_s *timer, float angle, schfunc_t callba #endif /* EFI_SHAFT_POSITION_INPUT */ -void addWaveChartEvent(const char *name, const char * msg, const char *msg2) { +void addWaveChartEvent(const char *name, const char * msg) { #if EFI_PROD_CODE efiAssertVoid(getRemainingStack(chThdSelf()) > 32, "lowstck#2c"); #endif #if EFI_WAVE_CHART - waveChart.addWaveChartEvent3(name, msg, msg2); + waveChart.addWaveChartEvent3(name, msg); #endif /* EFI_WAVE_CHART */ } diff --git a/firmware/controllers/trigger/rpm_calculator.h b/firmware/controllers/trigger/rpm_calculator.h index c48cfbccde..17cea6b882 100644 --- a/firmware/controllers/trigger/rpm_calculator.h +++ b/firmware/controllers/trigger/rpm_calculator.h @@ -79,7 +79,7 @@ bool isCranking(void); int getRevolutionCounter(void); #define isValidRpm(rpm) ((rpm) > 0 && (rpm) < UNREALISTIC_RPM) -void addWaveChartEvent(const char *name, const char *msg, const char *msg2); +void addWaveChartEvent(const char *name, const char *msg); #ifdef __cplusplus } diff --git a/firmware/controllers/trigger/trigger_central.cpp b/firmware/controllers/trigger/trigger_central.cpp index aee76d7c75..ef450d9e5f 100644 --- a/firmware/controllers/trigger/trigger_central.cpp +++ b/firmware/controllers/trigger/trigger_central.cpp @@ -87,19 +87,25 @@ int TriggerCentral::getHwEventCounter(int index) { static char shaft_signal_msg_index[15]; static ALWAYS_INLINE void reportEventToWaveChart(trigger_event_e ckpSignalType, int index) { - itoa10(&shaft_signal_msg_index[1], index); + itoa10(&shaft_signal_msg_index[2], index); if (ckpSignalType == SHAFT_PRIMARY_UP) { - addWaveChartEvent(WC_CRANK1, WC_UP, (char*) shaft_signal_msg_index); + shaft_signal_msg_index[0] = 'u'; + addWaveChartEvent(WC_CRANK1, (char*) shaft_signal_msg_index); } else if (ckpSignalType == SHAFT_PRIMARY_DOWN) { - addWaveChartEvent(WC_CRANK1, WC_DOWN, (char*) shaft_signal_msg_index); + shaft_signal_msg_index[0] = 'd'; + addWaveChartEvent(WC_CRANK1, (char*) shaft_signal_msg_index); } else if (ckpSignalType == SHAFT_SECONDARY_UP) { - addWaveChartEvent(WC_CRANK2, WC_UP, (char*) shaft_signal_msg_index); + shaft_signal_msg_index[0] = 'u'; + addWaveChartEvent(WC_CRANK2, (char*) shaft_signal_msg_index); } else if (ckpSignalType == SHAFT_SECONDARY_DOWN) { - addWaveChartEvent(WC_CRANK2, WC_DOWN, (char*) shaft_signal_msg_index); + shaft_signal_msg_index[0] = 'd'; + addWaveChartEvent(WC_CRANK2, (char*) shaft_signal_msg_index); } else if (ckpSignalType == SHAFT_3RD_UP) { - addWaveChartEvent(WC_CRANK3, WC_UP, (char*) shaft_signal_msg_index); + shaft_signal_msg_index[0] = 'u'; + addWaveChartEvent(WC_CRANK3, (char*) shaft_signal_msg_index); } else if (ckpSignalType == SHAFT_3RD_DOWN) { - addWaveChartEvent(WC_CRANK3, WC_DOWN, (char*) shaft_signal_msg_index); + shaft_signal_msg_index[0] = 'd'; + addWaveChartEvent(WC_CRANK3, (char*) shaft_signal_msg_index); } } @@ -256,8 +262,7 @@ float getTriggerDutyCycle(int index) { } void initTriggerCentral(Engine *engine) { - // todo: use 'engine' parameter and eliminate 'extern' - strcpy((char*) shaft_signal_msg_index, "_"); + strcpy((char*) shaft_signal_msg_index, "x_"); #if EFI_WAVE_CHART initWaveChart(&waveChart); diff --git a/firmware/emulation/wave_analyzer.cpp b/firmware/emulation/wave_analyzer.cpp index 62c9966017..b7b2be65da 100644 --- a/firmware/emulation/wave_analyzer.cpp +++ b/firmware/emulation/wave_analyzer.cpp @@ -56,7 +56,7 @@ static void waAnaWidthCallback(WaveReader *reader) { uint64_t nowUs = getTimeNowUs(); reader->eventCounter++; reader->lastActivityTimeUs = nowUs; - addWaveChartEvent(reader->name, WC_UP, ""); + addWaveChartEvent(reader->name, WC_UP); uint32_t width = nowUs - reader->periodEventTimeUs; reader->last_wave_low_widthUs = width; @@ -69,7 +69,7 @@ void WaveReader::onFallEvent() { uint64_t nowUs = getTimeNowUs(); eventCounter++; lastActivityTimeUs = nowUs; - addWaveChartEvent(name, WC_DOWN, ""); + addWaveChartEvent(name, WC_DOWN); uint64_t width = nowUs - widthEventTimeUs; last_wave_high_widthUs = width; diff --git a/firmware/rusefi.cpp b/firmware/rusefi.cpp index dbc5920628..a7452a5137 100644 --- a/firmware/rusefi.cpp +++ b/firmware/rusefi.cpp @@ -253,5 +253,5 @@ void firmwareError(const char *fmt, ...) { } int getRusEfiVersion(void) { - return 20141117; + return 20141118; } diff --git a/firmware/svnversion.h b/firmware/svnversion.h index d8b59c30e2..2f4e1eebef 100644 --- a/firmware/svnversion.h +++ b/firmware/svnversion.h @@ -1,5 +1,5 @@ // This file was generated by Version2Header -// Sun Nov 16 09:14:27 EST 2014 +// Tue Nov 18 08:07:00 EST 2014 #ifndef VCS_VERSION -#define VCS_VERSION "5394" +#define VCS_VERSION "5429" #endif diff --git a/java_console/models/src/com/rusefi/waves/WaveReport.java b/java_console/models/src/com/rusefi/waves/WaveReport.java index 6fc2a3a690..7ad28a57a1 100644 --- a/java_console/models/src/com/rusefi/waves/WaveReport.java +++ b/java_console/models/src/com/rusefi/waves/WaveReport.java @@ -5,6 +5,7 @@ import com.irnems.waves.ZoomProvider; import org.jetbrains.annotations.NotNull; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.List; @@ -73,35 +74,35 @@ public class WaveReport implements TimeAxisTranslator { // if (array.length % 4 != 0) // throw new IllegalArgumentException("Unexpected length " + array.length); - List times = new ArrayList(); + List times = new ArrayList<>(); int index = 0; if (array[0].equals(WC_DOWN)) index += 2; while (index + 3 < array.length) { - if (!array[index].equals(WC_UP)) { + if (!array[index].startsWith(WC_UP)) { index += 2; continue; } - if (!array[index + 2].equals(WC_DOWN)) { + if (!array[index + 2].startsWith(WC_DOWN)) { index += 2; continue; } - String upString[] = array[index + 1].split("_"); - String downString[] = array[index + 3].split("_"); + String upString[] = array[index].split("_"); + String downString[] = array[index + 2].split("_"); try { - int upTime = Integer.parseInt(upString[0]); - int downTime = Integer.parseInt(downString[0]); + int upTime = Integer.parseInt(array[index + 1]); + int downTime = Integer.parseInt(array[index + 3]); - int upIndex = upString.length > 1 ? Integer.parseInt(upString[1]) : -1; - int downIndex = downString.length > 1 ? Integer.parseInt(downString[1]) : -1; + int upEventIndex = upString.length > 1 ? Integer.parseInt(upString[1]) : -1; + int downEventIndex = downString.length > 1 ? Integer.parseInt(downString[1]) : -1; - times.add(new UpDown(upTime, upIndex, downTime, downIndex)); + times.add(new UpDown(upTime, upEventIndex, downTime, downEventIndex)); } catch (NumberFormatException e) { - System.err.println("Invalid? [" + upString + "][" + downString + "]"); + System.err.println("Invalid? [" + Arrays.toString(upString) + "][" + Arrays.toString(downString) + "]"); } index += 4; diff --git a/java_console/models/src/com/rusefi/waves/test/WaveChartParserTest.java b/java_console/models/src/com/rusefi/waves/test/WaveChartParserTest.java index ccff346bab..3dfeb87201 100644 --- a/java_console/models/src/com/rusefi/waves/test/WaveChartParserTest.java +++ b/java_console/models/src/com/rusefi/waves/test/WaveChartParserTest.java @@ -21,20 +21,20 @@ public class WaveChartParserTest { WaveChart result = WaveChartParser.unpackToMap(""); assertTrue(result.map.isEmpty()); - result = WaveChartParser.unpackToMap("wave_chart,input1 A8!u!185080!r!0!2670996!crank!u!2670996_2!crank2!u!2674512!Injector 4!u!2674512!Spark 1!u!2674512!Injector 4!d!2674665!Spark 1!d!2674912!crank2!d!2680055!crank2!u!2687963!Injector 2!u!2687963!Spark 1!u!2687963!Injector 2!d!2688116!Spark 1!d!2688363!crank2!d!2693093!crank!d!2697428!crank2!u!2700454!Injector 1!u!2700454!Spark 1!u!2700454!Injector 1!d!2700607!Spark 1!d!2700854!crank2!d!2705329!crank2!u!2712449!Injector 3!u!2712449!Spark 1!u!2712449!Injector 3!d!2712681!Spark 1!d!2712849!crank2!d!2717385!r!0!2721629!crank!u!2721629!crank2!u!2724641!Injector 1!u!2724641!Injector 2!u!2724641!Injector 3!u!2724641!Injector 4!u!2724641!Spark 1!u!2724641!Injector 4!d!2726241!Injector 3!d!2726241!Injector 2!d!2726241!Injector 1!d!2726241!crank2!d!2729677!Spark 1!d!2730008!crank2!u!2736851!Injector 1!u!2736851!Injector 2!u!2736851!Injector 3!u!2736851!Injector 4!u!2736851!Spark 1!u!2736851!Injector 4!d!2738451!Injector 3!d!2738451!Injector 2!d!2738451!Injector 1!d!2738451!crank2!d!2741922!Spark 1!d!2742218!crank!d!2746104!crank2!u!2749010!Injector 1!u!2749010!Injector 2!u!2749010!Injector 3!u!2749010!Injector 4!u!2749010!Spark 1!u!2749010!Injector 4!d!2750601!Injector 3!d!2750601!Injector 2!d!2750601!Injector 1!d!2750601!crank2!d!2753919!Spark 1!d!2754377!crank2!u!2760922!Injector 1!u!2760922!Injector 2!u!2760922!Injector 3!u!2760922!Injector 4!u!2760922!Spark 1!u!2760922!Injector 4!d!2762522!Injector 3!d!2762522!Injector 2!d!2762522!Injector 1!d!2762522!crank2!d!2765882!Spark 1!d!2766289!r!236!2769990!crank!u!2769990!crank2!u!2773003!Injector 1!u!2773003!Injector 2!u!2773003!Injector 3!u!2773003!Injector 4!u!2773003!Spark 1!u!2773003!Injector 4!d!2774603!Injector 3!d!2774603!Injector 2!d!2774603!Injector 1!d!2774603!Spark 1!d!2778110!crank2!d!2778143!crank2!u!2785215!Injector 1!u!2785215!Injector 2!u!2785215!Injector 3!u!2785215!Injector 4!u!2785215!Spark 1!u!2785215!Injector 4!d!2786815!,"); - assertEquals(9, result.map.size()); + result = WaveChartParser.unpackToMap("wave_chart,c1!u_154!0!c1!d_155!11!c1!u_156!24!spa5!u!36!c1!d_157!39!c1!u_158!49!c1!d_159!61!c1!u_160!74!c1!d_161!86!c1!u_162!99!c1!d_163!111!c1!u_164!124!"); + assertEquals(3, result.map.size()); - String crankReport = result.get("crank").toString(); + String crankReport = result.get("c1").toString(); List list = WaveReport.parse(crankReport); - assertEquals(2, list.size()); + assertEquals(4, list.size()); WaveReport.UpDown upDown = list.get(0); - assertEquals(2670996, upDown.upTime); - assertEquals(2, upDown.upIndex); + assertEquals(24, upDown.upTime); + assertEquals(156, upDown.upIndex); - assertEquals(2697428, upDown.downTime); - assertEquals(-1, upDown.downIndex); + assertEquals(39, upDown.downTime); + assertEquals(157, upDown.downIndex); } @Test diff --git a/java_console/ui/src/com/irnems/Launcher.java b/java_console/ui/src/com/irnems/Launcher.java index f78a5fc8fa..33b8af99ef 100644 --- a/java_console/ui/src/com/irnems/Launcher.java +++ b/java_console/ui/src/com/irnems/Launcher.java @@ -19,7 +19,7 @@ import javax.swing.*; * @see WavePanel */ public class Launcher extends FrameHelper { - public static final int CONSOLE_VERSION = 20141114; + public static final int CONSOLE_VERSION = 20141118; public static final boolean SHOW_STIMULATOR = true; private final String port;