Help making up a string from various data sources

           char* sendmsg;                 //message string to send to PC

No, it is not. It is a pointer that might someday be used to point to a block of memory where there is some character data.

            sendmsg = ??????              //some code here to make the string up

Make the string from what?

  mystring = "{" + mystring + "}" + '0'

You can't do that.

If you make sendmsg an array, instead of a pointer, and you use the sprintf() function to populate the array, it will already be NULL terminated. You can have the sprintf() function add the leading and trailing delimiters, or you can use three Serial.print() statements to send the {, the message, and the }.