diff --git a/esphome/components/sensor/filter.h b/esphome/components/sensor/filter.h index e289f997f2a..1b71942ef33 100644 --- a/esphome/components/sensor/filter.h +++ b/esphome/components/sensor/filter.h @@ -539,12 +539,7 @@ optional calibrate_linear_compute(const std::array *functions, template class CalibrateLinearFilter : public Filter { public: explicit CalibrateLinearFilter(std::initializer_list> linear_functions) { - size_t i = 0; - for (const auto &f : linear_functions) { - if (i >= N) - break; - this->linear_functions_[i++] = f; - } + init_array_from(this->linear_functions_, linear_functions); } optional new_value(float value) override { return calibrate_linear_compute(this->linear_functions_.data(), N, value);