Thanks Manfred. EW11 running on STM32H7.
I'm running all of the sensor code on the CM4 core and everything is sent to the CM7 on a message queue that the DeviceDriver_ProcessData() reads in the GUI thread. The device driver also interfaces with a config DB to get settings data, again that's initialised in the same thread via it's own init function that DeviceDriver_Init() calls. DeviceDriver_ProcessData() then queries the DB and updates a property. The CM7 is running freertos but is doing everything in one thread.
The first thing my Application class does is display a splash screen. That's been fine, but now I want to pick a splash screen based on a value from the config DB. The problem is that because EwInit() creates the Application class before the Device Driver init and first run of ProcessData, then the property has not been set when the Application::Init() function is called. The same would be true for the sensor values but in practice they are fully populated by the time the UI gets to the stage where they are needed.
I did try another approach yesterday, which was to have the device driver include an 'Iniitalised' property that it sets to true at the end of ProcessData(). The Applicaiton class then observes that property and waits for it to be true before displaying the splash screen. That seems to work quite well, but interested to know which approach you'd recommend.
thanks, ...rob