Flex fuel problem #5702

This commit is contained in:
rusefillc 2023-11-09 11:58:27 -05:00
parent da4012dc19
commit ae87300450
3 changed files with 15 additions and 11 deletions

View File

@ -26,7 +26,7 @@ void initFluidPressure();
void initThermistors();
void initCanSensors();
void initLambda();
void initFlexSensor();
void initFlexSensor(bool isFirstTime);
void initFuelLevel();
void initBaro();
void initAuxSensors();

View File

@ -60,7 +60,7 @@ static void flexExtiCallback(void*, efitick_t nowNt) {
// https://rusefi.com/forum/viewtopic.php?p=37452#p37452
void initFlexSensor() {
void initFlexSensor(bool isFirstTime) {
flexPin = engineConfiguration->flexSensorPin;
if (!isBrainPinValid(flexPin)) {
return;
@ -75,13 +75,15 @@ void initFlexSensor() {
PAL_EVENT_MODE_BOTH_EDGES,
flexExtiCallback, nullptr);
addConsoleAction("flexinfo", []() {
efiPrintf("flex counter %d", flexCallbackCounter);
efiPrintf("lowFlexCallbackCounter counter %d", lowFlexCallbackCounter);
efiPrintf("flex freq %f", frequency);
efiPrintf("pulseWidthUs %f", pulseWidthUs);
efiPrintf("latestCallbackTime %d", latestCallbackTime);
});
if (isFirstTime) {
addConsoleAction("flexinfo", []() {
efiPrintf("flex counter %d", flexCallbackCounter);
efiPrintf("lowFlexCallbackCounter counter %d", lowFlexCallbackCounter);
efiPrintf("flex freq %f", frequency);
efiPrintf("pulseWidthUs %f", pulseWidthUs);
efiPrintf("latestCallbackTime %d", latestCallbackTime);
});
}
#endif // EFI_PROD_CODE

View File

@ -67,6 +67,8 @@ static void deInitAuxDigital() {
}
}
// one-time start-up
// see also 'reconfigureSensors'
void initNewSensors() {
#if EFI_PROD_CODE && EFI_CAN_SUPPORT
initCanSensors();
@ -78,7 +80,7 @@ void initNewSensors() {
initFluidPressure();
initThermistors();
initLambda();
initFlexSensor();
initFlexSensor(true);
initBaro();
initAuxSensors();
initVehicleSpeedSensor();
@ -134,7 +136,7 @@ void reconfigureSensors() {
initFluidPressure();
initVbatt();
initThermistors();
initFlexSensor();
initFlexSensor(false);
initVehicleSpeedSensor();
initTurbochargerSpeedSensor();
initInputShaftSpeedSensor();