Minor "noise" with NewSoftSerial

You are right, but why don't I get these characters using an UART, e.g. a hardware serial of Mega2560?

I don't know that I'm right. I would still like to see that the individual bytes look like, using

Serial.print("Byte: ");
Serial.println(t, DEC);

I see that you set pinMode for the NewSoftSerial pin, AFTER telling NewSoftSerial about the pin. I wouldn't think this advisable.

I also see that you use Serial.flush(). This throws away any data in the input buffer that has not been read yet. Rarely is this a good idea.

    if (t >= ' ')
      cmdrx[i++] = t;

It might be necessary, based on the results of printing t as a DEC value, to expand the if statement to exclude characters on the other end of the ASCII table, too.