diff --git a/esphome/components/mcp4461/output/mcp4461_output.h b/esphome/components/mcp4461/output/mcp4461_output.h index 6b9d8c730c..6df20c588c 100644 --- a/esphome/components/mcp4461/output/mcp4461_output.h +++ b/esphome/components/mcp4461/output/mcp4461_output.h @@ -30,6 +30,12 @@ class Mcp4461Wiper : public output::FloatOutput { parent->disable_terminal(wiper, 'b'); if (!terminal_w && wiper_idx < 4) parent->disable_terminal(wiper, 'w'); + if (this->initial_value_.has_value()) { + // Use the value + parent->set_wiper_level(wiper, this->initial_value_); + } else { + ESP_LOGCONFIG(TAG, "No initial value set, retaining previous wiper level."); + } } uint16_t get_wiper_level(); void save_level();