The latest development version of this page may be more current than this released 2.5.0 version.
CONFIG_MBEDTLS_HEAP_SIZE

Heap size for mbed TLS

Type: int

Help

The mbedtls routines will use this heap if enabled. See ext/lib/crypto/mbedtls/include/mbedtls/config.h and MBEDTLS_MEMORY_BUFFER_ALLOC_C option for details. That option is not enabled by default. Default value for the heap size is not set as it depends on the application. For streaming communication with arbitrary (HTTPS) servers on the Internet, 32KB + overheads (up to another 20KB) may be needed. For some dedicated and specific usage of mbedtls API, the 1000 bytes might be ok.

Direct dependencies

MBEDTLS_ENABLE_HEAP && MBEDTLS

(Includes any dependencies from ifs and menus.)

Defaults

Kconfig definition

At modules/Kconfig.mbedtls:120

Included via Kconfig:8Kconfig.zephyr:23modules/Kconfig:21

Menu path: (Top) → Modules → mbedTLS Support → Enable global heap for mbed TLS

config MBEDTLS_HEAP_SIZE
    int "Heap size for mbed TLS"
    default 10240 if OPENTHREAD_COMMISSIONER || OPENTHREAD_JOINER
    default 512
    depends on MBEDTLS_ENABLE_HEAP && MBEDTLS
    help
      The mbedtls routines will use this heap if enabled.
      See ext/lib/crypto/mbedtls/include/mbedtls/config.h and
      MBEDTLS_MEMORY_BUFFER_ALLOC_C option for details. That option is not
      enabled by default.
      Default value for the heap size is not set as it depends on the
      application. For streaming communication with arbitrary (HTTPS)
      servers on the Internet, 32KB + overheads (up to another 20KB) may
      be needed. For some dedicated and specific usage of mbedtls API, the
      1000 bytes might be ok.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)