Blob Issues

I have a serial receive routine (arduino to imp) and I use a blob to capture the data. I made this declaration:
local sin = blob(60);
and I can see my data by using this:

excerpts:
local result = hardware.uart57.read(); if (result != ';') { sin.writen(result, 'b'); }else{ sin.writen(result, 'b'); server.log(sin.tostring());
and i usually see this in the server log

0.00,144.00,405.00,0.00,0.00,7784.00,11779.00,0.00,0.00,7953.00,12780.00,77810,12664.00,0,0;0;
I then realized that there are 95 characters coming through so I changed to this:
local sin = blob(95);
but when I do I see this in server logsā€¦
NzgwLjAwLDc3ODYuMDAsMTI2NjUuMDAsMCwwOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
So I change it back to (60) and it works again.

I am asking because the last few parameters that come through sometimes gives me erroneous values (they are temperature conversions that go into this equation t1f = 455 - ((720 * t1fh) / t1fl);

Why does 60 work and 100 does not?

Probably there are non-printable characters in the longer string, which the server log cannot reproduce. Try something like this:
local okstring = "" foreach (c in sin) { if (c >=32 && c <= 126) okstring += c.tochar(); } server.log(okstring);
Peter