This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Openthread problem with low power consumption

Hi! I'm using openthread with custom-made board with NRF52840. During development of lowpower thread application I found out one big problem which i couldn't resolve. I've configured node for functioning as SED. Everything works fine. The problem is power consumption. In idle state uC draws constatnt current about 1.1mA. I found out that only working peripherial is CRYPTOCELL. I couldn't find any way to switch it off from the library. When i turned it off just by writing 0 to ENABLE register power consumption fell down to about 5uA (expected value). After that the stack stopped working. Then i've tried to switch it off after transmition and up, before next. It works fine but after few transmissions application crashes and connection is lost (i'm monitoring it by topology monitor) and uC starts to draw strange amount of current - about 6mA. Program is still working but transmission cannot be done any more.

Programs goes like this: initialization of peripherials -> initializastion of thread -> connection -> waiting for interrupt

rtc interrupt -> cryptocell up -> sensors readout-> data send -> 3 seconds timer start -> timer interrupt -> cryptocell down -> back to main loop

3 seconds delay is for sure that transmission is over. I couldn't find any available callback for end of transmission signalization. Is it possible to turn cryptocell off from the level of openthread, without posibility of program crash? Low power consumtion is main goal of this application so I will be very grateful for help.

Best regards, Wojtek Rzepecki

Related