PIC32 -> xQueueReceive hangs second time

anonymous wrote on Monday, August 15, 2011:

I’m using version 7.0.1, I start 9 task with success, I can trigger them with a network package and queues. Now when I start a long running task, when I exit the FSM and come in the main for(;:wink: with the
xStatus = xQueueReceive(xQueueTransport, &action, portMAX_DELAY);
if ( xStatus == pdPASS)
It hangs in the vListInsert.
for 1. I checked the stack overflow and the code never comes to the hooks.
for 2. I have
#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 6 )
for 3. with the other task I have no problems (don’t run for >15sec)
for 4.  The first time the task is started, but when it returns it hangs. I have put a stacksize of 4096 for this task and a total_heap_size 56000.

I’m out of ideas to fix this, what can I check to solve this issue?
Previous when I hit this part of freetos, I needed to increase the heap or minimal_stack_size. But nothing seems to fix this issue. I tried to max out these two values without success

rtel wrote on Thursday, August 18, 2011:

Without being sat at your desk and able to debug this I’m not sure what advice I can offer.  However, I’m curious about your statement “for 4.  The first time the task is started, but when it returns it hangs” - are you attempting to return from a task?  That would definitely cause a crash, there is nothing to return to.  If you want to end a task call vTaskDelete( NULL );