Question 1. I noticed that xEventGroupSync() performs a call to vTaskSuspendAll() prior to entering a block where the events are tested. I want to confirm if this stops the scheduling of the other CPU on the dual core ESP32. I realize that xTaskResumeAll() is called later on.
Question 2. I see that xEventGroupSetBits( xEventGroup, uxBitsToSet ) is called after the scheduler has been suspended. Does this mean that uxBitsToSet remain set in the event group after a timeout occurs?
Looking at the code I don’t see anywhere where they are cleared, and thinking about the synchronisation/rendezvous use case I don’t think it would make sense to clear them - so the answer is no, they are not cleared again.