diff --git a/esphome/components/mcp4461/output/mcp4461_output.h b/esphome/components/mcp4461/output/mcp4461_output.h index 79a3ff84d0..c9ca54ae97 100644 --- a/esphome/components/mcp4461/output/mcp4461_output.h +++ b/esphome/components/mcp4461/output/mcp4461_output.h @@ -19,15 +19,14 @@ class Mcp4461Wiper : public output::FloatOutput, public Parented(wiper); if (wiper_idx < 4) { - if (!parent->reg_[wiper_idx].enabled) { - parent->disable_terminal(wiper, 'h'); + if (parent->reg_[wiper_idx].enabled) { + if (!terminal_a) + parent->disable_terminal_(wiper, 'a'); + if (!terminal_b) + parent->disable_terminal_(wiper, 'b'); + if (!terminal_w) + parent->disable_terminal_(wiper, 'w'); } - if (!terminal_a) - parent->disable_terminal_(wiper, 'a'); - if (!terminal_b) - parent->disable_terminal_(wiper, 'b'); - if (!terminal_w) - parent->disable_terminal_(wiper, 'w'); } } uint16_t get_wiper_level();