Battery powered and SD reader

Hi All,

here again with another issue.

I completed the project on a breadboard and I proceeded to mount everything in a small BOX.
The project consists of an MKR WiFi 1010, an OLED IIC 128x32 display, three button with some resistance and a micro SD reader as in the image. USB powered, everything works fine, but when I switched to battery power, the SD card is not read. Initially, I used a 3.7 Volt 1100 mA lithium battery, thinking that the amperage was not enough, I replaced the battery with one with the same voltage, but 2100 mA amperage. Unfortunately, nothing has changed, and since the serial monitor is not available, I am unable to retrieve debug information at the moment.
I'm working to see any debugging info on the OLED display which, on the contrary, seems to work fine.
In the meantime, can you give me guidance on any known battery powering SD issues?

Thanks for your help and support.



My eyes are not working to good and I cannot see your schematic. I will take a SWAG and check your voltages and be sure they are correct.

Post a few images of your project all wired up and not working and a schematic.

Do consider that if it worked on the breadboard but not in the box, something may not be connected correctly having to do with the SD card module.

That SD card adapter is designed to run off 5 volts, and has it's own 3.3v regulator and buffer to interface between the 3.3 volts of the SD card and the 5 volt logic of an arduino. Not sure if it will function properly with 3.3 volt logic, and looking at the documentation of the MKR Wifi 1010 it does not look like you will have a 5 volt source when running from battery.

Thanks for your answer @david_2018 , in this case I think I don't have many alternatives.
Unfortunately my knowledge of electronics goes back many years, so my memories are clouded. Can you advise me if I try to use a more powerful 5 volt battery anyway, hoping that it will also be able to power the SD? If I remember, it is possible to power a device with a higher voltage, within a maximum limit.

Thanks anyway for the very quick reply.

Thank also to you (@Idahowalker and @gilshultz ) for your answers.

The device is mounted correctly even in the BOX, as if powered with the USB in the box it works correctly. I don't have a circuit diagram, I can post the images of the breadboard and BOX. I try to prepare an outline schema in the next few days and post it.

OLED Display connection

Buttons connection

SD Reader connection


into the BOX

final BOX

Hope this can help to identify the issue!

Thanks again!

Sure you do. You can buy a breakout board with just the SD card adapter on it without any additional electronics that are needed when using a 5v system.

This is one that Sparkfun sell:

Thank you @markd833,
I'm documenting, the device seems to work at 5V but has a high tolerance and therefore it seems to be able to work even at low voltages such as 3 Volts. What escapes me and I have not yet found is if I can use the same code with the Arduino SD.h library or if I have to rewrite it (but I understand that it is the second case, using the "SDFileSystem" library). Even the connections seem to me to change considerably and this would confirm the statement above that I will have to change the code.

Thanks for the suggestion, if you can give me some clarification on my doubts I would be grateful, in the meantime, I continue to read up and eventually I will proceed with the replacement, in case some other lower impact solution does not come up.

Thanks again.

Use the SD card adapter as suggested by @ markd833

The one you are using is passing 5V logic signals across to a 3.3V logic Arduino, not ideal perhaps ?

The SD breakout in reply #7 is what you need for a 3.3V arduino, the only purpose of the additional circuitry on the board you currently have is to interface the 3.3V logic of the SD card to an Arduino that uses 5V logic. You should not need to change any of the code, there is no difference in the wiring to the SD card, only the lack of the 3.3V to 5V buffer.

Additionally, the SD adapter board you currently have suffers from a problem, the MISO line is not properly released when the SD card is not being used, which causes problems if you have any other devices using the SPI bus.

Ok, thank you very much @david_2018, I will try to replace the component you suggested, I hope to be able to find it (I'm in Italy) and receive it soon to give you updates. Thanks again to those who replied to my post. If anyone else would like to add more or suggest alternative solutions it is really appreciated.

I can confirm you that the sd module you where trying to use doesn't works with it's VIN @ 3.3v
so, if you are not USB powered the arduino's 5V pin will not deliver 5V... but close to 3.3v
if you use a 3.3v sd module instead, you can use the 3.3 v output of arduino.
this is better also because in your 5V SD module there is a 3.3v regulator to lower the 5V input.
that means you are loosing some little bit of current that is dissipated as heat by the module's own voltage regulator.
the module suggested by @markd833 is designed to be used directly with the 3.3v pin of arduino.
do not connet this module to a 5V output as you may burn it when arduino is powered by USB

Realy thanks @Ale-X, in particular for the last suggestion about the 5V pin for the alternative device, appreciated.

1 Like