$IIMWV,225.0,R,000.0,N,A *38$IIMWV,225.0A
your output looks this way probably because the receiving char array is 40 bytes long and the lines too
There is a bug in your code (you did't copy very well ![]()
your copy
  if (dataStream == '\n') // end of line
  {
   index = 0;
   data[index] = 0; // string terminator
   processData();
  }
my original
  if (c == '\n') // end of line
  {
   data[idx] = 0; // string terminator
   processData();
   idx = 0;
  }
do you notice the fundamental difference?