Support disabling most/all features (#1162)

* this flag did nothing

* guard features properly
This commit is contained in:
Matthew Kennedy 2020-02-26 15:16:35 -08:00 committed by GitHub
parent 6c747ebbbe
commit 397907a06f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 67 additions and 32 deletions

View File

@ -801,8 +801,8 @@ int tunerStudioHandleCrcCommand(ts_channel_s *tsChannel, char *data, int incomin
tsOutputChannels.debugIntField3 = index; tsOutputChannels.debugIntField3 = index;
} }
#if EFI_PROD_CODE #if EFI_PROD_CODE && EFI_ENGINE_CONTROL
executeTSCommand(subsystem, index); executeTSCommand(subsystem, index);
#endif /* EFI_PROD_CODE */ #endif /* EFI_PROD_CODE */
sendOkResponse(tsChannel, TS_CRC); sendOkResponse(tsChannel, TS_CRC);
} }

View File

@ -310,7 +310,10 @@ static void printSensors(Logging *log) {
if (hasMapSensor(PASS_ENGINE_PARAMETER_SIGNATURE)) { if (hasMapSensor(PASS_ENGINE_PARAMETER_SIGNATURE)) {
reportSensorF(log, GAUGE_NAME_FUEL_VE, "%", engine->engineState.currentBaroCorrectedVE * PERCENT_MULT, 2); reportSensorF(log, GAUGE_NAME_FUEL_VE, "%", engine->engineState.currentBaroCorrectedVE * PERCENT_MULT, 2);
} }
#if EFI_SHAFT_POSITION_INPUT
reportSensorF(log, GAUGE_NAME_VVT, "deg", engine->triggerCentral.getVVTPosition(), 1); reportSensorF(log, GAUGE_NAME_VVT, "deg", engine->triggerCentral.getVVTPosition(), 1);
#endif
float engineLoad = getEngineLoadT(PASS_ENGINE_PARAMETER_SIGNATURE); float engineLoad = getEngineLoadT(PASS_ENGINE_PARAMETER_SIGNATURE);
reportSensorF(log, GAUGE_NAME_ENGINE_LOAD, "x", engineLoad, 2); reportSensorF(log, GAUGE_NAME_ENGINE_LOAD, "x", engineLoad, 2);
@ -767,7 +770,9 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_
// 136 // 136
tsOutputChannels->pedalPosition = hasPedalPositionSensor(PASS_ENGINE_PARAMETER_SIGNATURE) ? getPedalPosition(PASS_ENGINE_PARAMETER_SIGNATURE) : 0; tsOutputChannels->pedalPosition = hasPedalPositionSensor(PASS_ENGINE_PARAMETER_SIGNATURE) ? getPedalPosition(PASS_ENGINE_PARAMETER_SIGNATURE) : 0;
// 140 // 140
#if EFI_ENGINE_CONTROL
tsOutputChannels->injectorDutyCycle = getInjectorDutyCycle(rpm PASS_ENGINE_PARAMETER_SUFFIX); tsOutputChannels->injectorDutyCycle = getInjectorDutyCycle(rpm PASS_ENGINE_PARAMETER_SUFFIX);
#endif
// 148 // 148
tsOutputChannels->fuelTankLevel = engine->sensors.fuelTankLevel; tsOutputChannels->fuelTankLevel = engine->sensors.fuelTankLevel;
// 160 // 160
@ -785,8 +790,12 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_
// 224 // 224
efitimesec_t timeSeconds = getTimeNowSeconds(); efitimesec_t timeSeconds = getTimeNowSeconds();
tsOutputChannels->timeSeconds = timeSeconds; tsOutputChannels->timeSeconds = timeSeconds;
#if EFI_SHAFT_POSITION_INPUT
// 248 // 248
tsOutputChannels->vvtPosition = engine->triggerCentral.getVVTPosition(); tsOutputChannels->vvtPosition = engine->triggerCentral.getVVTPosition();
#endif
// 252 // 252
tsOutputChannels->engineMode = packEngineMode(PASS_ENGINE_PARAMETER_SIGNATURE); tsOutputChannels->engineMode = packEngineMode(PASS_ENGINE_PARAMETER_SIGNATURE);
// 120 // 120
@ -817,9 +826,6 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_
tsOutputChannels->hasFatalError = hasFirmwareError(); tsOutputChannels->hasFatalError = hasFirmwareError();
tsOutputChannels->coilDutyCycle = getCoilDutyCycle(rpm PASS_ENGINE_PARAMETER_SUFFIX);
tsOutputChannels->isWarnNow = engine->engineState.warnings.isWarningNow(timeSeconds, true); tsOutputChannels->isWarnNow = engine->engineState.warnings.isWarningNow(timeSeconds, true);
#if EFI_HIP_9011 #if EFI_HIP_9011
tsOutputChannels->isKnockChipOk = (instance.invalidHip9011ResponsesCount == 0); tsOutputChannels->isKnockChipOk = (instance.invalidHip9011ResponsesCount == 0);
@ -894,6 +900,7 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_
tsOutputChannels->brakePedalState = engine->brakePedalState; tsOutputChannels->brakePedalState = engine->brakePedalState;
tsOutputChannels->acSwitchState = engine->acSwitchState; tsOutputChannels->acSwitchState = engine->acSwitchState;
#if EFI_ENGINE_CONTROL
// tCharge depends on the previous state, so we should use the stored value. // tCharge depends on the previous state, so we should use the stored value.
tsOutputChannels->tCharge = ENGINE(engineState.sd.tCharge); tsOutputChannels->tCharge = ENGINE(engineState.sd.tCharge);
float timing = engine->engineState.timingAdvance; float timing = engine->engineState.timingAdvance;
@ -903,6 +910,8 @@ void updateTunerStudioState(TunerStudioOutputChannels *tsOutputChannels DECLARE_
tsOutputChannels->crankingFuelMs = engine->isCylinderCleanupMode ? 0 : getCrankingFuel(PASS_ENGINE_PARAMETER_SIGNATURE); tsOutputChannels->crankingFuelMs = engine->isCylinderCleanupMode ? 0 : getCrankingFuel(PASS_ENGINE_PARAMETER_SIGNATURE);
tsOutputChannels->chargeAirMass = engine->engineState.sd.airMassInOneCylinder; tsOutputChannels->chargeAirMass = engine->engineState.sd.airMassInOneCylinder;
tsOutputChannels->coilDutyCycle = getCoilDutyCycle(rpm PASS_ENGINE_PARAMETER_SUFFIX);
#endif // EFI_ENGINE_CONTROL
switch (engineConfiguration->debugMode) { switch (engineConfiguration->debugMode) {
case DBG_AUX_TEMPERATURE: case DBG_AUX_TEMPERATURE:

View File

@ -28,6 +28,8 @@
#include "idle_thread.h" #include "idle_thread.h"
#include "allsensors.h" #include "allsensors.h"
#if EFI_ENGINE_CONTROL
EXTERN_ENGINE EXTERN_ENGINE
; ;
@ -328,3 +330,4 @@ void buildTimingMap(float advanceMax DECLARE_CONFIG_PARAMETER_SUFFIX) {
} }
} }
#endif // EFI_ENGINE_CONTROL

View File

@ -243,6 +243,7 @@ void Engine::preCalculate(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
#endif #endif
} }
#if EFI_SHAFT_POSITION_INPUT
void Engine::OnTriggerStateDecodingError() { void Engine::OnTriggerStateDecodingError() {
Engine *engine = this; Engine *engine = this;
EXPAND_Engine; EXPAND_Engine;
@ -340,7 +341,7 @@ void Engine::OnTriggerSyncronization(bool wasSynchronized) {
} }
} }
#endif
void Engine::setConfig(persistent_config_s *config) { void Engine::setConfig(persistent_config_s *config) {
this->config = config; this->config = config;
@ -487,11 +488,13 @@ void Engine::periodicFastCallback(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
engineState.periodicFastCallback(PASS_ENGINE_PARAMETER_SIGNATURE); engineState.periodicFastCallback(PASS_ENGINE_PARAMETER_SIGNATURE);
#if EFI_ENGINE_CONTROL
engine->m.beforeFuelCalc = getTimeNowLowerNt(); engine->m.beforeFuelCalc = getTimeNowLowerNt();
int rpm = GET_RPM(); int rpm = GET_RPM();
ENGINE(injectionDuration) = getInjectionDuration(rpm PASS_ENGINE_PARAMETER_SUFFIX); ENGINE(injectionDuration) = getInjectionDuration(rpm PASS_ENGINE_PARAMETER_SUFFIX);
engine->m.fuelCalcTime = getTimeNowLowerNt() - engine->m.beforeFuelCalc; engine->m.fuelCalcTime = getTimeNowLowerNt() - engine->m.beforeFuelCalc;
#endif
} }
void doScheduleStopEngine(DECLARE_ENGINE_PARAMETER_SIGNATURE) { void doScheduleStopEngine(DECLARE_ENGINE_PARAMETER_SIGNATURE) {

View File

@ -58,11 +58,13 @@ public:
cyclic_buffer<int> triggerErrorDetection; cyclic_buffer<int> triggerErrorDetection;
#if EFI_SHAFT_POSITION_INPUT
void OnTriggerStateDecodingError(); void OnTriggerStateDecodingError();
void OnTriggerStateProperState(efitick_t nowNt) override; void OnTriggerStateProperState(efitick_t nowNt) override;
void OnTriggerSyncronization(bool wasSynchronized) override; void OnTriggerSyncronization(bool wasSynchronized) override;
void OnTriggerInvalidIndex(int currentIndex) override; void OnTriggerInvalidIndex(int currentIndex) override;
void OnTriggerSynchronizationLost() override; void OnTriggerSynchronizationLost() override;
#endif
void setConfig(persistent_config_s *config); void setConfig(persistent_config_s *config);
injection_mode_e getCurrentInjectionMode(DECLARE_ENGINE_PARAMETER_SIGNATURE); injection_mode_e getCurrentInjectionMode(DECLARE_ENGINE_PARAMETER_SIGNATURE);

View File

@ -247,7 +247,7 @@ percent_t getInjectorDutyCycle(int rpm DECLARE_ENGINE_PARAMETER_SUFFIX) {
floatms_t getInjectionDuration(int rpm DECLARE_ENGINE_PARAMETER_SUFFIX) { floatms_t getInjectionDuration(int rpm DECLARE_ENGINE_PARAMETER_SUFFIX) {
ScopePerf perf(PE::GetInjectionDuration); ScopePerf perf(PE::GetInjectionDuration);
#if EFI_ENGINE_CONTROL && EFI_SHAFT_POSITION_INPUT #if EFI_SHAFT_POSITION_INPUT
bool isCranking = ENGINE(rpmCalculator).isCranking(PASS_ENGINE_PARAMETER_SIGNATURE); bool isCranking = ENGINE(rpmCalculator).isCranking(PASS_ENGINE_PARAMETER_SIGNATURE);
injection_mode_e mode = isCranking ? injection_mode_e mode = isCranking ?
engineConfiguration->crankingInjectionMode : engineConfiguration->crankingInjectionMode :

View File

@ -135,9 +135,11 @@ float getEngineValue(le_action_e action DECLARE_ENGINE_PARAMETER_SUFFIX) {
return getRealMaf(PASS_ENGINE_PARAMETER_SIGNATURE); return getRealMaf(PASS_ENGINE_PARAMETER_SIGNATURE);
case LE_METHOD_MAP: case LE_METHOD_MAP:
return getMap(PASS_ENGINE_PARAMETER_SIGNATURE); return getMap(PASS_ENGINE_PARAMETER_SIGNATURE);
#if EFI_SHAFT_POSITION_INPUT
case LE_METHOD_INTAKE_VVT: case LE_METHOD_INTAKE_VVT:
case LE_METHOD_EXHAUST_VVT: case LE_METHOD_EXHAUST_VVT:
return engine->triggerCentral.getVVTPosition(); return engine->triggerCentral.getVVTPosition();
#endif
case LE_METHOD_TIME_SINCE_BOOT: case LE_METHOD_TIME_SINCE_BOOT:
return getTimeNowSeconds(); return getTimeNowSeconds();

View File

@ -101,9 +101,11 @@
EXTERN_ENGINE; EXTERN_ENGINE;
void initDataStructures(DECLARE_ENGINE_PARAMETER_SIGNATURE) { void initDataStructures(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
#if EFI_ENGINE_CONTROL
initFuelMap(PASS_ENGINE_PARAMETER_SIGNATURE); initFuelMap(PASS_ENGINE_PARAMETER_SIGNATURE);
initTimingMap(PASS_ENGINE_PARAMETER_SIGNATURE); initTimingMap(PASS_ENGINE_PARAMETER_SIGNATURE);
initSpeedDensity(PASS_ENGINE_PARAMETER_SIGNATURE); initSpeedDensity(PASS_ENGINE_PARAMETER_SIGNATURE);
#endif // EFI_ENGINE_CONTROL
} }
static void mostCommonInitEngineController(Logging *sharedLogger DECLARE_ENGINE_PARAMETER_SUFFIX) { static void mostCommonInitEngineController(Logging *sharedLogger DECLARE_ENGINE_PARAMETER_SUFFIX) {
@ -194,7 +196,11 @@ class EngineStateBlinkingTask : public PeriodicTimerController {
void PeriodicTask() override { void PeriodicTask() override {
counter++; counter++;
#if EFI_SHAFT_POSITION_INPUT
bool is_running = ENGINE(rpmCalculator).isRunning(PASS_ENGINE_PARAMETER_SIGNATURE); bool is_running = ENGINE(rpmCalculator).isRunning(PASS_ENGINE_PARAMETER_SIGNATURE);
#else
bool is_running = false;
#endif
if (is_running) { if (is_running) {
// blink in running mode // blink in running mode

View File

@ -13,6 +13,8 @@
#include "event_queue.h" #include "event_queue.h"
#include "perf_trace.h" #include "perf_trace.h"
#if EFI_ENGINE_CONTROL
#if EFI_TUNER_STUDIO #if EFI_TUNER_STUDIO
#include "tunerstudio_configuration.h" #include "tunerstudio_configuration.h"
#endif /* EFI_TUNER_STUDIO */ #endif /* EFI_TUNER_STUDIO */
@ -495,3 +497,5 @@ percent_t getCoilDutyCycle(int rpm DECLARE_ENGINE_PARAMETER_SUFFIX) {
floatms_t engineCycleDuration = getCrankshaftRevolutionTimeMs(rpm) * (engine->getOperationMode(PASS_ENGINE_PARAMETER_SIGNATURE) == TWO_STROKE ? 1 : 2); floatms_t engineCycleDuration = getCrankshaftRevolutionTimeMs(rpm) * (engine->getOperationMode(PASS_ENGINE_PARAMETER_SIGNATURE) == TWO_STROKE ? 1 : 2);
return 100 * totalPerCycle / engineCycleDuration; return 100 * totalPerCycle / engineCycleDuration;
} }
#endif // EFI_ENGINE_CONTROL

View File

@ -94,7 +94,10 @@ void writeToFlashNow(void) {
scheduleMsg(logger, "Flashing failed"); scheduleMsg(logger, "Flashing failed");
} }
assertEngineReference(); assertEngineReference();
#if EFI_SHAFT_POSITION_INPUT
resetMaxValues(); resetMaxValues();
#endif
} }
static bool isValidCrc(persistent_config_container_s *state) { static bool isValidCrc(persistent_config_container_s *state) {

View File

@ -520,8 +520,6 @@ void prepareOutputSignals(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
TRIGGER_WAVEFORM(prepareShape()); TRIGGER_WAVEFORM(prepareShape());
} }
#endif /* EFI_ENGINE_CONTROL */
void setFuelRpmBin(float from, float to DECLARE_CONFIG_PARAMETER_SUFFIX) { void setFuelRpmBin(float from, float to DECLARE_CONFIG_PARAMETER_SUFFIX) {
setLinearCurve(config->fuelRpmBins, from, to); setLinearCurve(config->fuelRpmBins, from, to);
} }
@ -554,3 +552,5 @@ void setAlgorithm(engine_load_mode_e algo DECLARE_CONFIG_PARAMETER_SUFFIX) {
void setFlatInjectorLag(float value DECLARE_CONFIG_PARAMETER_SUFFIX) { void setFlatInjectorLag(float value DECLARE_CONFIG_PARAMETER_SUFFIX) {
setArrayValues(engineConfiguration->injector.battLagCorr, value); setArrayValues(engineConfiguration->injector.battLagCorr, value);
} }
#endif /* EFI_ENGINE_CONTROL */

View File

@ -227,10 +227,12 @@ static void printMAPInfo(void) {
if (engineConfiguration->hasFrequencyReportingMapSensor) { if (engineConfiguration->hasFrequencyReportingMapSensor) {
scheduleMsg(logger, "instant value=%.2fHz @ %s", mapFreq, hwPortname(CONFIG(frequencyReportingMapInputPin))); scheduleMsg(logger, "instant value=%.2fHz @ %s", mapFreq, hwPortname(CONFIG(frequencyReportingMapInputPin)));
} else { } else {
#if EFI_MAP_AVERAGING
scheduleMsg(logger, "map type=%d/%s MAP=%.2fkPa mapMinBufferLength=%d", engineConfiguration->map.sensor.type, scheduleMsg(logger, "map type=%d/%s MAP=%.2fkPa mapMinBufferLength=%d", engineConfiguration->map.sensor.type,
getAir_pressure_sensor_type_e(engineConfiguration->map.sensor.type), getAir_pressure_sensor_type_e(engineConfiguration->map.sensor.type),
getMap(), getMap(),
mapMinBufferLength); mapMinBufferLength);
#endif // EFI_MAP_AVERAGING
adc_channel_e mapAdc = engineConfiguration->map.sensor.hwChannel; adc_channel_e mapAdc = engineConfiguration->map.sensor.hwChannel;
static char pinNameBuffer[16]; static char pinNameBuffer[16];

View File

@ -134,22 +134,14 @@ const char* getConfigurationName(engine_type_e engineType) {
switch (engineType) { switch (engineType) {
case DEFAULT_FRANKENSO: case DEFAULT_FRANKENSO:
return "DEFAULT_FRANKENSO"; return "DEFAULT_FRANKENSO";
#if EFI_SUPPORT_DODGE_NEON
case DODGE_NEON_1995: case DODGE_NEON_1995:
return "Neon95"; return "Neon95";
#endif /* EFI_SUPPORT_DODGE_NEON */
#if EFI_SUPPORT_FORD_ASPIRE
case FORD_ASPIRE_1996: case FORD_ASPIRE_1996:
return "Aspire"; return "Aspire";
#endif /* EFI_SUPPORT_FORD_ASPIRE */
#if EFI_SUPPORT_FORD_FIESTA
case FORD_FIESTA: case FORD_FIESTA:
return "Fiesta"; return "Fiesta";
#endif /* EFI_SUPPORT_FORD_FIESTA */
#if EFI_SUPPORT_NISSAN_PRIMERA
case NISSAN_PRIMERA: case NISSAN_PRIMERA:
return "Primera"; return "Primera";
#endif /* EFI_SUPPORT_NISSAN_PRIMERA */
case HONDA_ACCORD_CD: case HONDA_ACCORD_CD:
return "Accord3"; return "Accord3";
case HONDA_ACCORD_CD_TWO_WIRES: case HONDA_ACCORD_CD_TWO_WIRES:
@ -1051,7 +1043,6 @@ const plain_get_integer_s getI_plain[] = {
{"warning_period", (int*)&engineConfiguration->warningPeriod}, {"warning_period", (int*)&engineConfiguration->warningPeriod},
{"hard_limit", &engineConfiguration->rpmHardLimit}, {"hard_limit", &engineConfiguration->rpmHardLimit},
// {"firing_order", setFiringOrder}, // {"firing_order", setFiringOrder},
// {"algorithm", setAlgorithmInt},
// {"injection_pin_mode", setInjectionPinMode}, // {"injection_pin_mode", setInjectionPinMode},
// {"ignition_pin_mode", setIgnitionPinMode}, // {"ignition_pin_mode", setIgnitionPinMode},
// {"idle_pin_mode", setIdlePinMode}, // {"idle_pin_mode", setIdlePinMode},
@ -1169,7 +1160,8 @@ typedef struct {
} command_f_s; } command_f_s;
const command_f_s commandsF[] = { const command_f_s commandsF[] = {
#if EFI_ENGINE_CONTROL && EFI_ENABLE_MOCK_ADC #if EFI_ENGINE_CONTROL
#if EFI_ENABLE_MOCK_ADC
{MOCK_IAT_COMMAND, setMockIatVoltage}, {MOCK_IAT_COMMAND, setMockIatVoltage},
{MOCK_PPS_POSITION_COMMAND, setMockThrottlePedalPosition}, {MOCK_PPS_POSITION_COMMAND, setMockThrottlePedalPosition},
{MOCK_PPS_VOLTAGE_COMMAND, setMockThrottlePedalSensorVoltage}, {MOCK_PPS_VOLTAGE_COMMAND, setMockThrottlePedalSensorVoltage},
@ -1179,9 +1171,7 @@ const command_f_s commandsF[] = {
{MOCK_MAP_COMMAND, setMockMapVoltage}, {MOCK_MAP_COMMAND, setMockMapVoltage},
{"mock_vbatt_voltage", setMockVBattVoltage}, {"mock_vbatt_voltage", setMockVBattVoltage},
{MOCK_CLT_COMMAND, setMockCltVoltage}, {MOCK_CLT_COMMAND, setMockCltVoltage},
#endif /* EFI_ENGINE_CONTROL && EFI_ENABLE_MOCK_ADC */ #endif // EFI_ENABLE_MOCK_ADC
{"fsio_curve_1_value", setFsioCurve1Value},
{"fsio_curve_2_value", setFsioCurve2Value},
{"ignition_offset", setIgnitionOffset}, {"ignition_offset", setIgnitionOffset},
{"injection_offset", setInjectionOffset}, {"injection_offset", setInjectionOffset},
{"global_trigger_offset_angle", setGlobalTriggerAngleOffset}, {"global_trigger_offset_angle", setGlobalTriggerAngleOffset},
@ -1199,6 +1189,9 @@ const command_f_s commandsF[] = {
{"engine_decel_threshold", setDecelThr}, {"engine_decel_threshold", setDecelThr},
{"engine_decel_multiplier", setDecelMult}, {"engine_decel_multiplier", setDecelMult},
{"flat_injector_lag", setFlatInjectorLag}, {"flat_injector_lag", setFlatInjectorLag},
#endif // EFI_ENGINE_CONTROL
{"fsio_curve_1_value", setFsioCurve1Value},
{"fsio_curve_2_value", setFsioCurve2Value},
#if EFI_PROD_CODE #if EFI_PROD_CODE
#if EFI_VEHICLE_SPEED #if EFI_VEHICLE_SPEED
{"mock_vehicle_speed", setMockVehicleSpeed}, {"mock_vehicle_speed", setMockVehicleSpeed},
@ -1236,6 +1229,7 @@ static void setTpsErrorDetectionTooHigh(int v) {
const command_i_s commandsI[] = {{"ignition_mode", setIgnitionMode}, const command_i_s commandsI[] = {{"ignition_mode", setIgnitionMode},
{"call_from_pitstop", setCallFromPitStop}, {"call_from_pitstop", setCallFromPitStop},
#if EFI_ENGINE_CONTROL
{"cranking_rpm", setCrankingRpm}, {"cranking_rpm", setCrankingRpm},
{"cranking_injection_mode", setCrankingInjectionMode}, {"cranking_injection_mode", setCrankingInjectionMode},
{"injection_mode", setInjectionMode}, {"injection_mode", setInjectionMode},
@ -1259,6 +1253,7 @@ const command_i_s commandsI[] = {{"ignition_mode", setIgnitionMode},
{"idle_solenoid_freq", setIdleSolenoidFrequency}, {"idle_solenoid_freq", setIdleSolenoidFrequency},
{"tps_accel_len", setTpsAccelLen}, {"tps_accel_len", setTpsAccelLen},
{"engine_load_accel_len", setEngineLoadAccelLen}, {"engine_load_accel_len", setEngineLoadAccelLen},
#endif // EFI_ENGINE_CONTROL
#if EFI_PROD_CODE #if EFI_PROD_CODE
{"bor", setBor}, {"bor", setBor},
#if EFI_CAN_SUPPORT #if EFI_CAN_SUPPORT
@ -1408,10 +1403,6 @@ void initSettings(void) {
addConsoleActionII("set_toothed_wheel", setToothedWheel); addConsoleActionII("set_toothed_wheel", setToothedWheel);
// flat curve - constant injector lag regardless of voltage
addConsoleActionF("set_flat_injector_lag", setFlatInjectorLag);
addConsoleActionFF("set_injector_lag", setInjectorLag); addConsoleActionFF("set_injector_lag", setInjectorLag);
addConsoleActionFF("set_fan", setFanSetting); addConsoleActionFF("set_fan", setFanSetting);

View File

@ -14,12 +14,13 @@
class TriggerState; class TriggerState;
class TriggerStateListener { struct TriggerStateListener {
public: #if EFI_SHAFT_POSITION_INPUT
virtual void OnTriggerStateProperState(efitick_t nowNt) = 0; virtual void OnTriggerStateProperState(efitick_t nowNt) = 0;
virtual void OnTriggerSyncronization(bool wasSynchronized) = 0; virtual void OnTriggerSyncronization(bool wasSynchronized) = 0;
virtual void OnTriggerInvalidIndex(int currentIndex) = 0; virtual void OnTriggerInvalidIndex(int currentIndex) = 0;
virtual void OnTriggerSynchronizationLost() = 0; virtual void OnTriggerSynchronizationLost() = 0;
#endif
}; };
typedef void (*TriggerStateCallback)(TriggerState *); typedef void (*TriggerStateCallback)(TriggerState *);

View File

@ -79,7 +79,11 @@ void WaveReader::onFallEvent() {
efitick_t width = nowUs - widthEventTimeUs; efitick_t width = nowUs - widthEventTimeUs;
last_wave_high_widthUs = width; last_wave_high_widthUs = width;
#if EFI_SHAFT_POSITION_INPUT
int revolutionCounter = getRevolutionCounter(); int revolutionCounter = getRevolutionCounter();
#else
int revolutionCounter = 0;
#endif
totalOnTimeAccumulatorUs += width; totalOnTimeAccumulatorUs += width;
if (currentRevolutionCounter != revolutionCounter) { if (currentRevolutionCounter != revolutionCounter) {
@ -227,7 +231,9 @@ void initWaveAnalyzer(Logging *sharedLogger) {
initWave(PROTOCOL_WA_CHANNEL_3, 2); initWave(PROTOCOL_WA_CHANNEL_3, 2);
initWave(PROTOCOL_WA_CHANNEL_4, 3); initWave(PROTOCOL_WA_CHANNEL_4, 3);
#if EFI_SHAFT_POSITION_INPUT
addTriggerEventListener(waTriggerEventListener, "wave analyzer", engine); addTriggerEventListener(waTriggerEventListener, "wave analyzer", engine);
#endif
addConsoleAction("waveinfo", showWaveInfo); addConsoleAction("waveinfo", showWaveInfo);

View File

@ -182,8 +182,11 @@ void initPinRepository(void) {
initialized = true; initialized = true;
addConsoleAction(CMD_PINS, reportPins); addConsoleAction(CMD_PINS, reportPins);
#if (BOARD_TLE8888_COUNT > 0)
addConsoleAction("tle8888", tle8888_dump_regs); addConsoleAction("tle8888", tle8888_dump_regs);
addConsoleAction("tle8888init", requestTLE8888initialization); addConsoleAction("tle8888init", requestTLE8888initialization);
#endif
} }
bool brain_pin_is_onchip(brain_pin_e brainPin) bool brain_pin_is_onchip(brain_pin_e brainPin)