This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Connected LaunchPad SensorHub IoT bug

In examining the source code for the senshub_iot to port the qs-iot example application for the EK-TM4C1294XL Connected LaunchPad to use FreeRTOS, I observed an issue with code in the senshub_iot's cloud_task.c file in which a semaphore is taken with a non-0 block time specified.

See Line 1133 in: TivaWare\examples\boards\ek-tm4c1294xl-boostxl-senshub\senshub_iot\cloud_task.c

The FreeRTOS website specifically states that "It is therefore essential that timer callback functions never attempt to block."

See: FreeRTOS Software Timers: Important information on writing timer callback functions

  • Thanks for the catch.  You are correct this is an oversight on our part.

    The simplest solution is probably to remove portMAX_DELAY as the final parameter to xQueueSendToBack and replace it with zero.  Then optionally catch the case where the send fails and either re-try or send an error message to the console.

    I will file a bug report and this should get fixed for the next TivaWare release. 

    Dexter

  • I will file a bug report and this should get fixed for the next TivaWare release.

    Do you know if this has been fixed yet?

    Thanks.