Problems with NRF24L01 and Serial.

Hello from Colombia!

Im receiving a Char from another arduino via Serial and this Char is perfect, all data is arriving well.
The problem is when i try to write this command : radio.write(receivedChars, sizeof(receivedChars)); all my Char corrupts and i dont know why.
When i run the code with that order, it starts to print the char mixed with garbage on the TX Serial even before trying to send it through the 2.4 module.
If a comment that line (just how it is in the code down bellow), the data works perfect without sendind the char using the module.

I Just really want to transmit that char using that module.

PD: Im having in count the 32 byte limitation even if the char is longer i know how to split it.
The structure of the Char is this (those values are real time readings from sensors):

<0.00 0.00 0.25 -0.34 9.79 -0.53 0.24 0.50 -3 -1 96.00 90.00 825 1013 1698 27 87 -1.12>

This is my code:

#include <nRF24L01.h>
#include <RF24.h>
#include <RF24_config.h>
#include <SPI.h>
 
const int pinCE = 9;
const int pinCSN = 10;
RF24 radio(pinCE, pinCSN);

const byte numChars = 32;
char receivedChars[numChars];

boolean newData = false;

 
// Single radio pipe address for the 2 nodes to communicate.
const uint64_t pipe = 0xE8E8F0F0E1LL;
 
void setup(void)
{
   Serial.begin(57600);
   radio.begin();
   radio.openWritingPipe(pipe);
   radio.setPALevel(RF24_PA_MAX);
   radio.setDataRate(RF24_250KBPS);
}
 
void loop(void){
  recvWithStartEndMarkers();
  showNewData();
  //radio.write(&receivedChars, sizeof(receivedChars));
  delay(10);
}


void recvWithStartEndMarkers() {
    static boolean recvInProgress = false;
    static byte ndx = 0;
    char startMarker = '<';
    char endMarker = '>';
    char rc;
 
    while (Serial.available() > 0 && newData == false) {
        rc = Serial.read();

        if (recvInProgress == true) {
            if (rc != endMarker) {
                receivedChars[ndx] = rc;
                ndx++;
                if (ndx >= numChars) {
                    ndx = numChars - 1;
                }
            }
            else {
                receivedChars[ndx] = '\0'; // terminate the string
                recvInProgress = false;
                ndx = 0;
                newData = true;
            }
        }

        else if (rc == startMarker) {
            recvInProgress = true;
        }
    }
}

void showNewData() {
    if (newData == true) {
        Serial.println(receivedChars);
        newData = false;
    }
}

Try this

void loop(void){
  recvWithStartEndMarkers();
  if (newDate == true) {
     Serial.println(receivedChars);
     radio.write(&receivedChars, sizeof(receivedChars));
     newData = false;
  }
}

It will only try to send a wireless message after a new Serial message has arrived.

If you need more help please post the latest version of both the TX and RX programs and samples of the output from each of them.

...R
Simple nRF24L01+ Tutorial