Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs
This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

BLE_GAP_SEC_STATUS_DHKEY_FAILURE when using size optimization on gcc

Hi,

after migrating from SDK12.2 to SDK14.2 we encountered a problem with GAP Security.

When setting optimization to -Os, the program fails with BLE_GAP_EVT_AUTH_STATUS returning 0x8B (BLE_GAP_SEC_STATUS_DHKEY_FAILURE).

When using -O2 (or lower) which should be mostly the same as -Os except the size optimizations it works without error.

Since the micro-ecc/nrf52_armgcc folder no longer existed in SDK 14 we used nrf52nf_armgcc instead. We already noticed a difference between those versions.

While we were able to use the same generated ecc-lib on different systems with SDK 12, we now need to build it anew on each system. Maybe there is something else we need to consider after this change.

We are currently using GCC version 5.3.1 20160413

Thanks and best regards,

Niclas