diff --git a/esphome/core/application.cpp b/esphome/core/application.cpp index 449acc64cf..2b84b1c1e4 100644 --- a/esphome/core/application.cpp +++ b/esphome/core/application.cpp @@ -132,7 +132,7 @@ void Application::setup() { this->after_loop_tasks_(); this->app_state_ = new_app_state; yield(); - } while (!component->can_proceed()); + } while (!component->can_proceed() && !component->is_failed()); } ESP_LOGI(TAG, "setup() finished successfully!");