ATECC608a examples fail to compile


I’m trying to use ATECC608a and building the mbed-os-example-atecc608a/atecc608a. I can build successfully for the K64F example in the but I get an error on the include for “psa/lifecycle.h” for the targets I’m trying to run… NUCLEO_L432KC and L496RG.

Building project atecc608a (NUCLEO_L476RG, GCC_ARM)
Scan: atecc608a
Compile [ 0.1%]: main.c
[Fatal Error] main.c@25,10: psa/lifecycle.h: No such file or directory
[ERROR] ./main.c:25:10: fatal error: psa/lifecycle.h: No such file or directory
25 | #include “psa/lifecycle.h”
| ^~~~~~~~~~~~~~~~~
compilation terminated.

I’m not sure why this is target specific and how to resolve it. For the atecc608a LoRaWAN example I was able to copy several files from another target to get past the compile errors, but I suspect that’s not the right thing to do. Is there some prerequisite in the target that needs to be in place? How to proceed?


K64F has PSA.

However L432KC doesn’t support.

Thanks Desmond! I guess that severely limits what mbed targets can use TLS and ATECC608a code… only a handful of targets seem to declare “PSA” in the targets.json file! :frowning:

Unless it is easy to add to a target?

This example targets on some popular boards connecting to Pelion, with ATECC608a, for demonstrating external secure element capability.

We have a porting guide, it’s not easy but worth to port!

Thanks Desmond. I see one ST Micro board has PSA… I’ll take a look at porting to others.