I use FreeRTOS 9.0.0 and can see that I miss notifications when they arrive several times before calling xTaskNotifyWait.
In a given task if two interruptions TX and RX occur where each of which sets its own notification then the subsequent xTaskNotifyWait call will tell about the requested notification, however, internally it will reset the notification status with the line:
pxCurrentTCB->ucNotifyState = taskNOT_WAITING_NOTIFICATION;
although the pxCurrentTCB->ulNotifiedValue correctly holds both events but it is not checked anymore.
So one is able to track the TX notification but not the RX if both occur before the first xTaskNotifyWait call.
Is this done so by design or is a bug? Not being able to track nested notifications greatly limits its usage.
Thanks a lot for any comment in advance.