SD-card-reader on seeeduino fails

Hi,

as described in another thread here my SD-card-reader works with the Arduino Uno.But my project has to run on the seeeduino (with LoRaWAN and GPS), so I moved the card-reader to this board. The board with only the reader attached does not work. Here is what the software CardInfo (from the examples) tells me:

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?

Moving everything back to the Arduino I got:

Initializing SD card...Wiring is correct and a card is present.

Card type: SDHC
Clusters: 1941014
Blocks x Cluster: 16
Total Blocks: 31056224
.......

Moving everything again to the seeeduino I got the same result as described above.

What's wrong here on the seeeduino? Can you please give me a tip.
Thanks
AugustQ
PS: yes, I've checked the wiring, it's identical to the case when it is connected to the Arduino.

this Seeduino is a very different board then Uno. It is a ATSAMD21G18 board 32 bit MCU and is 3.3 V. It is based on Zero so SPI is only on the ICSP header.

Thanks !!!

As I am new to the Arduino-world I didn't understand you tip (I'm coming from the software-side and on a different machine).

Today I looked again at your tip and also at the description of the board, found the ICSP you mentioned and connected the SD-card-reader to these pins. This is the result:

Initializing SD card...Wiring is correct and a card is present.

Card type: SDHC
Clusters: 1941014
Blocks x Cluster: 16
Total Blocks: 31056224

Volume type is: FAT32
Volume size (Kb): 15528112
Volume size (Mb): 15164
Volume size (Gb): 14.81

Files found on the card (name, date and size in bytes):

Looks better, much better.

What I'm missing are the names of the files on the SD-card.

Hmmmmm.

AugustQ

AugustQ:
Thanks !!!

As I am new to the Arduino-world I didn't understand you tip (I'm coming from the software-side and on a different machine).

Today I looked again at your tip and also at the description of the board, found the ICSP you mentioned and connected the SD-card-reader to these pins. This is the result:
Looks better, much better.

What I'm missing are the names of the files on the SD-card.

Hmmmmm.

AugustQ

does your board use SerialUSB? the CardInfo example uses Serial in the ls function

try the "listfiles" example

Hi Juraj,

yes, the code for the seeeduino uses SerialUSB. When I switched to the Arduino I changed this to Serial.

What confused me was the description I found here: Seeeduino v4.2 | Seeed Studio Wiki

Especially this sentence:

❹ ICSP: This is the ICSP connection for the ATmega328P, it is located in the standard ICSP/SPI position for Arduino Uno, Due, Mega, and Leonardo compatible hardware (e.g. shields) that may use this connector. The SPI pins in this port: MISO, SCK, and MOSI, are also connected to digital pins 12, 13, and 11 respectively just like those of the Arduino Uno.

I interpreted this as: I can (and should) use the pins 11,12 and 13 on the seeeduino. In your reply you wrote: don't use these, use the ICSP.

Ok, it looks like my problem is solved. Thanks for your tip!

I tested some other programs from the examples and everything seems to work.

AugustQ

Seeeduino_v4_2 is Uno, not your board

Seeeduino is a name like Arduino

correct. This is my board: https://m.seeedstudio.com/productDetail/2781

Confusion on my side. Please excuse.

I looked into the code of the Cardinfo-example. As it does not show the names of the files on the SD-card I found that in SdFile.cpp it uses the object Serial to output the text. For the seeeduino I need SerialUsb, changed it and now I see the same text as in the Arduino-case.

Problem is solved.

Thanks for your help and your tips !

AugustQ

AugustQ:
correct. This is my board: https://m.seeedstudio.com/productDetail/2781

Confusion on my side. Please excuse.

I looked into the code of the Cardinfo-example. As it does not show the names of the files on the SD-card I found that in SdFile.cpp it uses the object Serial to output the text. For the seeeduino I need SerialUsb, changed it and now I see the same text as in the Arduino-case.

Problem is solved.

Thanks for your help and your tips !

AugustQ

I told you that two comments back