MicroSD card breakout board (PID: 254)

Post here about your Arduino projects, get help - for Adafruit customers!

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
mjsadaway
 
Posts: 9
Joined: Thu Jun 13, 2013 2:45 am

MicroSD card breakout board (PID: 254)

Post by mjsadaway »

We've tried this with both an Arduino Uno and a Mega and found that it works only intermittently.

CardInfo (with SS = 10 for the Uno and 53 for the Mega) most often gives an "Initializing SD card...initialization failed. Things to check:" error but sometimes works O.K. In fact, once it works, it tends to keep working, and once it fails, it tends to keep failing. (We suspect that it works only when Murphy's attention is elsewhere.)

It switches between working and not working on its own without any changes to the wiring.

We've tried (1) several different freshly-formatted microSD cards, (2) disconnecting the rest of our circuitry so that only the card reader is connected to the Arduino, (3) reseating the microSD card, (4) etc., etc. to no avail.

Do you think we have a defective board?

Is there anything else we should try?

Thanks.

Mike

User avatar
adafruit_support_bill
 
Posts: 88037
Joined: Sat Feb 07, 2009 10:11 am

Re: MicroSD card breakout board (PID: 254)

Post by adafruit_support_bill »

Sounds like an intermittent connection somewhere. Post a photo showing your soldering and connections.

User avatar
mjsadaway
 
Posts: 9
Joined: Thu Jun 13, 2013 2:45 am

Re: MicroSD card breakout board (PID: 254)

Post by mjsadaway »

Yes, the wiring was a problem. We used your short 4.5" jumpers as shown in most of your tutorials. Even though they passed our continuity tests, they were apparently not suitable. Then we noticed that in your tutorial for the card reader you used the shortest possible solid wires. As soon as we did the same, the card reader worked perfectly.

Next we reconnected the rest of our circuitry, including an LCD (a Seeed V2.0 touchscreen) that also uses an SPI interface. That caused the card reader to fail. Apparently the card reader and display can't share the SPI bus.

We solved this problem by using the nice feature of your SD library that lets you specify all of the SPI pin numbers for the card reader.

User avatar
adafruit_support_bill
 
Posts: 88037
Joined: Sat Feb 07, 2009 10:11 am

Re: MicroSD card breakout board (PID: 254)

Post by adafruit_support_bill »

Apparently the card reader and display can't share the SPI bus.
Not sure about the Seeed display, but you can usually share the SPI bus if you specify a different CS for each device. Many of our TFT/LCD display breakouts have integral uSD card holders and we wire them that way.

User avatar
mjsadaway
 
Posts: 9
Joined: Thu Jun 13, 2013 2:45 am

Re: MicroSD card breakout board (PID: 254)

Post by mjsadaway »

They don't play nicely together with separate chip selects. We've ordered a couple of Adafruit touchscreens to see if they work better and are faster than the poky Seeed display.

Thanks again for your help.

johnbarr
 
Posts: 8
Joined: Wed Sep 25, 2013 2:25 am

Re: MicroSD card breakout board (PID: 254)

Post by johnbarr »

I think I have a broken micro SD card reader, the card detect (CD) function.

With the Arduino off and the wire from CD to the Arduino digital input pin disconnected, with the card inserted and with it out, I measure the continuity from the pin on the reader to the GND pin and to the 5V pin. No connection to either pin with the card either in or out.

With the Arduino on and the wire from CD to the Arduino digital input pin disconnected, with the card inserted and with it out, I measure the voltage from the CD pin on the reader to the GND pin on the reader always at around 2mV with the card either in or out. (The 5V pin has 4.8V.)

(Of course, the reader detection fails when the pin is wired to the Arduino, either.)

I am using a solderless breadboard.

Do you conclude it is broken? Is there something mechanical on the reader that could be prodded--a contact?

User avatar
adafruit_support_bill
 
Posts: 88037
Joined: Sat Feb 07, 2009 10:11 am

Re: MicroSD card breakout board (PID: 254)

Post by adafruit_support_bill »

The card detect switch mechanism is circled below. There is an NO and an NC contact. Check to see that it opens & closes with card insertion. Also check continuity from there to the pin.
Attachments
Capture.JPG
Capture.JPG (83.24 KiB) Viewed 1515 times

johnbarr
 
Posts: 8
Joined: Wed Sep 25, 2013 2:25 am

Re: MicroSD card breakout board (PID: 254)

Post by johnbarr »

1. My reader seems to have only the normally closed (NC) Card-Detect contact (hereinafter referred to as a "finger"). The finger is what is failing. When I remove the card and manually depress the finger, contact is made and the SD pin is grounded.

2. The code sets pinMode to INPUT_PULLUP, so (ONLY) when I poke the finger down after removing the card, the Arduino digital I/O pin is pulled low and the absence of the card is detected. But I shouldn't have to poke the finger down.

3a. The finger is also associated with locking the card in when you push it in.
3b. I tried bending the end of the finger down. It bent but does not result in automatic grounding when the card is removed.
3c. I tried bending the shaft of the finger down. It bent but does not result in automatic grounding when the card is removed. This destroyed the snap which keeps the card in the holder.

4. We have four (4) of these readers. Only one works. One is soldered in place. Unfortunately this is not the one with the working Card Detect. (For this one, we will have to modify the code to ignore CD.) The other three fail grounding when the card is absent or removed. Can you send us pre-tested replacement card readers (3)?

johnbarr
 
Posts: 8
Joined: Wed Sep 25, 2013 2:25 am

Re: MicroSD card breakout board (PID: 254)

Post by johnbarr »

Incidentally, thanks much for your prompt reply!

johnbarr
 
Posts: 8
Joined: Wed Sep 25, 2013 2:25 am

Re: MicroSD card breakout board (PID: 254)

Post by johnbarr »

Our cards are different from that imaged in your reply. (Which card is current?) ("Which switch is which?" wicked witch of the west).
Attachments
Our microSD card.gif
Our microSD card.gif (42.41 KiB) Viewed 1470 times

User avatar
adafruit_support_mike
 
Posts: 67391
Joined: Thu Feb 11, 2010 2:51 pm

Re: MicroSD card breakout board (PID: 254)

Post by adafruit_support_mike »

The switch will be the little paddle-thingy toward the bottom of the photo you posted.

It looks like the normally-closed connection is right out at the open end of the card holder.. you can just see the indication of a gap in the photo. The normally-open connection will be at the square at the end of the metal tab.

johnbarr
 
Posts: 8
Joined: Wed Sep 25, 2013 2:25 am

Re: MicroSD card breakout board (PID: 254)

Post by johnbarr »

1. I thought I had made clear in the post that I knew
"The switch will be the little paddle-thingy toward the bottom of the photo"
(because a small poke on the finger caused it to make contact).

2. I did not void the warranty on two other of our cards which fail the same way.

3. You are no longer being helpful or prompt or complete in your replies. Why are the d__n things failing? Arrange to send replacements.

User avatar
adafruit_support_rick
 
Posts: 35092
Joined: Tue Mar 15, 2011 11:42 am

Re: MicroSD card breakout board (PID: 254)

Post by adafruit_support_rick »

Hi - I'm jumping in here, trying to understand what the problem is.

First, I believe the paddle thingy is the spring latch, not the card detect.

The card detects are the two fingers at the end of the card socket.

These are normally closed, and they open when you insert a card. I just checked this out with a multimeter. With no card inserted, you should have continuity between the metal card socket and CD. With the card inserted, you should have no continuity. Also, with the card inserted, you can press down on one of those fingers to restore continuity to CD.

So, if I understand you correctly, you are not seeing continuity between CD and ground with the card removed?

You should always see continuity between the metal card socket itself and GND. Do you see that?

johnbarr
 
Posts: 8
Joined: Wed Sep 25, 2013 2:25 am

Re: MicroSD card breakout board (PID: 254)

Post by johnbarr »

Wow! That was prompt. Thanks. I'm getting out my reader, magnifier, and multimeter even as we speak.
That is great information, about the two fingers at the end being the CD contacts.
Sorry, I do not have one of our broken cards with me. (On the reader that I have, the case is ground and CD shows up as grounded when the card is out.) So I am wondering how those fingers (on the other cards) can be failing to make contact when the card is removed!

I'll have to "call you back".

User avatar
adafruit_support_rick
 
Posts: 35092
Joined: Tue Mar 15, 2011 11:42 am

Re: MicroSD card breakout board (PID: 254)

Post by adafruit_support_rick »

You might also want to check your breadboard connections and jumper wires for continuity.

Locked
Please be positive and constructive with your questions and comments.

Return to “Arduino”