Matriz led 8x32

El scroll da ese tiempo porque Arduio no puede hacer varias cosas a la vez, asi que hasta que no haya terminado de hacer el scroll completo, es decir, mostrar todas las letras y que la última haya desparecido de la pantalla, entonces terminará la función de scroll y continuará ejecutando el código.
Para evitar eso, puedes hacer lo que he hecho en el código que te he puesto aquí abajo, meter las dos variables en una misma cadena de texto, entonces si que se mostrarán seguidas sin que tenga que desaparecer completamente la primera para que aparezca la segunda. (mira que buffer lo tengas creado con tamño suficiente para guardar la cadena que te he puesto).

También he comentado el código, aunque nunca he usado matrices de leds y al faltar parte del código hay cosas que no puedo asegurar que sean así, pero que supongo que lo serán más o menos. He modificado alguna cosa para que quede más claro el código, por lo que si he roto algo me dices :grin:

void scrollText(){
  int x = X_MAX;
  int charsFinished = 0;
  char visible[11]; //vector con las letras que son visibles en la matriz
  int i = 0;
  unsigned long lastUpdate = 0;


  for (int n = 0; n < 11; n++){      //llenamos el vector para poder empezar a escribir
    visible[n] = banner[n];
  }
  //escribimos el finalizador de cadenas, para saber cuando se acaba el texto
  visible[11]='\0';

  while(charsFinished < strlen(banner)){              //mientras existan carácteres
    while (millis() - lastUpdate < SCROLLSPEED);      //esperamos a que pase el tiempo
    //guardamos cuando hemos realizado la actualizacion
    lastUpdate = millis();
    //renderiza el texto y con 'x' aplica el desplazamiento 
    //de la letra para realizar el efecto de movimiento
    drawString(x, 0, visible);
    //actualizar la matriz de leds
    disp.syncDisplays();                      
    //desplazamos 1 led las letras
    x--;

    if (x <= -6){                        //cuando acabemos una letra (¿letra = 7 leds?)
      charsFinished++;                   //siguiente carácter
      x = 0;
      //quitamos el primer caracter y ponemos el siguiente al final
      for (i=0;i<11;i++){
        visible[i] = banner[i + charsFinished];
        if (banner[i+charsFinished] == '\0') break;
      }
      visible[11]='\0';
    }
    //limpiamos la matriz de leds
    disp.clear();
  }
}
void loop() {
  lm();
  sprintf(banner,"Interior: %dC   Exterior: %dC", temperatura, temperatura2);
  scrollText();
}

Un saludo