h-bridge wastegate not alive on bench #4965

bugfix: not any DC is ETB :(
This commit is contained in:
rusefillc 2023-01-17 13:13:46 -05:00
parent f6a19ca95e
commit 3a737c048c
1 changed files with 9 additions and 7 deletions

View File

@ -546,10 +546,11 @@ void EtbController::setOutput(expected<percent_t> outputValue) {
return; return;
} }
// If ETB is allowed, output is valid, and we aren't paused, output to motor. // If not ETB, or ETB is allowed, output is valid, and we aren't paused, output to motor.
if (getLimpManager()->allowElectronicThrottle() if (!isEtbMode() ||
(getLimpManager()->allowElectronicThrottle()
&& outputValue && outputValue
&& !engineConfiguration->pauseEtbControl) { && !engineConfiguration->pauseEtbControl)) {
m_motor->enable(); m_motor->enable();
m_motor->set(ETB_PERCENT_TO_DUTY(outputValue.Value)); m_motor->set(ETB_PERCENT_TO_DUTY(outputValue.Value));
} else { } else {
@ -806,16 +807,17 @@ static DcThread dcThread CCM_OPTIONAL;
static void showEtbInfo() { static void showEtbInfo() {
#if EFI_PROD_CODE #if EFI_PROD_CODE
efiPrintf("etbAutoTune=%d", efiPrintf("etbAutoTune=%d", engine->etbAutoTune);
engine->etbAutoTune);
efiPrintf("TPS=%.2f", Sensor::getOrZero(SensorType::Tps1)); efiPrintf("TPS=%.2f", Sensor::getOrZero(SensorType::Tps1));
efiPrintf("etbControlPin=%s duty=%.2f freq=%d", efiPrintf("ETB1 duty=%.2f freq=%d",
hwPortname(engineConfiguration->etbIo[0].controlPin),
engine->outputChannels.etb1DutyCycle, engine->outputChannels.etb1DutyCycle,
engineConfiguration->etbFreq); engineConfiguration->etbFreq);
efiPrintf("ETB freq=%d",
engineConfiguration->etbFreq);
for (int i = 0; i < ETB_COUNT; i++) { for (int i = 0; i < ETB_COUNT; i++) {
efiPrintf("ETB%d", i); efiPrintf("ETB%d", i);
efiPrintf(" dir1=%s", hwPortname(engineConfiguration->etbIo[i].directionPin1)); efiPrintf(" dir1=%s", hwPortname(engineConfiguration->etbIo[i].directionPin1));