From f892c7b8b4f5c2d8b67feaff8f3188653b31013e Mon Sep 17 00:00:00 2001 From: rusefi Date: Sat, 6 Jun 2020 11:00:18 -0400 Subject: [PATCH] .logicdata files are a bit broken #1482 hiding feature for now :( --- .../io/src/com/rusefi/binaryprotocol/BinaryProtocol.java | 9 +++++---- .../src/com/rusefi/stream/LogicdataStreamFile.java | 9 ++++++++- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocol.java b/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocol.java index 70c01cba66..15e56f2dd8 100644 --- a/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocol.java +++ b/java_console/io/src/com/rusefi/binaryprotocol/BinaryProtocol.java @@ -14,7 +14,6 @@ import com.rusefi.core.Pair; import com.rusefi.core.Sensor; import com.rusefi.core.SensorCentral; import com.rusefi.io.*; -import com.rusefi.stream.LogicdataStreamFile; import com.rusefi.stream.StreamFile; import com.rusefi.stream.TSHighSpeedLog; import com.rusefi.stream.VcdStreamFile; @@ -87,9 +86,11 @@ public class BinaryProtocol implements BinaryProtocolCommands { private void createCompositesIfNeeded() { if (!compositeLogs.isEmpty()) return; - compositeLogs.addAll(Arrays.asList(new VcdStreamFile(getFileName("rusEFI_trigger_log_")), - new TSHighSpeedLog(getFileName("rusEFI_trigger_log_")), - new LogicdataStreamFile(getFileName("rusEFI_trigger_log_", ".logicdata")))); + compositeLogs.addAll(Arrays.asList( + new VcdStreamFile(getFileName("rusEFI_trigger_log_")), +// new LogicdataStreamFile(getFileName("rusEFI_trigger_log_", ".logicdata")), + new TSHighSpeedLog(getFileName("rusEFI_trigger_log_")) + )); } public boolean isClosed; diff --git a/java_console/models/src/com/rusefi/stream/LogicdataStreamFile.java b/java_console/models/src/com/rusefi/stream/LogicdataStreamFile.java index 32ceabd66b..5da8055ddd 100644 --- a/java_console/models/src/com/rusefi/stream/LogicdataStreamFile.java +++ b/java_console/models/src/com/rusefi/stream/LogicdataStreamFile.java @@ -12,6 +12,12 @@ import java.util.List; /** * Support for Saleae .logicdata format. * (c) andreika 2020 + * + * Jun 6 status: this code mostly works but it does not work completely + * 1) at some point it looked like file produced by LogicdataStreamFileSandbox was valid but it's again not valid? + * 2) event gaps above 32ms are not supported but those are absolutely required for cranking attempts + * + * @see LogicdataStreamFileSandbox */ public class LogicdataStreamFile extends StreamFile { @@ -99,7 +105,8 @@ public class LogicdataStreamFile extends StreamFile { int delta = ts - prevTs; if (delta > 0x7fff) { // todo: split too long events? - throw new IOException(); + // this is just 32ms cap between events which is very possible during cranking attempts + throw new IllegalArgumentException("Event too long."); } // encode state if (chState == 0)