Openthread with (Free)RTOS - CC310/mbedtls crypto

Hi all,

I am successfully using Openthread for an application on the nrf52840.
As the application is growing I'm thinking about utilizing a RTOS. Therefore, I am currently looking into Zephyr and FreeRTOS (which I already used for other projects).

When looking at the FreeRTOS examples in the SDK and also the ot-rtos code, it seems that the CC310 cryptocell is not (or rather cannot be used) anymore.

So my questions are:

1) Does anyone have experience regarding the impact on power consumption and processing time especially in the Openthread use-case?
Some time ago I tested NXP chips for Openthread but due to the missing hardware crypto commissioning took a rather long time (tens of seconds).

2) Is it theoretically (with changes on the code) possible to get FreeRTOS working with CC310? At the moment it is not quite clear to me what causes this limitation, and due to the fact that I'm not a crypto expert, I probably wouldn't be able to fix it anyway. ;)

Thank you, Thomas

  • Hi Thomas,

    I have been working a lot with FreeRTOS but I haven't tried it with CC310. 

    I need to ask the experts of OpenThread to comment on this thread(not sure when they can response). But my initial thoughts

    1) The power consumption would go a bit higher than without RTOS (about 50-80uA) for the bookkeeping of the FreeRTOS kernel itself.

    2) In theory, yes. CC310 is treated like a peripheral to CortexM4 and FreeRTOS can work with different peripherals. I have also heard about the limitation of nRF  CC310 libraries unable to work in a multi-thread context, but I do not know the specifics of it. As I haven't tried this combo myself, I never had the need to dig into it.