Welcome to EnviroDIY, a community for do-it-yourself environmental science and monitoring. EnviroDIY is part of WikiWatershed, an initiative of Stroud Water Research Center designed to help people advance knowledge and stewardship of fresh water.
New to EnviroDIY? Start here

SD Data Recording

Home Forums Other Data Loggers SD Data Recording

Viewing 5 reply threads
  • Author
    • #13303

        Hi all,

        I am trying to log data from a conductivity sensor to the SD card, for some reason it is not working. here is my code (I try to use code snippet but I could not make it look like how it suppose to be, I will try again when I am not too busy):

        #include <Arduino.h>
        #include <math.h>
        #include <Wire.h>
        #include <SD.h>
        #include <SPI.h>

        //Digital pin 12 is the MicroSD slave select pin on the Mayfly
        #define SD_SS_PIN 12

        //The data log file
        #define FILE_NAME “Conductivity.txt”

        //Data header (these lines get written to the beginning of a file when it’s created)
        #define LOGGERNAME “Mayfly microSD Card Tester”
        #define DATA_HEADER “Conductivity.txt”

        int pin12 = 12;
        File Conductivity1;
        int volta;
        float Division;

        void setup()
        Division = 0.0048875;
        if (SD.begin(SD_SS_PIN))
        Serial.println(“SD card on”);
        Serial.println(“SD card activation failed”);

        void loop()

        volta = analogRead(A3);
        float voltage = (volta)*(Division);
        File Conductivity1 = SD.open(“Conductivity.txt”,FILE_WRITE);
        Serial.println(“Conductivity = “);
        Conductivity1.println(“Conductivity = “);
        delay (1000);

        Please may everybody tell me what I am doing wrong, i would appreciate.

      • #13315
        Sara Damiano

          I think

          should be

          You also should have a

          before the last delay.

          Are you using a Mayfly? Are you using the built-in microSD card slot or the vertical adapter? What output do you get?

          Did you ever get your program in your earlier thread to write to the SD card?

        • #13335

            Yes, I am using Mayfly. I am using the built-in microSD card slot. My output I get the values in the serial monitor but nothings gets written into the SD card. The last question is kind of confusing to me, but what I am thinking is that you are asking me if I ever put the code of the SD card somewhere else in this code then yeah, but I still get nothing written into the card.

          • #13336
            Sara Damiano

              In asking about “your other thread” I meant this: https://www.envirodiy.org/topic/sd-card-recording-data-issue/

              You need to make the modifications I mentioned above. You also need to pick a file name that is less than 8 characters, ie, “cond.txt” instead of conductivity.txt. I’d forgotten about the filename issue.

              Your new code would be:

              I still recommend you use SdFat instead of SD, which would allow you to use longer filenames and to set the file timestamps. Look at the example for that library: https://github.com/greiman/SdFat/blob/master/examples/ReadWrite/ReadWrite.ino

            • #13337

                Oh… Well I decided to leave that thread for later because I wanted to focus on getting something recorded on the SD card. I see now the mistakes I did. I would change to SdFat if it makes things better, I was trying to get something to work first. The code is now working for me. Thank you very much! The Filename issue was the only thing that I did not knew.

              • #13339
                Sara Damiano

                  I’d completely forgotten about the filename issue, too. It’s definitely a “gotcha” that’s hard to catch.

              Viewing 5 reply threads
              • You must be logged in to reply to this topic.