Yo por suerte he podido arreglarlo solamente acortando los cables, pero parece que ese no es tu problema.
Lo primero que haría es asegurarme que el error no está en la tarjeta, formateandola a FAT32, metiendo sólo unos pocos archivos, sin llegar a 1-2GB y nombrarlos con la extensión .gcode.
Lo segundo, intenta que todo esté configurado correctamente en el firmware, yo he tenido que descomentar la línea de mi pantalla (Smart LCD Controller) y una línea del pins.h en la que indicas que la versión de la RAMPS es la 1.3/1.4 (son iguales desde el punto de vista de los pines). Veo que acaba de cambiar la configuración de pines de Marlin y esto no se si será necesario ya, y realmente no estoy seguro de que haya influido en que funcione o no.
Yo lo que intenté para descartar que el problema estuviera en la configuración fue descargarme el firmware de la Hephestos y subirlo a mi placa, como yo uso la placa y LCD de bq y la tarjeta seguía sin funcionar pude ver que no era problema de configuración.
Por último, tengo entendido que la detección de la tarjeta SD depende de un pin en concreto, SDCARDDETECT, por lo que la placa puede saber que hay una tarjeta conectada, pero no poder leerla o decir que está vacía, como nos pasa a nosotros.
Ya nos contarás si consigues solucionar tu problema, un saludo.