Hi, this is one of the first times that I have posted to a forum for support, so go easy :-).
I have a task that sends a struct pointer to a queue using xQueueSend(). The task that receives the this message doesnt get it. The microcontroller I am using is an STM32F103VE.
I debugged with GDB and followed the task that sends through until xQueueSend returns pdPass. The receiving task never receives this message. I set the block time on receive to the maximum to no avail. With a breakpoint set at the receiving line, I can prove that the task is running and waiting for a message on it’s queue. When defining the queue, I check that the return value is not NULL as recommended. So, the queue is created, and is legit, but receives nothing when a message is sent.
My application has quite a bit of IPC, but this one task wont receive. I have checked the queue handle names etc also.
My code is on github at https://github.com/vjval1974/Brew-Machine-MkIV (WebInterface branch) and the queue in question is “xBrewTaskHLTQueue” which doesnt receive on hlt.c line 127. I know my code isnt elegant (to say the least), but I am working on that.
I would love to know any reason why a task can send a message to a queue and the receiver not receive.
Thanks in advance