diff --git a/esphome/components/sensor/filter.h b/esphome/components/sensor/filter.h index 1b71942ef3..69fa3f10df 100644 --- a/esphome/components/sensor/filter.h +++ b/esphome/components/sensor/filter.h @@ -556,12 +556,7 @@ optional calibrate_polynomial_compute(const float *coefficients, size_t c template class CalibratePolynomialFilter : public Filter { public: explicit CalibratePolynomialFilter(std::initializer_list coefficients) { - size_t i = 0; - for (float c : coefficients) { - if (i >= N) - break; - this->coefficients_[i++] = c; - } + init_array_from(this->coefficients_, coefficients); } optional new_value(float value) override { return calibrate_polynomial_compute(this->coefficients_.data(), N, value);