Hi team,
Do we have any evaluation on the nRF Connect SDK size if customer wants to run on nRF9160? Customer wants to evaluate their Flash/ RAM buffer for APP.
Thanks!
Leon
Hi team,
Do we have any evaluation on the nRF Connect SDK size if customer wants to run on nRF9160? Customer wants to evaluate their Flash/ RAM buffer for APP.
Thanks!
Leon
I'll just copy in some replies I have given earlier (in a private ticket) about the flash size of the different libraries in the nRF Connect SDK. It was written based on NCS v1.0.0 I believe, but the sizes should be roughly the same I think.
Sample/application | Calculation of memory | Total flash memory |
at_client | 32 768 (SPM) + 109650 bytes (application) | 142 418 bytes |
aws_fota | 35408 (SPM) + 49152 (mcuboot) + 152668 bytes (application) | 237 228 bytes |
coap_client | 32768 (SPM) + 101944 bytes (application) | 134 712 bytes |
gps | 32768 (SPM) + 114256 bytes (application) | 147 024 bytes |
lte_ble_gateway | 32768 (SPM) + 198191 bytes (application) | 230 959 bytes |
lwm2m_carrier | 32768 (SPM) + 160400 bytes (application) | 193 168 bytes |
mqtt_simple | 32768 (SPM) + 103800 bytes (application) | 136 568 bytes |
asset_tracker | 35408 (SPM) + 49152 (mcuboot) + 211232 bytes (application) | 295 792 bytes |
Non-secure hello world | 32768 (SPM) + 11712 bytes | 44 480 bytes |
Secure hello world | 14292 bytes | 14292 bytes |
You can use this table to get a rough estimate of how much flash is required for different cellular applications. By comparing the flash usage of a particular sample with the flash usage of the non-secure hello world example, you can see how much additional flash is required (not including SPM, Zephyr kernel etc..).
E.g. in order to set up a simple MQTT application, you need roughly 92 088 bytes:
This means that all the additional libraries/files (drivers/lte_link_control, BSD library, MQTT, etc.. ) required for an MQTT application occupy roughly 92088 bytes of memory.
I'll just copy in some replies I have given earlier (in a private ticket) about the flash size of the different libraries in the nRF Connect SDK. It was written based on NCS v1.0.0 I believe, but the sizes should be roughly the same I think.
Sample/application | Calculation of memory | Total flash memory |
at_client | 32 768 (SPM) + 109650 bytes (application) | 142 418 bytes |
aws_fota | 35408 (SPM) + 49152 (mcuboot) + 152668 bytes (application) | 237 228 bytes |
coap_client | 32768 (SPM) + 101944 bytes (application) | 134 712 bytes |
gps | 32768 (SPM) + 114256 bytes (application) | 147 024 bytes |
lte_ble_gateway | 32768 (SPM) + 198191 bytes (application) | 230 959 bytes |
lwm2m_carrier | 32768 (SPM) + 160400 bytes (application) | 193 168 bytes |
mqtt_simple | 32768 (SPM) + 103800 bytes (application) | 136 568 bytes |
asset_tracker | 35408 (SPM) + 49152 (mcuboot) + 211232 bytes (application) | 295 792 bytes |
Non-secure hello world | 32768 (SPM) + 11712 bytes | 44 480 bytes |
Secure hello world | 14292 bytes | 14292 bytes |
You can use this table to get a rough estimate of how much flash is required for different cellular applications. By comparing the flash usage of a particular sample with the flash usage of the non-secure hello world example, you can see how much additional flash is required (not including SPM, Zephyr kernel etc..).
E.g. in order to set up a simple MQTT application, you need roughly 92 088 bytes:
This means that all the additional libraries/files (drivers/lte_link_control, BSD library, MQTT, etc.. ) required for an MQTT application occupy roughly 92088 bytes of memory.
Here are some different approaches to calculate the size of a library in NCS:
Best regards,
Simon