espressif / esp-aws-iot

AWS IoT SDK for ESP32 based chipsets
Apache License 2.0
256 stars 154 forks source link

setOtaInterfaces consumed lots of dram (58000 bytes) (CA-259) #155

Open law-ko opened 1 year ago

law-ko commented 1 year ago

Hello,

We are using the example ota_mqtt to perform AWS OTA updates, however, we realized setOtaInterfaces( &otaInterfaces ); is consuming lots of dram space (about ~58176 bytes static DRAM space). Is there any way to decrease the DRAM usage?

Original ota_mqtt idf.py size:

Total sizes:
Used static DRAM:   99184 bytes (  81552 remain, 54.9% used)
      .data size:   14800 bytes
      .bss  size:   84384 bytes
Used static IRAM:   86654 bytes (  44418 remain, 66.1% used)
      .text size:   85627 bytes
   .vectors size:    1027 bytes
Used Flash size :  744286 bytes
      .text     :  599527 bytes
      .rodata   :  144503 bytes
Total image size:  845740 bytes (.bin may be padded larger)

With setOtaInterfaces commented out:

Total sizes:
Used static DRAM:   41392 bytes ( 139344 remain, 22.9% used)
      .data size:   14792 bytes
      .bss  size:   26600 bytes
Used static IRAM:   86198 bytes (  44874 remain, 65.8% used)
      .text size:   85171 bytes
   .vectors size:    1027 bytes
Used Flash size :  725078 bytes
      .text     :  587575 bytes
      .rodata   :  137247 bytes
Total image size:  826068 bytes (.bin may be padded larger)

Thank you.