Assuming that you connections are correct (may need a null modem cable) you are probably seeing "gibberish" because you are not trasmitting ASCII characters. Hypertermial will only display ASCII.
You will need to convert your numbers to ASCII character string to veiw on a terminal. For example, if you have a 50 decimal you need to transmit two ASCII bytes (Hex representation) of 0x35 and 0x30 (or in decimal rep. 53 and 48).
Also, be carefull of your corresion dot where you take the array and convert it to a string. Your array is an I32 (4 bytes in size) and your conversion truncates the I32 to a U8 and drops three of the bytes. This is "ok" for data that is smaller than 256 (unsigned) but your data values are signed and larger. You'll have data loss.
Edit: try this where the data is converted instead...