Daemon task and priority

configMAX_PRIORITIES sets the total number of priorities in the system, and as the lowest priority is 0 rather than 1, the highest priority is (configMAX_PRIORITIES – 1).

Any constant that starts “config” is for you to set, so you can set configTIMER_TASK_PRIORITY to the value needed by your application, and it is very common to set this to the highest possible priority. There are some applications that don’t want it to be that high though. Some of the FreeRTOS tests are probably a good example, where some of the internal timing checks can fail if the measured time gets extended because it got interrupted by the execution of a software timer at a higher priority.