From 84955cdedb6435a35f97366eeffb3b3aef79a3cb Mon Sep 17 00:00:00 2001 From: rusefi Date: Sun, 21 Jul 2019 17:06:16 -0400 Subject: [PATCH] throttle pedal up switch for Miata NA6 --- firmware/config/engines/mazda_miata_1_6.cpp | 4 + .../controllers/actuators/idle_thread.cpp | 42 ++++--- ...ngine_configuration_generated_structures.h | 14 ++- .../generated/engine_state_generated.h | 112 ++++++++++++++---- .../controllers/generated/rusefi_generated.h | 10 +- firmware/controllers/generated/thermistor.h | 10 +- firmware/controllers/generated/wall_fuel.h | 8 +- firmware/integration/engine_state.txt | 21 ++++ firmware/integration/rusefi_config.txt | 7 +- firmware/tunerstudio/rusefi.ini | 15 ++- firmware/tunerstudio/rusefi.input | 7 +- firmware/tunerstudio/rusefi_frankenso.ini | 15 ++- firmware/tunerstudio/rusefi_microrusefi.ini | 15 ++- firmware/tunerstudio/rusefi_prometheus.ini | 15 ++- .../rusefi/config/generated/EngineState.java | 42 +++++-- .../com/rusefi/config/generated/Fields.java | 19 +-- .../src/com/rusefi/TypesHelper.java | 7 +- .../com/rusefi/output/CHeaderConsumer.java | 3 +- 18 files changed, 257 insertions(+), 109 deletions(-) diff --git a/firmware/config/engines/mazda_miata_1_6.cpp b/firmware/config/engines/mazda_miata_1_6.cpp index 1e52cd87e4..3083b66955 100644 --- a/firmware/config/engines/mazda_miata_1_6.cpp +++ b/firmware/config/engines/mazda_miata_1_6.cpp @@ -1,6 +1,10 @@ /* * @file mazda_miata_1_6.cpp * + * + * https://github.com/rusefi/rusefi_documentation/wiki/Frankenso_MazdaMiataNA6_pnp + * + * * Frankenso board * set engine_type 41 * diff --git a/firmware/controllers/actuators/idle_thread.cpp b/firmware/controllers/actuators/idle_thread.cpp index cf9cb95070..6a3afa02ad 100644 --- a/firmware/controllers/actuators/idle_thread.cpp +++ b/firmware/controllers/actuators/idle_thread.cpp @@ -65,14 +65,6 @@ static float lastCrankingIacPosition; static idle_state_e idleState = INIT; -/** - * that's current position with CLT and IAT corrections - */ -static percent_t currentIdlePosition = -100.0f; -/** - * the same as currentIdlePosition, but without adjustments (iacByTpsTaper, afterCrankingIACtaperDuration) - */ -static percent_t baseIdlePosition = currentIdlePosition; /** * When the IAC position value change is insignificant (lower than this threshold), leave the poor valve alone * todo: why do we have this logic? is this ever useful? @@ -173,7 +165,7 @@ static void undoIdleBlipIfNeeded() { } percent_t getIdlePosition(void) { - return currentIdlePosition; + return engine->engineState.idle.currentIdlePosition; } /** @@ -191,7 +183,7 @@ static percent_t automaticIdleController() { idleState = TPS_THRESHOLD; // just leave IAC position as is (but don't return currentIdlePosition - it may already contain additionalAir) - return baseIdlePosition; + return engine->engineState.idle.baseIdlePosition; } // get Target RPM for Auto-PID from a separate table @@ -202,7 +194,7 @@ static percent_t automaticIdleController() { if (absI(rpm - targetRpm) <= CONFIG(idlePidRpmDeadZone)) { idleState = RPM_DEAD_ZONE; // current RPM is close enough, no need to change anything - return baseIdlePosition; + return engine->engineState.idle.baseIdlePosition; } // When rpm < targetRpm, there's a risk of dropping RPM too low - and the engine dies out. @@ -222,7 +214,7 @@ static percent_t automaticIdleController() { #if EFI_IDLE_INCREMENTAL_PID_CIC // Treat the 'newValue' as if it contains not an actual IAC position, but an incremental delta. // So we add this delta to the base IAC position, with a smooth taper for TPS transients. - newValue = baseIdlePosition + interpolateClamped(0.0f, newValue, CONFIGB(idlePidDeactivationTpsThreshold), 0.0f, tpsPos); + newValue = engine->engineState.idle.baseIdlePosition + interpolateClamped(0.0f, newValue, CONFIGB(idlePidDeactivationTpsThreshold), 0.0f, tpsPos); // apply the PID limits newValue = maxF(newValue, CONFIG(idleRpmPid.minValue)); @@ -242,7 +234,7 @@ static percent_t automaticIdleController() { newValue = interpolateClamped(idlePidLowerRpm, newValue, idlePidLowerRpm + CONFIG(idlePidRpmUpperLimit), iacPosForCoasting, rpm); } else { // Well, just leave it as is, without PID regulation... - newValue = baseIdlePosition; + newValue = engine->engineState.idle.baseIdlePosition; } } @@ -285,6 +277,9 @@ class IdleController : public PeriodicTimerController { if (CONFIGB(clutchUpPin) != GPIO_UNASSIGNED) { engine->clutchUpState = efiReadPin(CONFIGB(clutchUpPin)); } + if (CONFIG(throttlePedalUpPin) != GPIO_UNASSIGNED) { + engine->engineState.idle.throttleUpState = efiReadPin(CONFIG(throttlePedalUpPin)); + } if (engineConfiguration->brakePedalPin != GPIO_UNASSIGNED) { engine->brakePedalState = efiReadPin(engineConfiguration->brakePedalPin); @@ -317,7 +312,7 @@ class IdleController : public PeriodicTimerController { if (timeToStopBlip != 0) { iacPosition = blipIdlePosition; - baseIdlePosition = iacPosition; + engine->engineState.idle.baseIdlePosition = iacPosition; idleState = BLIP; } else if (!isRunning) { // during cranking it's always manual mode, PID would make no sense during cranking @@ -325,7 +320,7 @@ class IdleController : public PeriodicTimerController { // save cranking position & cycles counter for taper transition lastCrankingIacPosition = iacPosition; lastCrankingCyclesCounter = engine->rpmCalculator.getRevolutionCounterSinceStart(); - baseIdlePosition = iacPosition; + engine->engineState.idle.baseIdlePosition = iacPosition; } else { if (engineConfiguration->idleMode == IM_MANUAL) { // let's re-apply CLT correction @@ -335,7 +330,7 @@ class IdleController : public PeriodicTimerController { } // store 'base' iacPosition without adjustments - baseIdlePosition = iacPosition; + engine->engineState.idle.baseIdlePosition = iacPosition; percent_t tpsPos = getTPS(PASS_ENGINE_PARAMETER_SIGNATURE); float additionalAir = (float)engineConfiguration->iacByTpsTaper; @@ -365,14 +360,14 @@ class IdleController : public PeriodicTimerController { } // The threshold is dependent on IAC type (see initIdleHardware()) - if (absF(iacPosition - currentIdlePosition) < idlePositionSensitivityThreshold) { + if (absF(iacPosition - engine->engineState.idle.currentIdlePosition) < idlePositionSensitivityThreshold) { idleState = (idle_state_e)(idleState | PWM_PRETTY_CLOSE); return; // value is pretty close, let's leave the poor valve alone } - currentIdlePosition = iacPosition; + engine->engineState.idle.currentIdlePosition = iacPosition; idleState = (idle_state_e)(idleState | ADJUSTING); - applyIACposition(currentIdlePosition); + applyIACposition(engine->engineState.idle.currentIdlePosition); } }; @@ -480,6 +475,10 @@ void startIdleThread(Logging*sharedLogger) { // todo: re-initialize idle pins on the fly initIdleHardware(); + engine->engineState.idle.currentIdlePosition = -100.0f; + engine->engineState.idle.baseIdlePosition = -100.0f; + + //scheduleMsg(logger, "initial idle %d", idlePositionController.value); instance.Start(); @@ -496,6 +495,11 @@ void startIdleThread(Logging*sharedLogger) { getInputMode(CONFIGB(clutchUpPinMode))); } + if (CONFIG(throttlePedalUpPin) != GPIO_UNASSIGNED) { + efiSetPadMode("clutch up switch", CONFIG(throttlePedalUpPin), + getInputMode(CONFIGB(throttlePedalUpPinMode))); + } + if (engineConfiguration->brakePedalPin != GPIO_UNASSIGNED) { #if EFI_PROD_CODE efiSetPadMode("brake pedal switch", engineConfiguration->brakePedalPin, diff --git a/firmware/controllers/generated/engine_configuration_generated_structures.h b/firmware/controllers/generated/engine_configuration_generated_structures.h index 637d87b865..2b7c8235f7 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures.h @@ -1,4 +1,4 @@ -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 12:15:43 EDT 2019 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 16:54:25 EDT 2019 // by class com.rusefi.output.CHeaderConsumer // begin #ifndef CONTROLLERS_GENERATED_ENGINE_CONFIGURATION_GENERATED_STRUCTURES_H @@ -651,7 +651,11 @@ struct board_configuration_s { /** * offset 110 */ - uint8_t unusedMa2[2]; + pin_input_mode_e throttlePedalUpPinMode; + /** + * offset 111 + */ + uint8_t unusedMa2; /** * offset 112 */ @@ -1450,9 +1454,10 @@ struct engine_configuration_s { */ pin_output_mode_e tle6240_csPinMode; /** + * Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata * offset 583 */ - uint8_t unusedt; + switch_input_pin_e throttlePedalUpPin; /** * @see hasBaroSensor * offset 584 @@ -2244,6 +2249,7 @@ struct engine_configuration_s { */ brain_pin_e mc33816_driven; /** + * Brake pedal switch * offset 2608 */ switch_input_pin_e brakePedalPin; @@ -2807,4 +2813,4 @@ typedef struct persistent_config_s persistent_config_s; #endif // end -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 12:15:43 EDT 2019 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 16:54:25 EDT 2019 diff --git a/firmware/controllers/generated/engine_state_generated.h b/firmware/controllers/generated/engine_state_generated.h index 29f6af3067..acdbb2a599 100644 --- a/firmware/controllers/generated/engine_state_generated.h +++ b/firmware/controllers/generated/engine_state_generated.h @@ -1,9 +1,65 @@ -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/engine_state.txt Sat Jul 20 12:28:04 EDT 2019 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/engine_state.txt Sun Jul 21 16:50:42 EDT 2019 // by class com.rusefi.output.CHeaderConsumer // begin #ifndef CONTROLLERS_GENERATED_ENGINE_STATE_GENERATED_H #define CONTROLLERS_GENERATED_ENGINE_STATE_GENERATED_H #include "rusefi_types.h" +// start of pid_state_s +struct pid_state_s { + /** + * offset 0 + */ + float iTerm = (float)0; + /** + * we are remembering this only for debugging purposes + * offset 4 + */ + float dTerm = (float)0; + /** + * only used for logging + * offset 8 + */ + float target = (float)0; + /** + * only used for logging + * offset 12 + */ + float input = (float)0; + /** + * only used for logging + * offset 16 + */ + float output = (float)0; + /** total size 20*/ +}; + +typedef struct pid_state_s pid_state_s; + +// start of idle_state_s +struct idle_state_s { + /** + * offset 0 + */ + idle_state_e idleState = (idle_state_e)0; + /** + * that's current position with CLT and IAT corrections + * offset 4 + */ + percent_t currentIdlePosition = (percent_t)0; + /** + * current position without adjustments (iacByTpsTaper, afterCrankingIACtaperDuration) + * offset 8 + */ + percent_t baseIdlePosition = (percent_t)0; + /** + * offset 12 + */ + int throttleUpState = (int)0; + /** total size 16*/ +}; + +typedef struct idle_state_s idle_state_s; + // start of speed_density_s struct speed_density_s { /** @@ -13,33 +69,33 @@ struct speed_density_s { * Speed-density logic: calculated air mass in one cylinder, in grams * offset 4 */ - float airMassInOneCylinder = 0; + float airMassInOneCylinder = (float)0; /** * speed density * Rate-of-change limiter is applied to degrees, so we store both Kelvin and degrees. * offset 8 */ - float tCharge = 0; + float tCharge = (float)0; /** * offset 12 */ - float tChargeK = 0; + float tChargeK = (float)0; /** * offset 16 */ - float Tcharge_coff = 0; + float Tcharge_coff = (float)0; /** * offset 20 */ - floatms_t airFlow = 0; + floatms_t airFlow = (floatms_t)0; /** * offset 24 */ - float manifoldAirPressureAccelerationAdjustment = 0; + float manifoldAirPressureAccelerationAdjustment = (float)0; /** * offset 28 */ - float adjustedManifoldAirPressure = 0; + float adjustedManifoldAirPressure = (float)0; /** total size 32*/ }; @@ -54,36 +110,40 @@ struct engine_state2_s { /** * offset 32 */ - float targetAFR = 0; - /** - * offset 36 - */ - float engineCycleDurationMs = 0; - /** - * offset 40 - */ - float minRpmKcurrentTPS = 0; - /** - * offset 44 - */ - int currentTpsAdc = 0; + idle_state_s idle; /** * offset 48 */ - float tpsVoltageMCU = 0; + float targetAFR = (float)0; /** * offset 52 */ - float tpsVoltageBoard = 0; + float engineCycleDurationMs = (float)0; /** * offset 56 */ - float currentBaroCorrectedVE = 0; - /** total size 60*/ + float minRpmKcurrentTPS = (float)0; + /** + * offset 60 + */ + int currentTpsAdc = (int)0; + /** + * offset 64 + */ + float tpsVoltageMCU = (float)0; + /** + * offset 68 + */ + float tpsVoltageBoard = (float)0; + /** + * offset 72 + */ + float currentBaroCorrectedVE = (float)0; + /** total size 76*/ }; typedef struct engine_state2_s engine_state2_s; #endif // end -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/engine_state.txt Sat Jul 20 12:28:04 EDT 2019 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/engine_state.txt Sun Jul 21 16:50:42 EDT 2019 diff --git a/firmware/controllers/generated/rusefi_generated.h b/firmware/controllers/generated/rusefi_generated.h index e80edb052f..75558c2314 100644 --- a/firmware/controllers/generated/rusefi_generated.h +++ b/firmware/controllers/generated/rusefi_generated.h @@ -1668,6 +1668,10 @@ #define test557pin_offset_hex c1d #define throttlePedalPositionAdcChannel_offset 580 #define throttlePedalPositionAdcChannel_offset_hex 244 +#define throttlePedalUpPin_offset 583 +#define throttlePedalUpPin_offset_hex 247 +#define throttlePedalUpPinMode_offset 710 +#define throttlePedalUpPinMode_offset_hex 2c6 #define throttlePedalUpVoltage_offset 1884 #define throttlePedalUpVoltage_offset_hex 75c #define throttlePedalWOTVoltage_offset 1888 @@ -1832,8 +1836,8 @@ #define unusedFormerWarmupAfrPid_offset_hex 6dc #define unusedh_offset 1471 #define unusedh_offset_hex 5bf -#define unusedMa2_offset 710 -#define unusedMa2_offset_hex 2c6 +#define unusedMa2_offset 711 +#define unusedMa2_offset_hex 2c7 #define unusedOldWarmupAfr_offset 744 #define unusedOldWarmupAfr_offset_hex 2e8 #define unusedSpiPadding2_offset 804 @@ -1850,8 +1854,6 @@ #define unusedSpiPadding7_offset_hex fa5 #define unusedSpiPadding8_offset 4009 #define unusedSpiPadding8_offset_hex fa9 -#define unusedt_offset 583 -#define unusedt_offset_hex 247 #define unuseduartPadding1_offset 808 #define unuseduartPadding1_offset_hex 328 #define unusuedsw_offset 4020 diff --git a/firmware/controllers/generated/thermistor.h b/firmware/controllers/generated/thermistor.h index e6c9ca506a..544fe9b6ad 100644 --- a/firmware/controllers/generated/thermistor.h +++ b/firmware/controllers/generated/thermistor.h @@ -1,4 +1,4 @@ -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/thermistor.txt Sat Jul 20 12:28:04 EDT 2019 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/thermistor.txt Sun Jul 21 16:36:56 EDT 2019 // by class com.rusefi.output.CHeaderConsumer // begin #ifndef CONTROLLERS_GENERATED_THERMISTOR_H @@ -9,15 +9,15 @@ struct thermistor_state_s { /** * offset 0 */ - float resistance = 0; + float resistance = (float)0; /** * offset 4 */ - float voltageMCU = 0; + float voltageMCU = (float)0; /** * offset 8 */ - float voltageBoard = 0; + float voltageBoard = (float)0; /** total size 12*/ }; @@ -25,4 +25,4 @@ typedef struct thermistor_state_s thermistor_state_s; #endif // end -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/thermistor.txt Sat Jul 20 12:28:04 EDT 2019 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/thermistor.txt Sun Jul 21 16:36:56 EDT 2019 diff --git a/firmware/controllers/generated/wall_fuel.h b/firmware/controllers/generated/wall_fuel.h index c4a48a3e9b..5066230b26 100644 --- a/firmware/controllers/generated/wall_fuel.h +++ b/firmware/controllers/generated/wall_fuel.h @@ -1,4 +1,4 @@ -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/wall_fuel.txt Sat Jul 20 12:28:05 EDT 2019 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/wall_fuel.txt Sun Jul 21 16:36:58 EDT 2019 // by class com.rusefi.output.CHeaderConsumer // begin #ifndef CONTROLLERS_GENERATED_WALL_FUEL_H @@ -10,12 +10,12 @@ struct wall_fuel_state { * * fuel injection time correction to account for wall wetting effect, for current cycle * offset 0 */ - float wallFuelCorrection = 0; + float wallFuelCorrection = (float)0; /** * Amount of fuel on the wall, in ms of injector open time, for each injector. * offset 4 */ - floatms_t wallFuel = 0; + floatms_t wallFuel = (floatms_t)0; /** total size 8*/ }; @@ -23,4 +23,4 @@ typedef struct wall_fuel_state wall_fuel_state; #endif // end -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/wall_fuel.txt Sat Jul 20 12:28:05 EDT 2019 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/wall_fuel.txt Sun Jul 21 16:36:58 EDT 2019 diff --git a/firmware/integration/engine_state.txt b/firmware/integration/engine_state.txt index e8d7683d2f..1a70ca098e 100644 --- a/firmware/integration/engine_state.txt +++ b/firmware/integration/engine_state.txt @@ -1,4 +1,22 @@ +struct_no_prefix pid_state_s + float iTerm; + float dTerm;we are remembering this only for debugging purposes + float target;only used for logging + float input;only used for logging + float output;only used for logging + + + +end_struct + +struct_no_prefix idle_state_s + idle_state_e idleState + percent_t currentIdlePosition;that's current position with CLT and IAT corrections + percent_t baseIdlePosition;current position without adjustments (iacByTpsTaper, afterCrankingIACtaperDuration) + int throttleUpState + +end_struct struct_no_prefix engine_state2_s @@ -25,6 +43,9 @@ end_struct speed_density_s sd; + +idle_state_s idle; + float targetAFR diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 0557c473e8..134613033c 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -474,7 +474,7 @@ adc_channel_e throttlePedalPositionAdcChannel;Electronic throttle pedal position brain_pin_e tle6240_cs; pin_output_mode_e tle6240_csPinMode; -uint8_t[1] unusedt; +switch_input_pin_e throttlePedalUpPin;+Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata air_pressure_sensor_config_s baroSensor;@see hasBaroSensor @@ -566,7 +566,8 @@ custom adc_channel_mode_e 4 bits, U32, @OFFSET@, [0:1], "Off", "Slow", "Fas brain_pin_e canTxPin; brain_pin_e canRxPin; - uint8_t[2] unusedMa2; +pin_input_mode_e throttlePedalUpPinMode; + uint8_t[1] unusedMa2; int idleThreadPeriodMs; int consoleLoopPeriodMs; @@ -960,7 +961,7 @@ float[MAP_ACCEL_TAPER] mapAccelTaperMult;;"mult", 1, 0, 0.0, 300, brain_pin_e mc33816_rstb;ResetB brain_pin_e mc33816_driven - switch_input_pin_e brakePedalPin + switch_input_pin_e brakePedalPin;Brake pedal switch adc_channel_e cj125ua;lambda input adc_channel_e cj125ur;heater input pin_input_mode_e brakePedalPinMode; diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 7cf32c9b3e..3609e5d0f5 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -82,7 +82,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Thu Jul 18 18:26:35 EDT 2019 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 16:54:25 EDT 2019 pageSize = 20000 page = 1 @@ -226,7 +226,7 @@ page = 1 throttlePedalPositionAdcChannel = bits, U08, 580, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "PB12", "PB13", "PC14", "PC15", "PC16", "PC17", "PD3", "PD4", "PE2", "PE6", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" tle6240_cs = bits, U08, 581, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" tle6240_csPinMode = bits, U08, 582, [0:1], "default", "default inverted", "open collector", "open collector inverted" -;no TS info - skipping unusedt offset 583 + throttlePedalUpPin = bits, U08, 583, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" baroSensor_lowValue = scalar, F32, 584, "kpa", 1, 0, -400, 800, 2 baroSensor_highValue = scalar, F32, 588, "kpa", 1, 0, -400, 800, 2 baroSensor_type = bits, U32, 592, [0:3] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "INVALID" @@ -315,7 +315,8 @@ page = 1 sdCardCsPin = bits, U08, 707, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" canTxPin = bits, U08, 708, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" canRxPin = bits, U08, 709, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;no TS info - skipping unusedMa2 offset 710 + throttlePedalUpPinMode = scalar, U08, 710, "todo", 1, 0, 0, 20, 1 +;no TS info - skipping unusedMa2 offset 711 ;no TS info - skipping idleThreadPeriodMs offset 712 ;no TS info - skipping consoleLoopPeriodMs offset 716 ;no TS info - skipping lcdThreadPeriodMs offset 720 @@ -990,6 +991,7 @@ page = 1 camInputs2 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs3 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs4 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" + throttlePedalUpPin = "Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata" triggerSimulatorFrequency = "See also triggerSimulatorPins\nSee also directSelfStimulation\nrpm X" tachOutputPin = "This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin." useStepperIdle = "This setting should only be used if you have a stepper motor idle valve and a stepper motor driver installed." @@ -2527,11 +2529,12 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = otherSensorInputs, "Other Sensor Inputs" field = "Fuel level", fuelLevelSensor field = "Flex fuel", flexFuelSensor - field = "Clutch down pin", clutchDownPin + field = "Clutch down switch", clutchDownPin field = "Clutch down inverted", clutchDownPinInverted - field = "Clutch up pin", clutchUpPin + field = "Clutch up switch", clutchUpPin field = "Clutch up inverted", clutchUpPinInverted - field = "Brake pedal pin", brakePedalPin + field = "Throttle Up switch", throttlePedalUpPin + field = "Brake pedal switch", brakePedalPin field = "A/C switch", acSwitchAdc dialog = triggerInputs, "Trigger Inputs" diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index 6b5df62aa7..8c7fd97e51 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -1552,11 +1552,12 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = otherSensorInputs, "Other Sensor Inputs" field = "Fuel level", fuelLevelSensor field = "Flex fuel", flexFuelSensor - field = "Clutch down pin", clutchDownPin + field = "Clutch down switch", clutchDownPin field = "Clutch down inverted", clutchDownPinInverted - field = "Clutch up pin", clutchUpPin + field = "Clutch up switch", clutchUpPin field = "Clutch up inverted", clutchUpPinInverted - field = "Brake pedal pin", brakePedalPin + field = "Throttle Up switch", throttlePedalUpPin + field = "Brake pedal switch", brakePedalPin field = "A/C switch", acSwitchAdc dialog = triggerInputs, "Trigger Inputs" diff --git a/firmware/tunerstudio/rusefi_frankenso.ini b/firmware/tunerstudio/rusefi_frankenso.ini index 86285bec01..81a63bc633 100644 --- a/firmware/tunerstudio/rusefi_frankenso.ini +++ b/firmware/tunerstudio/rusefi_frankenso.ini @@ -82,7 +82,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Thu Jul 18 18:26:39 EDT 2019 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 16:54:30 EDT 2019 pageSize = 20000 page = 1 @@ -226,7 +226,7 @@ page = 1 throttlePedalPositionAdcChannel = bits, U08, 580, [0:4] "Analog 3O","Analog 3L","Analog 3M","Analog 3J","Analog 3I","INVALID","Analog 3H","Analog 3G","INVALID","INVALID","INVALID","Analog 3P","Analog 3Q","Analog 3N","Analog VBatt","Analog 3E","NONE","INVALID","INVALID","INVALID" tle6240_cs = bits, U08, 581, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" tle6240_csPinMode = bits, U08, 582, [0:1], "default", "default inverted", "open collector", "open collector inverted" -;no TS info - skipping unusedt offset 583 + throttlePedalUpPin = bits, U08, 583, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" baroSensor_lowValue = scalar, F32, 584, "kpa", 1, 0, -400, 800, 2 baroSensor_highValue = scalar, F32, 588, "kpa", 1, 0, -400, 800, 2 baroSensor_type = bits, U32, 592, [0:3] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "INVALID" @@ -315,7 +315,8 @@ page = 1 sdCardCsPin = bits, U08, 707, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" canTxPin = bits, U08, 708, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" canRxPin = bits, U08, 709, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;no TS info - skipping unusedMa2 offset 710 + throttlePedalUpPinMode = scalar, U08, 710, "todo", 1, 0, 0, 20, 1 +;no TS info - skipping unusedMa2 offset 711 ;no TS info - skipping idleThreadPeriodMs offset 712 ;no TS info - skipping consoleLoopPeriodMs offset 716 ;no TS info - skipping lcdThreadPeriodMs offset 720 @@ -990,6 +991,7 @@ page = 1 camInputs2 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs3 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs4 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" + throttlePedalUpPin = "Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata" triggerSimulatorFrequency = "See also triggerSimulatorPins\nSee also directSelfStimulation\nrpm X" tachOutputPin = "This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin." useStepperIdle = "This setting should only be used if you have a stepper motor idle valve and a stepper motor driver installed." @@ -2527,11 +2529,12 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = otherSensorInputs, "Other Sensor Inputs" field = "Fuel level", fuelLevelSensor field = "Flex fuel", flexFuelSensor - field = "Clutch down pin", clutchDownPin + field = "Clutch down switch", clutchDownPin field = "Clutch down inverted", clutchDownPinInverted - field = "Clutch up pin", clutchUpPin + field = "Clutch up switch", clutchUpPin field = "Clutch up inverted", clutchUpPinInverted - field = "Brake pedal pin", brakePedalPin + field = "Throttle Up switch", throttlePedalUpPin + field = "Brake pedal switch", brakePedalPin field = "A/C switch", acSwitchAdc dialog = triggerInputs, "Trigger Inputs" diff --git a/firmware/tunerstudio/rusefi_microrusefi.ini b/firmware/tunerstudio/rusefi_microrusefi.ini index 44dc6f2c4e..be03f1bb42 100644 --- a/firmware/tunerstudio/rusefi_microrusefi.ini +++ b/firmware/tunerstudio/rusefi_microrusefi.ini @@ -82,7 +82,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Thu Jul 18 18:26:37 EDT 2019 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 16:54:28 EDT 2019 pageSize = 20000 page = 1 @@ -226,7 +226,7 @@ page = 1 throttlePedalPositionAdcChannel = bits, U08, 580, [0:4] "18 - AN temp 1","23 - AN temp 2","24 - AN temp 3","22 - AN temp 4","19 - AN volt 10","INVALID","32 - AN volt 2","31 - AN volt 3","36 - AN volt 8","40 - AN volt 9","27 - AN-VOLT-1","Battery Sense","19 - AN volt 4","20 - AN volt 5","32 - AN volt 6","30 - AN volt 7","NONE","INVALID","INVALID","INVALID" tle6240_cs = bits, U08, 581, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" tle6240_csPinMode = bits, U08, 582, [0:1], "default", "default inverted", "open collector", "open collector inverted" -;no TS info - skipping unusedt offset 583 + throttlePedalUpPin = bits, U08, 583, [0:7], "NONE","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","Brake Switch","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","Clutch Switch","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID" baroSensor_lowValue = scalar, F32, 584, "kpa", 1, 0, -400, 800, 2 baroSensor_highValue = scalar, F32, 588, "kpa", 1, 0, -400, 800, 2 baroSensor_type = bits, U32, 592, [0:3] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "INVALID" @@ -315,7 +315,8 @@ page = 1 sdCardCsPin = bits, U08, 707, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" canTxPin = bits, U08, 708, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" canRxPin = bits, U08, 709, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;no TS info - skipping unusedMa2 offset 710 + throttlePedalUpPinMode = scalar, U08, 710, "todo", 1, 0, 0, 20, 1 +;no TS info - skipping unusedMa2 offset 711 ;no TS info - skipping idleThreadPeriodMs offset 712 ;no TS info - skipping consoleLoopPeriodMs offset 716 ;no TS info - skipping lcdThreadPeriodMs offset 720 @@ -990,6 +991,7 @@ page = 1 camInputs2 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs3 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs4 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" + throttlePedalUpPin = "Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata" triggerSimulatorFrequency = "See also triggerSimulatorPins\nSee also directSelfStimulation\nrpm X" tachOutputPin = "This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin." useStepperIdle = "This setting should only be used if you have a stepper motor idle valve and a stepper motor driver installed." @@ -2520,11 +2522,12 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = otherSensorInputs, "Other Sensor Inputs" field = "Fuel level", fuelLevelSensor field = "Flex fuel", flexFuelSensor - field = "Clutch down pin", clutchDownPin + field = "Clutch down switch", clutchDownPin field = "Clutch down inverted", clutchDownPinInverted - field = "Clutch up pin", clutchUpPin + field = "Clutch up switch", clutchUpPin field = "Clutch up inverted", clutchUpPinInverted - field = "Brake pedal pin", brakePedalPin + field = "Throttle Up switch", throttlePedalUpPin + field = "Brake pedal switch", brakePedalPin field = "A/C switch", acSwitchAdc dialog = triggerInputs, "Trigger Inputs" diff --git a/firmware/tunerstudio/rusefi_prometheus.ini b/firmware/tunerstudio/rusefi_prometheus.ini index d4870162dd..802270e9cc 100644 --- a/firmware/tunerstudio/rusefi_prometheus.ini +++ b/firmware/tunerstudio/rusefi_prometheus.ini @@ -82,7 +82,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Thu Jul 18 18:26:41 EDT 2019 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 16:54:32 EDT 2019 pageSize = 20000 page = 1 @@ -226,7 +226,7 @@ page = 1 throttlePedalPositionAdcChannel = bits, U08, 580, [0:4] "Analog 3O","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","INVALID","NONE","INVALID","INVALID","INVALID" tle6240_cs = bits, U08, 581, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" tle6240_csPinMode = bits, U08, 582, [0:1], "default", "default inverted", "open collector", "open collector inverted" -;no TS info - skipping unusedt offset 583 + throttlePedalUpPin = bits, U08, 583, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" baroSensor_lowValue = scalar, F32, 584, "kpa", 1, 0, -400, 800, 2 baroSensor_highValue = scalar, F32, 588, "kpa", 1, 0, -400, 800, 2 baroSensor_type = bits, U32, 592, [0:3] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "MPX4100", "Toyota 89420-02010", "MPX4250A", "INVALID" @@ -315,7 +315,8 @@ page = 1 sdCardCsPin = bits, U08, 707, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" canTxPin = bits, U08, 708, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" canRxPin = bits, U08, 709, [0:7], "NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID" -;no TS info - skipping unusedMa2 offset 710 + throttlePedalUpPinMode = scalar, U08, 710, "todo", 1, 0, 0, 20, 1 +;no TS info - skipping unusedMa2 offset 711 ;no TS info - skipping idleThreadPeriodMs offset 712 ;no TS info - skipping consoleLoopPeriodMs offset 716 ;no TS info - skipping lcdThreadPeriodMs offset 720 @@ -990,6 +991,7 @@ page = 1 camInputs2 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs3 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" camInputs4 = "Camshaft input could be used either just for engine phase detection if your trigger shape does not include cam sensor as 'primary' channel, or it could be used for Variable Valve timing on one of the camshafts.\nTODO #660" + throttlePedalUpPin = "Throttle Pedal not pressed switch - used on some older vehicles like early Mazda Miata" triggerSimulatorFrequency = "See also triggerSimulatorPins\nSee also directSelfStimulation\nrpm X" tachOutputPin = "This implementation produces one pulse per engine cycle. See also dizzySparkOutputPin." useStepperIdle = "This setting should only be used if you have a stepper motor idle valve and a stepper motor driver installed." @@ -2523,11 +2525,12 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = otherSensorInputs, "Other Sensor Inputs" field = "Fuel level", fuelLevelSensor field = "Flex fuel", flexFuelSensor - field = "Clutch down pin", clutchDownPin + field = "Clutch down switch", clutchDownPin field = "Clutch down inverted", clutchDownPinInverted - field = "Clutch up pin", clutchUpPin + field = "Clutch up switch", clutchUpPin field = "Clutch up inverted", clutchUpPinInverted - field = "Brake pedal pin", brakePedalPin + field = "Throttle Up switch", throttlePedalUpPin + field = "Brake pedal switch", brakePedalPin field = "A/C switch", acSwitchAdc dialog = triggerInputs, "Trigger Inputs" diff --git a/java_console/models/src/com/rusefi/config/generated/EngineState.java b/java_console/models/src/com/rusefi/config/generated/EngineState.java index 5e599612c2..ececc9f73a 100644 --- a/java_console/models/src/com/rusefi/config/generated/EngineState.java +++ b/java_console/models/src/com/rusefi/config/generated/EngineState.java @@ -1,11 +1,20 @@ package com.rusefi.config.generated; -// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/engine_state.txt Sat Jul 20 12:28:04 EDT 2019 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on integration/engine_state.txt Sun Jul 21 16:50:42 EDT 2019 // by class com.rusefi.output.JavaFieldsConsumer import com.rusefi.config.*; public class EngineState { + public static final Field ITERM = Field.create("ITERM", 0, FieldType.FLOAT); + public static final Field DTERM = Field.create("DTERM", 4, FieldType.FLOAT); + public static final Field TARGET = Field.create("TARGET", 8, FieldType.FLOAT); + public static final Field INPUT = Field.create("INPUT", 12, FieldType.FLOAT); + public static final Field OUTPUT = Field.create("OUTPUT", 16, FieldType.FLOAT); + public static final Field IDLESTATE = Field.create("IDLESTATE", 0, FieldType.INT); + public static final Field CURRENTIDLEPOSITION = Field.create("CURRENTIDLEPOSITION", 4, FieldType.FLOAT); + public static final Field BASEIDLEPOSITION = Field.create("BASEIDLEPOSITION", 8, FieldType.FLOAT); + public static final Field THROTTLEUPSTATE = Field.create("THROTTLEUPSTATE", 12, FieldType.INT); public static final Field ISTCHARGEAIRMODEL = Field.create("ISTCHARGEAIRMODEL", 0, FieldType.BIT, 0); public static final Field AIRMASSINONECYLINDER = Field.create("AIRMASSINONECYLINDER", 4, FieldType.FLOAT); public static final Field TCHARGE = Field.create("TCHARGE", 8, FieldType.FLOAT); @@ -14,14 +23,27 @@ public class EngineState { public static final Field AIRFLOW = Field.create("AIRFLOW", 20, FieldType.FLOAT); public static final Field MANIFOLDAIRPRESSUREACCELERATIONADJUSTMENT = Field.create("MANIFOLDAIRPRESSUREACCELERATIONADJUSTMENT", 24, FieldType.FLOAT); public static final Field ADJUSTEDMANIFOLDAIRPRESSURE = Field.create("ADJUSTEDMANIFOLDAIRPRESSURE", 28, FieldType.FLOAT); - public static final Field TARGETAFR = Field.create("TARGETAFR", 32, FieldType.FLOAT); - public static final Field ENGINECYCLEDURATIONMS = Field.create("ENGINECYCLEDURATIONMS", 36, FieldType.FLOAT); - public static final Field MINRPMKCURRENTTPS = Field.create("MINRPMKCURRENTTPS", 40, FieldType.FLOAT); - public static final Field CURRENTTPSADC = Field.create("CURRENTTPSADC", 44, FieldType.INT); - public static final Field TPSVOLTAGEMCU = Field.create("TPSVOLTAGEMCU", 48, FieldType.FLOAT); - public static final Field TPSVOLTAGEBOARD = Field.create("TPSVOLTAGEBOARD", 52, FieldType.FLOAT); - public static final Field CURRENTBAROCORRECTEDVE = Field.create("CURRENTBAROCORRECTEDVE", 56, FieldType.FLOAT); + public static final Field IDLESTATE = Field.create("IDLESTATE", 32, FieldType.INT); + public static final Field CURRENTIDLEPOSITION = Field.create("CURRENTIDLEPOSITION", 36, FieldType.FLOAT); + public static final Field BASEIDLEPOSITION = Field.create("BASEIDLEPOSITION", 40, FieldType.FLOAT); + public static final Field THROTTLEUPSTATE = Field.create("THROTTLEUPSTATE", 44, FieldType.INT); + public static final Field TARGETAFR = Field.create("TARGETAFR", 48, FieldType.FLOAT); + public static final Field ENGINECYCLEDURATIONMS = Field.create("ENGINECYCLEDURATIONMS", 52, FieldType.FLOAT); + public static final Field MINRPMKCURRENTTPS = Field.create("MINRPMKCURRENTTPS", 56, FieldType.FLOAT); + public static final Field CURRENTTPSADC = Field.create("CURRENTTPSADC", 60, FieldType.INT); + public static final Field TPSVOLTAGEMCU = Field.create("TPSVOLTAGEMCU", 64, FieldType.FLOAT); + public static final Field TPSVOLTAGEBOARD = Field.create("TPSVOLTAGEBOARD", 68, FieldType.FLOAT); + public static final Field CURRENTBAROCORRECTEDVE = Field.create("CURRENTBAROCORRECTEDVE", 72, FieldType.FLOAT); public static final Field[] VALUES = { + ITERM, + DTERM, + TARGET, + INPUT, + OUTPUT, + IDLESTATE, + CURRENTIDLEPOSITION, + BASEIDLEPOSITION, + THROTTLEUPSTATE, ISTCHARGEAIRMODEL, AIRMASSINONECYLINDER, TCHARGE, @@ -30,6 +52,10 @@ public class EngineState { AIRFLOW, MANIFOLDAIRPRESSUREACCELERATIONADJUSTMENT, ADJUSTEDMANIFOLDAIRPRESSURE, + IDLESTATE, + CURRENTIDLEPOSITION, + BASEIDLEPOSITION, + THROTTLEUPSTATE, TARGETAFR, ENGINECYCLEDURATIONMS, MINRPMKCURRENTTPS, diff --git a/java_console/models/src/com/rusefi/config/generated/Fields.java b/java_console/models/src/com/rusefi/config/generated/Fields.java index 8412f061dd..f07d2ccd3d 100644 --- a/java_console/models/src/com/rusefi/config/generated/Fields.java +++ b/java_console/models/src/com/rusefi/config/generated/Fields.java @@ -1,6 +1,6 @@ package com.rusefi.config.generated; -// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 12:15:43 EDT 2019 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Jul 21 16:54:25 EDT 2019 // by class com.rusefi.output.JavaFieldsConsumer import com.rusefi.config.*; @@ -1078,6 +1078,9 @@ public class Fields { public static final int test557pin_offset = 3101; public static final int throttlePedalPositionAdcChannel_offset = 580; public static final int throttlePedalPositionAdcChannel_offset_hex = 244; + public static final int throttlePedalUpPin_offset = 583; + public static final int throttlePedalUpPin_offset_hex = 247; + public static final int throttlePedalUpPinMode_offset = 710; public static final int throttlePedalUpVoltage_offset = 1884; public static final int throttlePedalWOTVoltage_offset = 1888; public static final int throttlePedalWOTVoltage_offset_hex = 760; @@ -1178,7 +1181,7 @@ public class Fields { public static final int unusedAtBoardConfigurationEnd_offset = 980; public static final int unusedFormerWarmupAfrPid_offset = 1756; public static final int unusedh_offset = 1471; - public static final int unusedMa2_offset = 710; + public static final int unusedMa2_offset = 711; public static final int unusedOldWarmupAfr_offset = 744; public static final int unusedSpiPadding2_offset = 804; public static final int unusedSpiPadding2_offset_hex = 324; @@ -1188,8 +1191,6 @@ public class Fields { public static final int unusedSpiPadding6_offset = 4002; public static final int unusedSpiPadding7_offset = 4005; public static final int unusedSpiPadding8_offset = 4009; - public static final int unusedt_offset = 583; - public static final int unusedt_offset_hex = 247; public static final int unuseduartPadding1_offset = 808; public static final int unuseduartPadding1_offset_hex = 328; public static final int unusuedsw_offset = 4020; @@ -1382,7 +1383,8 @@ public class Fields { public static final Field TLE6240_CS = Field.create("TLE6240_CS", 581, FieldType.INT8, brain_pin_e); public static final String[] pin_output_mode_e = {"default", "default inverted", "open collector", "open collector inverted"}; public static final Field TLE6240_CSPINMODE = Field.create("TLE6240_CSPINMODE", 582, FieldType.INT8, pin_output_mode_e); - public static final Field UNUSEDT = Field.create("UNUSEDT", 583, FieldType.INT8); + public static final String[] switch_input_pin_e = {"NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"}; + public static final Field THROTTLEPEDALUPPIN = Field.create("THROTTLEPEDALUPPIN", 583, FieldType.INT8, switch_input_pin_e); public static final Field BAROSENSOR_LOWVALUE = Field.create("BAROSENSOR_LOWVALUE", 584, FieldType.FLOAT); public static final Field BAROSENSOR_HIGHVALUE = Field.create("BAROSENSOR_HIGHVALUE", 588, FieldType.FLOAT); public static final Field BAROSENSOR_TYPE = Field.create("BAROSENSOR_TYPE", 592, FieldType.INT); @@ -1437,7 +1439,6 @@ public class Fields { public static final Field MALFUNCTIONINDICATORPINMODE = Field.create("MALFUNCTIONINDICATORPINMODE", 661, FieldType.INT8, pin_output_mode_e); public static final Field FANPINMODE = Field.create("FANPINMODE", 662, FieldType.INT8, pin_output_mode_e); public static final Field FANPIN = Field.create("FANPIN", 663, FieldType.INT8, output_pin_e); - public static final String[] switch_input_pin_e = {"NONE", "INVALID", "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6","PE7","PE8","PE9","PE10","PE11","PE12","PE13","PE14","PE15", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"}; public static final Field CLUTCHDOWNPIN = Field.create("CLUTCHDOWNPIN", 664, FieldType.INT8, switch_input_pin_e); public static final Field ALTERNATORCONTROLPIN = Field.create("ALTERNATORCONTROLPIN", 665, FieldType.INT8, output_pin_e); public static final Field ALTERNATORCONTROLPINMODE = Field.create("ALTERNATORCONTROLPINMODE", 666, FieldType.INT8, pin_output_mode_e); @@ -1473,6 +1474,8 @@ public class Fields { public static final Field SDCARDCSPIN = Field.create("SDCARDCSPIN", 707, FieldType.INT8, brain_pin_e); public static final Field CANTXPIN = Field.create("CANTXPIN", 708, FieldType.INT8, brain_pin_e); public static final Field CANRXPIN = Field.create("CANRXPIN", 709, FieldType.INT8, brain_pin_e); + public static final Field THROTTLEPEDALUPPINMODE = Field.create("THROTTLEPEDALUPPINMODE", 710, FieldType.INT8); + public static final Field UNUSEDMA2 = Field.create("UNUSEDMA2", 711, FieldType.INT8); public static final Field IDLETHREADPERIODMS = Field.create("IDLETHREADPERIODMS", 712, FieldType.INT); public static final Field CONSOLELOOPPERIODMS = Field.create("CONSOLELOOPPERIODMS", 716, FieldType.INT); public static final Field LCDTHREADPERIODMS = Field.create("LCDTHREADPERIODMS", 720, FieldType.INT); @@ -2155,7 +2158,7 @@ public class Fields { THROTTLEPEDALPOSITIONADCCHANNEL, TLE6240_CS, TLE6240_CSPINMODE, - UNUSEDT, + THROTTLEPEDALUPPIN, BAROSENSOR_LOWVALUE, BAROSENSOR_HIGHVALUE, BAROSENSOR_TYPE, @@ -2243,6 +2246,8 @@ public class Fields { SDCARDCSPIN, CANTXPIN, CANRXPIN, + THROTTLEPEDALUPPINMODE, + UNUSEDMA2, IDLETHREADPERIODMS, CONSOLELOOPPERIODMS, LCDTHREADPERIODMS, diff --git a/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java b/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java index 3fca979637..8fa5d238b5 100644 --- a/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java +++ b/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java @@ -48,7 +48,10 @@ public class TypesHelper { } private static boolean isPrimitive4byte(String type) { - return type.equals(INT_32_T) || type.equals(UINT_32_T) || isFloat(type); + return type.equals(INT_32_T) || type.equals(UINT_32_T) + // todo: something smarter with dynamic type definition? + || type.equals("idle_state_e") + || isFloat(type); } public static String convertToTs(String type) { @@ -72,7 +75,9 @@ public class TypesHelper { public static boolean isFloat(String type) { return FLOAT_T.equals(type) || + // todo: something smarter with dynamic type definition? type.equalsIgnoreCase("floatms_t") || + type.equalsIgnoreCase("percent_t") || type.equalsIgnoreCase("angle_t"); } } diff --git a/java_tools/configuration_definition/src/com/rusefi/output/CHeaderConsumer.java b/java_tools/configuration_definition/src/com/rusefi/output/CHeaderConsumer.java index a444e8c46d..9c65de0679 100644 --- a/java_tools/configuration_definition/src/com/rusefi/output/CHeaderConsumer.java +++ b/java_tools/configuration_definition/src/com/rusefi/output/CHeaderConsumer.java @@ -41,7 +41,8 @@ public class CHeaderConsumer implements ConfigurationConsumer { // not an array cEntry += "\t" + configField.getType() + " " + configField.getName(); if (ConfigDefinition.needZeroInit && TypesHelper.isPrimitive(configField.getType())) { - cEntry += " = 0"; + // we need this cast in case of enums + cEntry += " = (" + configField.getType() + ")0"; } cEntry += ";" + EOL; } else {