diff --git a/components/esp_https_ota/src/esp_https_ota.c b/components/esp_https_ota/src/esp_https_ota.c index 4207ad1dbf..a215b8c2ba 100644 --- a/components/esp_https_ota/src/esp_https_ota.c +++ b/components/esp_https_ota/src/esp_https_ota.c @@ -684,6 +684,11 @@ esp_err_t esp_https_ota_perform(esp_https_ota_handle_t https_ota_handle) esp_ota_set_final_partition(handle->update_handle, handle->partition.final, handle->partition.finalize_with_copy); handle->state = ESP_HTTPS_OTA_IN_PROGRESS; + /** + * If the final partition is not an app or bootloader, return ESP_ERR_HTTPS_OTA_IN_PROGRESS + * As there is no need to read header and verify chip id and chip revision for custom partition. + * Directly jump to the OTA in progress state. + */ if (handle->partition.final->type != ESP_PARTITION_TYPE_APP && handle->partition.final->type != ESP_PARTITION_TYPE_BOOTLOADER) { return ESP_ERR_HTTPS_OTA_IN_PROGRESS; diff --git a/examples/system/ota/partitions_ota/test/storage.bin b/examples/system/ota/partitions_ota/test/storage.bin index 547abd18d9..6531bbb9bd 100644 Binary files a/examples/system/ota/partitions_ota/test/storage.bin and b/examples/system/ota/partitions_ota/test/storage.bin differ