i'm not sure what you think you're going to get. chr(1) is a non printing character, so printing it to the log is meaningless.
print msg() to the log isn't going to tell you something you don't already know, ie, "begin" + chr(1).
if what you mean is you want to see "begin" + chr(1) as numeric byte values or a hex values, then you can use the 2 routines below.
as you will see, when you simply print out "begin" + chr(1) as character values, chr(1) does not print. if your original string consisted of other control characters, then printing it out would show a number of missing characters.
Dim s As String = "begin" & Chr(1)
Dim msg() As Byte = s.GetBytes("UTF8")
Dim sb As StringBuilder
sb.Initialize
For Each b As Byte In msg
sb.Append(b).Append(" ")
Next
sb.Append(CRLF)
For Each b As Byte In msg
sb.append("0x").Append(Bit.ToHexString(b.As(Int))).Append(" ")
Next
sb.Append(CRLF)
For Each b As Byte In msg
sb.Append(Chr(b)).Append(" ")
Next
Log(sb.ToString)