The other day I had a situation where events would have made my life easier… I wanted to wait for three separate threads to reach a particular state before I continued. I didn’t know what order the threads would occur in and it could be different each time. Being new to FreeRTOS I started looking in the manual for the section on events only to find that it doesn’t support them. So I got round it by using a counting semaphore which the main thread takes three times, then in each of the other three threads I give the semaphore once. Only when the semaphore has been given three times will the main thread continue. This solved my problem but I was wondering if there was a better way I could have achieved this?