in System Integration by

I'm working on integration GUI package to our native system based on SafeRTOS. Before making additional task for GUI, I tried to call Init and main function(EwInit, EwProcess ) to test those APIs.   Free RTOS related code were replaced with SafeRTOS apis.

But the control is not returned from EwProcess. Actually EwEndUpdate() is not returned.  When EwEndUpdate is called, passing parameter seems okay(aViewport, updateRect).

It's in Library, I can't trace the code from that point. Could you let me know how to check root cause of this problem? Just for test, if I set Valid field to 0(False), the API is just returned. I believe EwEndUpdate() may check the field(Valid) at the beginning and return if it's 0(false).


Please advise me anything about this.


Best regards,



- Additional comment

EwBspGraphicsWaitForCompletion() is called twice with TransferInProgress = 1. This means xSemaphoreTake() is called twice, but this is binary semaphore. 2nd call should be called after PXP_IRQHandler() where xSemaphoreGiveFromISR() is called.

1 Answer

0 votes
Hello Jayk,

which version of Embedded Wizard Studio (and which platform) are you using?

Please note, that starting with version 12 we introduced an operating system abstraction layer: ew_bsp_os.c. In case you want to change the OS e.g. from FreeRTOS to SafeRTOS, you can adapt the functions within this module.

Best regards,


Ask Embedded Wizard

Welcome to the question and answer site for Embedded Wizard users and UI developers.

Ask your question and receive answers from the Embedded Wizard support team or from other members of the community!

Embedded Wizard Website | Privacy Policy | Imprint