SOLUCIONADO: Captura datos software serial

Tengo tres teorías:

  • Estas imprimiendo un unsigned long como un unsigned char.
  • Quizá la función strtoul está dando resultados inesperados, entonces debería volver al sencillo atol (ahí ahora solo se puede contar hasta 2 GB).
  • Si intentas hacer GPRS.read() después de llamar a TAMANO_ARCHIVO, te puede dar resultados inesperados también. Recuerda que en la respuesta también viene el contenido del archivo.