Enviar datos al monitor serial con SD

Bien. Vamos por partes.
En primer lugar, al final del código puse el de la funciónn freeRam. Intenta hacer un seguimiento de la memoria libre, a ver si es muy escasa o va reduciéndose en cada ciclo.
En segundo lugar, vamos a intentar aislar el problema. Vamos a sacar del código la impresión en papel, dejando sólo la parte de la pantalla, a ver si se atasca la ejecución o no. Si no se atasca, podremos achacar el problema a la impresora. Si se sigue atascando, tal vez el problema venga por la SD.