Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs

Any tutorial available how to tune properly FreeRTOS parameters when used with nRF5 SDK (and SES)?

Last time I dialed with nRF5 SDK and FreeRTOS (couple years ago), I wasted huge amount of time going back and forth until tune memory parameters required by FreeRTOS,  tasks etc.

Is there meanwhile any new manual or utils that could help simplify this process for

configTOTAL_HEAP_SIZE 

configTIMER_TASK_STACK_DEPTH 

configTIMER_QUEUE_LENGTH   

configMINIMAL_STACK_SIZE

xTaskCreate(…usStackDepth …) and any other functions that need to allocate/use memory that could trigger stack overflow etc memory faults?

I have already some ways to tune most of those, but are quite lame, so was wondering if meanwhile there is some development in order to facilitate such tasks?

The only item I didn’t found yet reasonable solution was the configTIMER_QUEUE_LENGTH, asked even in Freertos forum, there was some feedback, but don’t see any final solution there,  even if they made something without to mentioned it in this thread, it would be for v11, while the port for nRF is still on v10 of FreeRTOS. Any ideas how to “fight” timer queue length with what is available from nRF5 SDK 17.1.0?

Thanks

  • We have not spent any resources with more fine tuning or calibrating the examples or features that use FreeRTOS on our older nRF5SDK based solutions.

    A lot of time and effort has been spent supporting and enhancing nRF Connect SDK which uses Zephyr RTOS.

    Any ideas how to “fight” timer queue length with what is available from nRF5 SDK 17.1.

    Most of these calibrations are application specific and we cannot give any generic answer on what fits in your case. The only thing we can do is to test and see if the template examples we deliver with our SDK works under the test parameters we give before releasing the SDK.

Related