System initialisation

Hi, This is more like a general question. My application needs to setup a communication with one of the peripherals that consists of sending / receiving packages on Uart interface. How and where would you implement that “init” function in a freertos system?

System initialisation

My general method for something like this, the initialization of a device that needs to be communicated over a channel that takes some real time/wants to use interrupts, is to do that initialization at the beginning of a task, normally the task that will be working with the device if there is one. Doing it there tends to reduce the issues of a task trying to use the device before it is ready.