Console should get much smarter around compatibility with older units #6845

only:java progress
This commit is contained in:
rusefillc 2025-02-05 13:49:27 -05:00
parent d98b4a136b
commit 76b0c0a522
9 changed files with 18 additions and 10 deletions

View File

@ -2392,10 +2392,6 @@ end_struct
#define TS_TRIGGER_SCOPE_CHANNEL_1_NAME "Channel 1" #define TS_TRIGGER_SCOPE_CHANNEL_1_NAME "Channel 1"
#define TS_TRIGGER_SCOPE_CHANNEL_2_NAME "Channel 2" #define TS_TRIGGER_SCOPE_CHANNEL_2_NAME "Channel 2"
#define SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX "generated/simulator_tune_image"
#define SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX ".bin"
#define SIMULATOR_TUNE_BIN_FILE_NAME "generated/simulator_tune_image.bin"
! some board files override this value using prepend file ! some board files override this value using prepend file
#define ts_show_ign_key_switch false #define ts_show_ign_key_switch false
#define ts_show_ford_toyota_tps_pps true #define ts_show_ford_toyota_tps_pps true

View File

@ -37,6 +37,10 @@
#define REBOOT_COMMAND 0xbb #define REBOOT_COMMAND 0xbb
#define SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX "generated/simulator_tune_image"
#define SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX ".bin"
#define SIMULATOR_TUNE_BIN_FILE_NAME "generated/simulator_tune_image.bin"
#define TS_COMPOSITE_ENABLE 1 #define TS_COMPOSITE_ENABLE 1
#define TS_COMPOSITE_DISABLE 2 #define TS_COMPOSITE_DISABLE 2
#define TS_COMPOSITE_READ 3 #define TS_COMPOSITE_READ 3

View File

@ -23,7 +23,7 @@ public class CompositeParser {
List<CompositeEvent> events = new ArrayList<>(); List<CompositeEvent> events = new ArrayList<>();
while (ptr + Fields.COMPOSITE_PACKET_SIZE <= response.length) { while (ptr + Integration.COMPOSITE_PACKET_SIZE <= response.length) {
// Convert the int to a long since java can't do unsigned ints, // Convert the int to a long since java can't do unsigned ints,
// so we have to use a long (but still only want 32 bits read) // so we have to use a long (but still only want 32 bits read)

View File

@ -1254,6 +1254,7 @@ public class Fields {
public static final int SentInput_INPUT6 = 6; public static final int SentInput_INPUT6 = 6;
public static final int SentInput_INPUT7 = 7; public static final int SentInput_INPUT7 = 7;
public static final int SentInput_NONE = 0; public static final int SentInput_NONE = 0;
public static final int SIGNATURE_HASH = 881579691;
public static final String SIMULATOR_TUNE_BIN_FILE_NAME = "generated/simulator_tune_image.bin"; public static final String SIMULATOR_TUNE_BIN_FILE_NAME = "generated/simulator_tune_image.bin";
public static final String SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX = "generated/simulator_tune_image"; public static final String SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX = "generated/simulator_tune_image";
public static final String SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX = ".bin"; public static final String SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX = ".bin";

View File

@ -83,6 +83,9 @@ public class Integration {
public static final String PROTOCOL_TEST_RESPONSE_TAG = "ts_p_alive"; public static final String PROTOCOL_TEST_RESPONSE_TAG = "ts_p_alive";
public static final String PROTOCOL_VERSION_TAG = "rusEfiVersion"; public static final String PROTOCOL_VERSION_TAG = "rusEfiVersion";
public static final int REBOOT_COMMAND = 0xbb; public static final int REBOOT_COMMAND = 0xbb;
public static final String SIMULATOR_TUNE_BIN_FILE_NAME = "generated/simulator_tune_image.bin";
public static final String SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX = "generated/simulator_tune_image";
public static final String SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX = ".bin";
public static final String TOP_DEAD_CENTER_MESSAGE = "r"; public static final String TOP_DEAD_CENTER_MESSAGE = "r";
public static final char TS_BURN_COMMAND = 'B'; public static final char TS_BURN_COMMAND = 'B';
public static final char TS_CHUNK_WRITE_COMMAND = 'C'; public static final char TS_CHUNK_WRITE_COMMAND = 'C';

View File

@ -1,6 +1,7 @@
package com.rusefi.waves; package com.rusefi.waves;
import com.rusefi.config.generated.Fields; import com.rusefi.config.generated.Fields;
import com.rusefi.config.generated.Integration;
import java.util.Map; import java.util.Map;
@ -39,7 +40,7 @@ public class EngineChart {
} }
public RevolutionLog getRevolutionsLog() { public RevolutionLog getRevolutionsLog() {
StringBuilder revolutions = get(Fields.TOP_DEAD_CENTER_MESSAGE); StringBuilder revolutions = get(Integration.TOP_DEAD_CENTER_MESSAGE);
return RevolutionLog.parseRevolutions(revolutions); return RevolutionLog.parseRevolutions(revolutions);
} }

View File

@ -2,6 +2,7 @@ package com.rusefi.ui;
import com.rusefi.FileLog; import com.rusefi.FileLog;
import com.rusefi.config.generated.Fields; import com.rusefi.config.generated.Fields;
import com.rusefi.config.generated.Integration;
import com.rusefi.core.MessagesCentral; import com.rusefi.core.MessagesCentral;
import com.rusefi.core.preferences.storage.Node; import com.rusefi.core.preferences.storage.Node;
import com.rusefi.ui.util.UiUtils; import com.rusefi.ui.util.UiUtils;
@ -51,7 +52,7 @@ public class WarningPanel {
if (haveFatalError) if (haveFatalError)
return; return;
if (message.startsWith(Fields.CRITICAL_PREFIX)) { if (message.startsWith(Integration.CRITICAL_PREFIX)) {
haveFatalError = true; haveFatalError = true;
criticalErrorBlinking.start(); criticalErrorBlinking.start();
label.setText(message); label.setText(message);

View File

@ -2,6 +2,7 @@ package com.rusefi.ui.console;
import com.rusefi.PaneSettings; import com.rusefi.PaneSettings;
import com.rusefi.config.generated.Fields; import com.rusefi.config.generated.Fields;
import com.rusefi.config.generated.Integration;
import com.rusefi.core.MessagesCentral; import com.rusefi.core.MessagesCentral;
import com.rusefi.io.ConnectionStatusLogic; import com.rusefi.io.ConnectionStatusLogic;
import com.rusefi.ui.LogDownloader; import com.rusefi.ui.LogDownloader;
@ -53,7 +54,7 @@ public class TabbedPanel {
public TabbedPanel(UIContext uiContext) { public TabbedPanel(UIContext uiContext) {
MessagesCentral.getInstance().addListener((clazz, message) -> { MessagesCentral.getInstance().addListener((clazz, message) -> {
if (message.startsWith(Fields.CRITICAL_PREFIX)) if (message.startsWith(Integration.CRITICAL_PREFIX))
criticalError = message; criticalError = message;
}); });

View File

@ -6,6 +6,7 @@ import com.opensr5.ini.*;
import com.rusefi.binaryprotocol.BinaryProtocol; import com.rusefi.binaryprotocol.BinaryProtocol;
import com.rusefi.binaryprotocol.MsqFactory; import com.rusefi.binaryprotocol.MsqFactory;
import com.rusefi.config.generated.Fields; import com.rusefi.config.generated.Fields;
import com.rusefi.config.generated.Integration;
import com.rusefi.enums.engine_type_e; import com.rusefi.enums.engine_type_e;
import com.rusefi.tune.xml.Constant; import com.rusefi.tune.xml.Constant;
import com.rusefi.tune.xml.Msq; import com.rusefi.tune.xml.Msq;
@ -37,7 +38,7 @@ public class WriteSimulatorConfiguration {
log.info("ROOT_FOLDER=" + ROOT_FOLDER); log.info("ROOT_FOLDER=" + ROOT_FOLDER);
try { try {
try { try {
readBinaryWriteXmlTune(iniFileName, Fields.SIMULATOR_TUNE_BIN_FILE_NAME, ENGINE_TUNE_OUTPUT_FOLDER + TuneCanTool.DEFAULT_TUNE, ini); readBinaryWriteXmlTune(iniFileName, Integration.SIMULATOR_TUNE_BIN_FILE_NAME, ENGINE_TUNE_OUTPUT_FOLDER + TuneCanTool.DEFAULT_TUNE, ini);
} catch (Throwable e) { } catch (Throwable e) {
throw new IllegalStateException("White default tune", e); throw new IllegalStateException("White default tune", e);
} }
@ -56,7 +57,7 @@ public class WriteSimulatorConfiguration {
private static void writeSpecificEngineType(String iniFileName, engine_type_e engineType, IniFileModelImpl ini) { private static void writeSpecificEngineType(String iniFileName, engine_type_e engineType, IniFileModelImpl ini) {
try { try {
String in = Fields.SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX + "_" + engineType.ordinal() + Fields.SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX; String in = Integration.SIMULATOR_TUNE_BIN_FILE_NAME_PREFIX + "_" + engineType.ordinal() + Integration.SIMULATOR_TUNE_BIN_FILE_NAME_SUFFIX;
readBinaryWriteXmlTune(iniFileName, in, readBinaryWriteXmlTune(iniFileName, in,
TuneCanTool.getDefaultTuneOutputFileName(engineType), ini); TuneCanTool.getDefaultTuneOutputFileName(engineType), ini);
} catch (Throwable e) { } catch (Throwable e) {