diff --git a/firmware/config/engines/lada_kalina.cpp b/firmware/config/engines/lada_kalina.cpp index 71eb1b2b24..fe00a80aea 100644 --- a/firmware/config/engines/lada_kalina.cpp +++ b/firmware/config/engines/lada_kalina.cpp @@ -18,7 +18,26 @@ void setLadaKalina(DECLARE_ENGINE_PARAMETER_F) { setCustomEngineConfiguration(PASS_ENGINE_PARAMETER_F); setOperationMode(engineConfiguration, FOUR_STROKE_CRANK_SENSOR); - engineConfiguration->trigger.type = TT_60_2_VW; + engineConfiguration->trigger.type = TT_TOOTHED_WHEEL_60_2; + + boardConfiguration->triggerInputPins[0] = GPIOA_5; + boardConfiguration->triggerInputPins[1] = GPIO_UNASSIGNED; + + engineConfiguration->globalTriggerAngleOffset = 114; + + boardConfiguration->ignitionPins[0] = GPIOE_14; + boardConfiguration->ignitionPins[1] = GPIOC_7; + boardConfiguration->ignitionPins[2] = GPIOC_9; + boardConfiguration->ignitionPins[3] = GPIOE_12; + + boardConfiguration->useStepperIdle = true; + boardConfiguration->fuelPumpPin = GPIOC_13; + boardConfiguration->mainRelayPin = GPIOD_7; + + boardConfiguration->idle.stepperDirectionPin = GPIOE_15; + boardConfiguration->idle.stepperStepPin = GPIOE_13; + engineConfiguration->stepperEnablePin = GPIOE_11; + // starter relay solenoid @@ -28,6 +47,6 @@ void setLadaKalina(DECLARE_ENGINE_PARAMETER_F) { */ engineConfiguration->bc.fsio_setting[0] = 500; // set_fsio_expression 1 "rpm 0 fsio_setting <" - setFsioExt(0, GPIOE_3, "rpm 0 fsio_setting <", 150 PASS_ENGINE_PARAMETER); + setFsioExt(0, GPIOE_3, "rpm 0 fsio_setting <", 0 PASS_ENGINE_PARAMETER); } diff --git a/firmware/controllers/algo/rusefi_enums.h b/firmware/controllers/algo/rusefi_enums.h index 74fc740201..9c059b09d4 100644 --- a/firmware/controllers/algo/rusefi_enums.h +++ b/firmware/controllers/algo/rusefi_enums.h @@ -580,7 +580,7 @@ typedef enum { WARMUP_ENRICH = 2, IDLE = 3, DBG_EL_ACCEL = 4, - VALUE_5 = 5, + TRIGGER_COUNT = 5, VALUE_6 = 6, Force_4b_debug_mode_e = ENUM_32_BITS, diff --git a/firmware/controllers/core/fsio_core.cpp b/firmware/controllers/core/fsio_core.cpp index 7dec1e3b9d..81fa69b9ee 100644 --- a/firmware/controllers/core/fsio_core.cpp +++ b/firmware/controllers/core/fsio_core.cpp @@ -247,6 +247,20 @@ bool LECalculator::processElement(Engine *engine, LEElement *element) { } else { push(element->action, NAN); } + } + break; + case LE_METHOD_FSIO_TABLE: { + float i = pop(LE_METHOD_FSIO_TABLE); + float xValue = pop(LE_METHOD_FSIO_TABLE); + float yValue = pop(LE_METHOD_FSIO_TABLE); + int index = (int) i; + if (index < 0 || index > 2) { + push(element->action, NAN); + } else { + + } + + } break; case LE_METHOD_KNOCK: diff --git a/firmware/controllers/core/fsio_impl.cpp b/firmware/controllers/core/fsio_impl.cpp index 4022e06bef..6d7b99cc26 100644 --- a/firmware/controllers/core/fsio_impl.cpp +++ b/firmware/controllers/core/fsio_impl.cpp @@ -31,6 +31,7 @@ static LENameOrdinalPair leFanOnSetting(LE_METHOD_FAN_ON_SETTING, "fan_on_settin static LENameOrdinalPair leFanOffSetting(LE_METHOD_FAN_OFF_SETTING, "fan_off_setting"); static LENameOrdinalPair leTimeSinceBoot(LE_METHOD_TIME_SINCE_BOOT, "time_since_boot"); static LENameOrdinalPair leFsioSetting(LE_METHOD_FSIO_SETTING, "fsio_setting"); +static LENameOrdinalPair leFsioTable(LE_METHOD_FSIO_TABLE, "fsio_table"); static LENameOrdinalPair leKnock(LE_METHOD_KNOCK, "knock"); #define LE_EVAL_POOL_SIZE 32 diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 1fc2a6bb4c..c1d50b6bd8 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -93,7 +93,7 @@ float baseFuel;+Fuel squirt duration while cranking\nA number of curves adjust t int16_t rpm;+Cranking mode threshold. Special cranking logic controls fuel and spark while RPM is below this threshold;"RPM", 1, 0, 0, 3000, 0 end_struct -#define debug_mode_e_enum "ALTERNATOR", "TPS_ACCEL", "WARMUP_PID", "mode3", "IDLE", "EL_ACCEL", "mode6", "mode7" +#define debug_mode_e_enum "Alternator", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "mode6", "mode7" custom debug_mode_e 4 bits, U32, @OFFSET@, [0:2], @@debug_mode_e_enum@@ diff --git a/java_console/models/src/com/rusefi/config/Fields.java b/java_console/models/src/com/rusefi/config/Fields.java index ff7337a91d..9ef54fc08a 100644 --- a/java_console/models/src/com/rusefi/config/Fields.java +++ b/java_console/models/src/com/rusefi/config/Fields.java @@ -1,6 +1,6 @@ package com.rusefi.config; -// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Mar 20 15:05:16 EDT 2016 +// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Tue Mar 22 11:46:30 EDT 2016 public class Fields { public static final int LE_COMMAND_LENGTH = 200; public static final int TS_FILE_VERSION = 20160312; @@ -1300,7 +1300,7 @@ public class Fields { public static final Field TPSDECELENLEANMENTTHRESHOLD = Field.create("TPSDECELENLEANMENTTHRESHOLD", 2232, FieldType.FLOAT); public static final Field TPSDECELENLEANMENTMULTIPLIER = Field.create("TPSDECELENLEANMENTMULTIPLIER", 2236, FieldType.FLOAT); public static final Field SLOWADCALPHA = Field.create("SLOWADCALPHA", 2240, FieldType.FLOAT); - public static final String[] debug_mode_e = {"ALTERNATOR", "TPS_ACCEL", "WARMUP_PID", "mode3", "IDLE", "EL_ACCEL", "mode6", "mode7"}; + public static final String[] debug_mode_e = {"Alternator", "TPS accel enrich", "Warmup PID", "IDLE", "EL accl enrich", "Trigger Counters", "mode6", "mode7"}; public static final Field DEBUGMODE = Field.create("DEBUGMODE", 2244, FieldType.INT, debug_mode_e); public static final Field WARMUPAFRPID_PFACTOR = Field.create("WARMUPAFRPID_PFACTOR", 2248, FieldType.FLOAT); public static final Field WARMUPAFRPID_IFACTOR = Field.create("WARMUPAFRPID_IFACTOR", 2252, FieldType.FLOAT);