Command Line Interface (CLI) simultaneously on a UART and via UDP/TCP/IP

lesfark wrote on Thursday, March 20, 2014:

Is it possible to run a Command Line Interface (CLI) on both a UART and via a UDP/TCP/IP interface at the same time? A lot of small RTOS shells/CLIs can only have a single instance.

rtel wrote on Thursday, March 20, 2014:

Yes, FreeRTOS+CLI can be used on multiple interfaces, I think there are some examples in the download that do that.

You need to consider how you will manage the output buffers. Either each interface can have its own output buffer, which is simple but requires a little more RAM. Or an output buffer can be shared between the interfaces as described on this page:

If you share a buffer between the interfaces then either only one interface can be used at a time (i.e. don’t try running a command via the UART interface at the same time that somebody else is running a command through the UDP/TCP interface), or you need to protect the single output buffer using a mutex.