How to modify projects to run on other boards - Microchip AWS

mrpackethead wrote on April 16, 2018:

I posed this question in the FreeRTOS Forum, and Richard Barry provided a great response.

https://sourceforge.net/p/freertos/discussion/382005/thread/f457c889/

+"The MQTT implementation includes an MQTT client library suitable for use+
+in bare metal applications, and an MQTT agent for FreeRTOS. So you+
+could integrate just the library, but it will be simpler to create an+
+application if you could also integrate the agent.+

+The agent (think daemon task) manages the MQTT library on behalf of the+
+developer, providing the developer with a simple connect, publish, and+
+subscribe interface, and unburdening the developer from having to do+
+anything special to manage the MQTT protocol itself - for example there+
+is no need to periodically call the MQTT library, the agent does that+
+transparently in the background for you.+

+As you point out, the agent has a couple of dependencies. Although the+
+provided examples use the FreeRTOS+TCP stack, it does so through an+
+abstraction layer (called the ‘secure sockets’ layer, as it also+
+abstracts away TLS), so you could provide a port of that abstraction+
+layer to the Harmony TCP/IP stack if you wanted to continue to use that+
+stack.+

+So you could update your project to use the FreeRTOS+TCP stack and the+
+provided secure sockets abstraction layer for that stack, or you could+
+update your project by providing your own secure sockets abstraction for+
+the Harmony stack. Alternatively you could use just the MQTT library+
+component. Let me know which way you think is best."+

In my way of thinking the best way forward ( at least for me ), would be to use Harmony and FreeRTOS 10.x ( which works nicely ). This gives me the best of all the worlds. the ‘cost’ to me is having to port the secure sockets layer. This does seem like the best way to move forward.

Now to start looking at that secure soeckets layer in some depth.