Wemos D1 Mini Data Logger and RTC Shield

Hello,
I am totally new to this and could not find exact results for my question.
I have bought an Arduino UNO and this data logger shield:
grafik

UPDATE: I wrongly thought it functions exactly as the WeMos D1 Mini board which is an MCU like Arduino UNO:


See answer below from docdoc.

And connected it (written in red on the screenshot)
It has the DS1307 chip, it can log data to SD card and it can be used as RTC clock.

Now I don't know what to do next to get it to running.
I tried it with an example program from DS1307RTC (ReadTest) but the logging messages stop when running the loop() in the serial console:

#include <Wire.h>
#include <TimeLib.h>
#include <DS1307RTC.h>

void setup() {
  Serial.begin(9600);
  while (!Serial) ; // wait for serial
  delay(200);
  Serial.println("DS1307RTC Read Test");
  Serial.println("-------------------");
}

void loop() {
  tmElements_t tm;

  if (RTC.read(tm)) {
    Serial.print("Ok, Time = ");
    print2digits(tm.Hour);
    Serial.write(':');
    print2digits(tm.Minute);
    Serial.write(':');
    print2digits(tm.Second);
    Serial.print(", Date (D/M/Y) = ");
    Serial.print(tm.Day);
    Serial.write('/');
    Serial.print(tm.Month);
    Serial.write('/');
    Serial.print(tmYearToCalendar(tm.Year));
    Serial.println();
  } else {
    if (RTC.chipPresent()) {
      Serial.println("The DS1307 is stopped.  Please run the SetTime");
      Serial.println("example to initialize the time and begin running.");
      Serial.println();
    } else {
      Serial.println("DS1307 read error!  Please check the circuitry.");
      Serial.println();
    }
    delay(9000);
  }
  delay(1000);
}

void print2digits(int number) {
  if (number >= 0 && number < 10) {
    Serial.write('0');
  }
  Serial.print(number);
}

Is there any good tutorial that I could follow? I just find it for slightly different setups...

Here is the screenshot that shows that the program stops running after the first logging output:

I'm confused... On that picture I see a WeMos D1 Mini with an ESP8266, it isn't a "data logger shield", and doesn't have either any DS1307 or any SD card slot in it. So there's no RTC.read() thus no output...

Thats true, but it looks like the very same and is written on there. This is what I have:


Ok, so please always give us the correct onformation (and pictures, please change it on your first post to avoid future users confusion).
The pins are labeled the same, but the first is the WeMos D1 Mini board (the MCU, like "Arduino UNO"), the latter (the one you have) is a WeMos D1 Mini shield, so even if the pins are labeled exactly the same they are intended to be inserted over the WeMos D1 mini board (like the Arduino shields are labeled with the same you have on Arduino UNO).

If you need an RTC+SD shield for Arduino UNO you should better buy one of the numerous RTC+SD Arduino UNO shields like THIS.

I'm sorry, I never used a WeMos D1 shield with Arduino and never used the WeMos D1 RTC shield, so I don't know how and if it could work with an UNO.

1 Like

My guess would be that as the WeMos D1 RTC shield is designed to operate with the WeMos D1, which, once I get mine out of the packet and use it (!!!), is a 3.3v device. You would need some level converters in order to use that board with an UNO (a 5V device).

However, once you have messed about buying the converters and wired them in, then you could probably buy an RTC & SD shield for the UNO as @docdoc says.

A quick google search for "UNO RTC SD shield" shows that there are several out there.

1 Like

Or buy a WeMos D1 to go with the shield you have :slightly_smiling_face:. Unless you need the Arduino for other reasons. The ESP8266 is a much more capable processor and the price would be similar.

1 Like

Alright thank you guys for the detailed answers!
Yeah, probably that's exactly the problem and explains why the two boards don't fit :sweat_smile:

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.