Refrescar texto impreso en una Mtriz LED rgb 64x32

Hola que tal compañeros programadores.
Me llamo Edgar y les vengo a compartir un problema que e tenido al manipular una matriz de leds RGB de 64X32 el problema recae en que quiero imprimir el texto que escribo por medio de la ventana serial yo ingreso un mensaje y posteriormente ingresar otro y ese no se escribe en el mismo lugar, en cambio se salta un reglon y mantiene el mensaje anterior y despues de otro mensaje este ya no cabe y no se escribe manteniendo los mensajes viejos.

En la siguiente imagen se observa el error que tengo.

Aquí les dejo el código:

#include <RGBmatrixPanel.h>

//#define CLK  8   // USE THIS ON ADAFRUIT METRO M0, etc.
//#define CLK A4 // USE THIS ON METRO M4 (not M0)
#define CLK 11 // USE THIS ON ARDUINO MEGA
#define OE   9
#define LAT 10
#define A   A1
#define B   A2
#define C   A3
#define D   A4
int i;
int J = 0;
int b;
char input;
String variable;
int delay1;
unsigned long MiliS, TiempoMS;
RGBmatrixPanel matrix(A, B, C, D, CLK, LAT, OE, false, 64);

void setup()
 {

Serial.begin(9600);
matrix.begin();

} 
void loop() 
{for(int v=0; v<10; v++){
  if (Serial.available()>0){
                    if(v>1){
                            v=0;
                            input=Serial.read();
                            variable+=input;
                            {
                            matrix.setTextSize(1); 
                            matrix.setCursor(0, 8);  
                            matrix.setTextColor(matrix.Color333(0,0,255));
                            matrix.print((variable));
                            }
                    
                                                if (input=='1'){
                                                                 b = 1;
                                                } 
  
  
}
}
//Serial.print(variable);
if (b == 1){
 NUEVO_MENSAJE();
}
}
}

De antemano muchas gracias por su ayuda.

De no mediar problemas esto debería funcionar bien.

Cuando presionas ENTER en tu monitor serie toda la cadena de caracteres o String será enviado al panel RGB

#include <RGBmatrixPanel.h>

//#define CLK  8   // USE THIS ON ADAFRUIT METRO M0, etc.
//#define CLK A4 // USE THIS ON METRO M4 (not M0)
#define CLK 11 // USE THIS ON ARDUINO MEGA
#define OE   9
#define LAT 10
#define A   A1
#define B   A2
#define C   A3
#define D   A4

String txtMsg = "";  
char s;

RGBmatrixPanel matrix(A, B, C, D, CLK, LAT, OE, false, 64);

void setup() {
  Serial.begin(9600);
  matrix.begin();
} 

void loop() {
   
    while (Serial.available() > 0) {
        s = (char)Serial.read();
        if (s == '\n') {
            Serial.println(txtMsg); 
            presesntar(txtMsg);
            txtMsg = "";  
        } else {  
            txtMsg +=s; 
        }
    }

}

void presesntar(String tmp) {
  matrix.setTextSize(1); 
  matrix.setCursor(0, 8);  
  matrix.setTextColor(matrix.Color333(0,0,255));
  matrix.print(tmp);
}

Cuando tengas un problema asi, separa las cosas.
Olvida el panel RGB que ya sabes funciona y concéntrate en tu problema del monitor Serie.

Si buscas en Google: Arduino read String encontrarás cientos de ejemplos.

Hola, muchas gracias ya probé el código y observe un cambio notorio se mantiene sobre el mismo lugar solo note que el texto anterior sigue impreso en la pantalla y nuevo texto sobre ese mismo.

No se si la librería tenga un comando especial para borrar el anterior pero es cosa de que no lo encuentro.

Escribí "HOLA" Y "CIUDAD"

Trabajalo tu con los ejemplos.

Muchas gracias por la ayuda, ya lo pude solucionar pero lo que me sujeriste hacer para que apareciera el texto en el mismo lugar me ayudo bastante, dentro de poco hare un video para youtube de como trabajar esa pantalla en especial ya que no hay mucho contenido en español al respecto. Gracias!!