Other Parts Discussed in Thread: CC3200
Hi,
I am using the latest TI-RTOS 2.16.01.14, the NS package in there, the latest 3200 service pack and AWS 1.1.1 from git.ti.com.
In my project I have a task slTask which is based on the aws sample code on git. Basically it pends on an event with timeout 1s, whereupon it calls mqtt_yield and/or publishes ~600 bytes approx every 1.3 sec based on an event. I suppose this means yield can be called with 0.3 sec interval in some cases.
It works well, but after some hours of use, it will suddenly hang in Ssock_recv -> sl_Recv when calling yield.
See call stack below, and see attached picture:
From the UART log output it is apparent that '--> sleep' which is printed after yield stops being output, the background threads keep producing content to be published, and after some seconds, the event handler (netwifi/wifi.c) says that the socket is closed because of some error. I think it says RX fragmentation or something, which it tends to say a lot, even though there is nothing being sent to the device via this socket except perhaps keepalive things. I don't have the log handy unfortunately.
After a while of this, the background threads don't have any more slots to store outgoing data, and when execution is halted it is invariably the above scenario.
This problem has persisted across TI-RTOS upgrades and AWS upgrades, and it's unpredictable but it always occurs.
I hope you may have some insight to offer.
Best regards,
Aslak

