Paho MQTT client already provides an adaptation layer for CC3200 at
MQTTClient-C/src/cc3200. In basic, the embedded-C Paho requires 2 resources from the device: timer and socket.
The CC3200 porting runs out of the box; however, when you run with FreeRTOS, the task scheduling of the OS may broken.
Why? Look at MQTTCC3200.c, we find that the timer is got from Systick interrupt handling, but Systick is occupied already for FreeRTOS scheduling. It seems that most of Cortex M3/M4 FreeRTOS use Systick for kernel timing. Good practice is to avoid the use of it in app layer.
Work around? Need timer? Get from OS kernel itself, which retrieve from Systick, at