Nano 33 BLE won't recognize SD cards

Hey guys, I've got an Adafruit microSD breakout board that I'm using with a Nano 33 BLE to read and write from a 2GB card. When I couldn't get any communication from the card in my program, I tried running the CardInfo example from the SD library and got the card dead/not present output:

Initializing SD card...initialization failed. Things to check:
* is a card inserted?
* is your wiring correct?
* did you change the chipSelect pin to match your shield or module?
  • The only thing I changed in the example code was the chipSelect pin from 4 to 10. All my libraries are up to date, and there are no compilation errors. The program uploads and runs fine, it just never recognizes the card.

  • I know the issue isn't with the card or the board, because both work perfectly with an original ATMega
    Nano wired the same way.

  • I don't think the issue is with the extra components (level shifter, regulator) on the Adafruit breakout because I also tried a Sparkfun Transflash breakout and that didn't work either.

  • I've tried using both PlatformIO in VS Code, and the Arduino IDE, including the latest stable and hourly builds.

  • I've tried two different computers, one running Win10 and the other Ubuntu 19.10.

I know these newer Nanos have had some compatibility issues, but just about all the other problems I've seen on google and forums have manifested with failed compiles that give error codes to go off of.

The only hint that I have of what's going wrong here is when I select the Nano 33 board in the Arduino IDE, the syntax highlighting on the SPI include statement disappears.

Anybody got any ideas?

Hello poole_party,

I have SD cards working on both BLE (Senses) and IoTs and I just upload the CardInfo sketch to my Sense and it works fine on pin 4 and 10.

I know it sounds dumb but I would recommend double or triple checking your wiring for the Nano. For example, if you are powering the SD reader from the board make sure you power it on the 3.3v pin. You could also maybe try out using a program like SD Card Formatter to properly format the card with FAT or FAT32.

Hope that helps a bit,

Thanks
Matt

Thanks for the tips Matt. Unfortunately, I've already checked all those things multiple times. Even tried switching the MISO/MOSI wiring just in case I had it backwards. I've also already used the official utility from SD to format the card.

Out of curiosity, are you using the Arduino IDE and if so, which version?

Hello poole_party,

Sorry to hear it still isn't working. I use VS + Platform IO and IDE to code. My current version of the IDE which I used to test the CardInfo sketch is 1.8.12.

Thanks
Matt