Problemas migrando de SD.h a sdfat.h

Hola, una vez terminado mi scketch de discriminador de llamadas telefónicas, he decidido que al usar una librería antigua y sin soporte, la SD.h, lo mejor era migrar a la librería sdfat.h . Una vez completada la migracion del scketch y tras eliminar errores de compilación, veo que al funcionar el scketch corrompe las tarjetas SD (uso varias de 1 gb), volviéndolas no formateables (error de MBR dice sdformatter.ino) en arduino a medida que las uso. Luego veo que funcionan perfectamente en un PC con windows. Pero no hay manera que mi proyecto las vuelva a reconocer. He leído algo sobre esto y parece que es debido al SPI, que arduino no puede gestionar adecuadamente con sus interrupciones, cuando estas son pedidas por otros devices, como en mi caso es un LCD, y un puerto serie virtual myserial. Quizás la solución pasa por usar el puerto serie 0,1 de arduino y no usar el serie virtual.

Si funciona con la SD.h, ¿para qué complicarse cambiandolo?. La librería SD.h, es una de las librerías oficiales de arduino, así que, eso de que "sin soporte", no sé yo.

Yo uso la librería SD.h y no tengo ningún problema.

Las SD que se te han corrompido, prueba a formatearlas con:

No te metas con semejante trabajo... excede la capacidad del 99% de los aqui presentes (incluido yo mismo) hace mucho pasé por lo mismo trabajando con un Rabbit y me di con la pared y quedé pesimo con el cliente. Luego encontré la librería y lo solucioné pero perdí mucho dinero.
Si es por hobby bien, pero de lo contrario, acepta el consejo de camerloco y usa SD.H.

Hola a todos, por fin he conseguido hacerlo que funcione todo a la perfección,ya he migrado el sketch de mi discriminador de llamadas a SDfat.h . El código para SD.h y el de SDfat.h están en la sección de Proyectos.
Gracias a todos.

Perdonadme pero no he explicado el porqué de los fallos de la librería SDfat al migrar desde SD. En realidad el problema era el mismo en SD que en SDfat, el empleo de búfferes de tamaño inadecuadamente grandes para almacenar los char manejados, lo cual originaba un proceso de corrupción de datos que afectaba a SDfat en mayor medida que a SD. Eso y el no asegurarme del adecuado cierre secuencial de los ficheros abiertos para lectura y/o escritura, originaban la mayoría de los problemas. Luego la utilidad SDformatter hizo el resto para recuperar la SD a su estado correcto.