ESP82661M FLASH OTA 错误解决

一、环境

  1. SDK版本:RTOS3.0
  2. 板子为1M的FLASH

二、问题

调用 esp_ota_end 出现下面错误
在这里插入图片描述

三、解决方法

  1. 此方法不建议:打开 CONFIG_ESP8266_BOOT_COPY_APP

  2. 建议方法:SDK找到对应的issue:https://github.com/espressif/ESP8266_RTOS_SDK/issues/745
    修改方法为:ESP8266_RTOS_SDK\components\app_update\esp_ota_ops.c文件中

    Changing the code (see my first post) from:
    if (pos->offset + pos->size <= 0x100000) {
    
    To:
    if (pos->offset + pos->size < 0x100000) {
    
  3. 分区别再增加一点,原本大小只是 0x70000

    # Name,   Type, SubType, Offset,   Size, Flags
    # Note: if you change the phy_init or app partition offset, make sure to change the offset in Kconfig.projbuild
    nvs,      data, nvs,     0x9000,  0x4000
    otadata,  data, ota,     0xd000,  0x2000
    phy_init, data, phy,     0xf000,  0x1000
    ota_0,    0,    ota_0,   0x10000, 480K
    ota_1,    0,    ota_1,   0x88000, 480K
    
    

你可能感兴趣的:(ESP8266,ESP8266)