remove mapAveragingSchedulingAtIndex

This commit is contained in:
Matthew Kennedy 2024-08-20 15:49:23 -04:00 committed by rusefillc
parent 328f5d04a6
commit a3a60fcbc4
6 changed files with 10 additions and 8 deletions

View File

@ -28,6 +28,9 @@ Release template (copy/paste this for new release):
## Unreleased ## Unreleased
### Fixed
- Removed questionable MAP sampling trigger index option
## August 2024 "Day 898" ## August 2024 "Day 898"
### Added ### Added

View File

@ -458,7 +458,7 @@ void proteusBoardTest() {
static void setBasicNotECUmode() { static void setBasicNotECUmode() {
engineConfiguration->trigger.type = trigger_type_e::TT_HALF_MOON; engineConfiguration->trigger.type = trigger_type_e::TT_HALF_MOON;
engineConfiguration->mapAveragingSchedulingAtIndex = 999; // this should disable map averaging right? // todo: shall we disable map averaging?
engineConfiguration->wwaeTau = 0.0; engineConfiguration->wwaeTau = 0.0;
engineConfiguration->wwaeBeta = 0.0; engineConfiguration->wwaeBeta = 0.0;

View File

@ -49,7 +49,7 @@ public:
float auxValveEnd = 0; float auxValveEnd = 0;
/** /**
* MAP averaging angle start, in relation to 'mapAveragingSchedulingAtIndex' trigger index index * MAP averaging angle start, in relation to '0' trigger index index
*/ */
angle_t mapAveragingStart[MAX_CYLINDER_COUNT]; angle_t mapAveragingStart[MAX_CYLINDER_COUNT];
angle_t mapAveragingDuration = 0; angle_t mapAveragingDuration = 0;

View File

@ -191,7 +191,7 @@ void refreshMapAveragingPreCalc() {
angle_t start = interpolate2d(rpm, c->samplingAngleBins, c->samplingAngle); angle_t start = interpolate2d(rpm, c->samplingAngleBins, c->samplingAngle);
efiAssertVoid(ObdCode::CUSTOM_ERR_MAP_START_ASSERT, !std::isnan(start), "start"); efiAssertVoid(ObdCode::CUSTOM_ERR_MAP_START_ASSERT, !std::isnan(start), "start");
angle_t offsetAngle = engine->triggerCentral.triggerFormDetails.eventAngles[engineConfiguration->mapAveragingSchedulingAtIndex]; angle_t offsetAngle = engine->triggerCentral.triggerFormDetails.eventAngles[0];
efiAssertVoid(ObdCode::CUSTOM_ERR_MAP_AVG_OFFSET, !std::isnan(offsetAngle), "offsetAngle"); efiAssertVoid(ObdCode::CUSTOM_ERR_MAP_AVG_OFFSET, !std::isnan(offsetAngle), "offsetAngle");
for (size_t i = 0; i < engineConfiguration->cylindersCount; i++) { for (size_t i = 0; i < engineConfiguration->cylindersCount; i++) {
@ -221,9 +221,10 @@ void refreshMapAveragingPreCalc() {
void mapAveragingTriggerCallback( void mapAveragingTriggerCallback(
uint32_t index, efitick_t edgeTimestamp) { uint32_t index, efitick_t edgeTimestamp) {
#if EFI_ENGINE_CONTROL && EFI_PROD_CODE #if EFI_ENGINE_CONTROL && EFI_PROD_CODE
// this callback is invoked on interrupt thread // update only once per engine cycle
if (index != (uint32_t)engineConfiguration->mapAveragingSchedulingAtIndex) if (index != 0) {
return; return;
}
int rpm = Sensor::getOrZero(SensorType::Rpm); int rpm = Sensor::getOrZero(SensorType::Rpm);
if (!isValidRpm(rpm)) { if (!isValidRpm(rpm)) {

View File

@ -1138,8 +1138,7 @@ float idleStepperReactionTime;;"ms", 1, 0, 1, 300, 0
int idleStepperTotalSteps;;"count", 1, 0, 5, 3000, 0 int idleStepperTotalSteps;;"count", 1, 0, 5, 3000, 0
int mapAveragingSchedulingAtIndex;At what trigger index should some MAP-related math be executed? This is a performance trick to reduce load on synchronization trigger callback.;"index", 1, 0, 0, 7000, 0 int unusedInt3423423
#define pin_mode_e_enum "default", "INVALID", "INVALID", "INVALID", "opendrain", "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", "PULLUP", "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", "PULLDOWN" #define pin_mode_e_enum "default", "INVALID", "INVALID", "INVALID", "opendrain", "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", "PULLUP", "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", "PULLDOWN"
custom pin_mode_e 1 bits, U08, @OFFSET@, [0:6], @@pin_mode_e_enum@@ custom pin_mode_e 1 bits, U08, @OFFSET@, [0:6], @@pin_mode_e_enum@@

View File

@ -5056,7 +5056,6 @@ dialog = tcuControls, "Transmission Settings"
field = "vvtBooleanForVerySpecialCases", vvtBooleanForVerySpecialCases field = "vvtBooleanForVerySpecialCases", vvtBooleanForVerySpecialCases
field = watchOutForLinearTime, watchOutForLinearTime field = watchOutForLinearTime, watchOutForLinearTime
field = "TS over CAN debug", verboseIsoTp field = "TS over CAN debug", verboseIsoTp
field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex
field = "showHumanReadableWarning (affects Burn)", showHumanReadableWarning field = "showHumanReadableWarning (affects Burn)", showHumanReadableWarning
field = "Warning Message", warning_message field = "Warning Message", warning_message