Trabajé en un proyecto de recolección remota de datos. Si bien se suponía que el sistema debía estar conectado permanentemente a través de RF, tuvimos que manejar el caso en el que no se podían enviar los datos de RF, de Internet o por cualquier otra razón, ya que no podíamos permitirnos perder datos.
En ese momento estábamos usando un RTOS con un sistema de archivos Fat en una tarjeta PIC24 y SD. Desafortunadamente, esto no era confiable ya que en caso de pérdida de energía, podría suceder que el sistema de archivos esté dañado.
También FAT es bastante complejo de manejar con uC, especialmente cuando empiezas a tener muchos archivos.
Nuestra solución al final fue escribir los datos en bruto en la tarjeta SD, con el sector de escritura / lectura almacenado en los primeros 10 sectores de la SD con asignación al azar para evitar el desgaste repentino.
El inconveniente fue que tuvimos que usar un software especial en el modo de administración para leer los datos de una computadora, aunque era mucho más confiable que un sistema de archivos Fat, y también mucho más fácil de manejar en el PIC.
Mirando hacia atrás, probablemente ahora usaría un Linux incorporado para manejar esto en lugar de un PIC ya que ahorra mucho tiempo y dolor de cabeza. La conectividad también es mucho más fácil de manejar en un linux que en un uC, la desventaja de linux es el costo, el consumo de energía, el tiempo de arranque y la latencia de E / S según lo que haga.