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
### Fixed
- Removed questionable MAP sampling trigger index option
## August 2024 "Day 898"
### Added

View File

@ -458,7 +458,7 @@ void proteusBoardTest() {
static void setBasicNotECUmode() {
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->wwaeBeta = 0.0;

View File

@ -49,7 +49,7 @@ public:
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 mapAveragingDuration = 0;

View File

@ -191,7 +191,7 @@ void refreshMapAveragingPreCalc() {
angle_t start = interpolate2d(rpm, c->samplingAngleBins, c->samplingAngle);
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");
for (size_t i = 0; i < engineConfiguration->cylindersCount; i++) {
@ -221,9 +221,10 @@ void refreshMapAveragingPreCalc() {
void mapAveragingTriggerCallback(
uint32_t index, efitick_t edgeTimestamp) {
#if EFI_ENGINE_CONTROL && EFI_PROD_CODE
// this callback is invoked on interrupt thread
if (index != (uint32_t)engineConfiguration->mapAveragingSchedulingAtIndex)
// update only once per engine cycle
if (index != 0) {
return;
}
int rpm = Sensor::getOrZero(SensorType::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 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"
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 = watchOutForLinearTime, watchOutForLinearTime
field = "TS over CAN debug", verboseIsoTp
field = "MAP Averaging Logic @", mapAveragingSchedulingAtIndex
field = "showHumanReadableWarning (affects Burn)", showHumanReadableWarning
field = "Warning Message", warning_message