Problema en inicializacion SD card

Estoy intentando leer el módulo microSD con un esp32. Mi problema esta en que siempre la función SD.begin me devuelve un valor falso, por lo tanto nunca se inicializa la memoria. La disposición de pines que estoy haciendo es:

GND -> pin 32
VCC -> vin (5V)
MISO -> GIOP19
MOSI -> GIOP23
SCK -> GIOP18
CS -> GIOP5

Este es el codigo es este, proble en modificar el pin del CS del módulo de la memoria pero sigue sin funcionar

#include "SD.h"
#include "SPI.h"

File archivo;

void setup() {
  Serial.begin(9600);
  delay(2000);

  if (!SD.begin(5)){
    Serial.println("Error en módulo SD");
    return;
  }

  uint8_t cardtype = SD.cardType();

  if(cardtype == CARD_NONE){
    Serial.println("No hay ninguna memoria conectada");
    return;
  }

  Serial.println("Modulo SD inicializado");
  archivo = SD.open("/prueba.csv", FILE_WRITE);
  if (archivo) {
    archivo.println("DATO");
    archivo.close();
    Serial.println("Ya leí el archivo");
  } else {
    Serial.println("Error al crear archivo");
    return;
  }
}

void loop() {
}

Ya formatee la tarjeda microSD en formato FAT32, pero aun asi no funciona. Tambien verifique la continuidad de los cables de conexión y esta todo bien.

Necesito ayuda, gracias

Esta misma consulta ya la respondí a otra usuaria en el foro en ingles ( Micro SD module is not getting recognised by esp32) y le funcionó con una corrección del código.
Son compañeros de clases?
Prueba

if (!SD.begin()){

sin el 5

Si somos compañeros jajaj ella me recomendó el foro. Ya probe no poniendo ningun argumento en la función pero sigue sin inicializar la SD. No entiendo porque no funciona si es el mismo código.

Qué salida tenés en la consola, qué mensaje imprime?

me imprime por el puerto serie "Error en módulo SD". Yo interpreto que es que la función SD.begin esta dando un falto falso y por lo tanto entra en el return.

Que significa eso, tenés realmente conectado GND de la SD al pin32?

Está conectado si pin de masa del micro.

Okay el pin32 es GND.
La proxima un esquema porque eso da lugar a que uno piense que usas un GPIO como yo lo pensé.
GND -> GND con eso basta. Todos los GND están unidos.
Listo, tema cerrado o mejor MI DUDA resuelta.
Lo único que no me gusta es que usas 5V.
Tiene regulador de 3.3V tu módulo de sd card?
Si no lo tiene conecta directamente a 3.3V el VCC del módulo.

Mira acá

Si el módulo que tengo, tiene un regulador a 3.3V. Por eso lo conecto directamente a 5V. Mido la tensión que hay entre CS y GND y es de 3.3V, pero aun asi SD.Begin() retorna un valor falso.

Volvé a formatear la microSD, te recomiendo que uses SD Memory Card Formatter (que es el soft oficial de la SD Association) en lugar de la utilidad del sistema operativo.

Por cierto, ¿de qué capacidad es la memoria que estás usando?

A tu compañera le funciona pero a ti no.
Haz una prueba, toma el módulo de ella y colócalo en lugar del tuyo.
A ver que pasa, si funciona tu módulo esta mal y si no, tal vez sea tu ESP32 y debas probar con pines custom.

definitivamente era el módulo que estaba fallado. Lo cambié y funcionó perfecto. Muchas gracias