ESP32 Based Clock

About: Passionate programmer, mainly in arduino/ESP/raspberry pi

Tutorial how to build a clock based on an esp32 with a built-in oled display, with a touch button, without any other parts, no wiring/soldering required.

Step 1: Parts & Libraries

Parts

  • An ESP32 module with a built in OLED display (Amazon)
  • A micro USB cable

Libraries

      Step 2: Code

      First of all make sure you have the esp32 package added to your board manager (follow instructions here if you don't).

      The code is on github, link here.

      Download it or paste it in an arduino sketch. Make sure to change the ssid, password and timezone.

      Select wemos lolin32 as your board and upload your code (might need to hold boot and press en buttons before uploading).

      Step 3: Done

      Now the clock should be done. To toggle date view, just touch the T1 or 0 pin on the esp.

      Improvements

      If you want to make it cooler, you can solder a wire on pin GPIO0, then attach a metal small plate/coin on the other end. Insulate the metal cover of the esp and fix the plate/coin there (with some hot glue).

      Issues

      If you have any other issues don't hesitate to leave them in the comments.

      Step 4: References

      Share

        Recommendations

        • Big and Small Contest

          Big and Small Contest
        • Toys Contest

          Toys Contest
        • Make it Glow Contest 2018

          Make it Glow Contest 2018

        4 Discussions

        0
        None
        AmielN

        1 year ago

        Hey DanielM953,

        really cool clock you made!! :)

        I've tried to set it up, like you write above, but I get this error:

        ------

        In file included from C:\Users\P50092\Documents\Arduino\esp\esp.ino:3:0:

        C:\Users\P50092\Documents\Arduino\libraries\NTPtimeESP/NTPtimeESP.h:16:25: fatal error: ESP8266WiFi.h: No such file or directory

        ------

        What ESP8266-lib are you using?

        I think, the NTPtimeESP-lib is pointing at ESP8266WiFi.h, that he can't find, even if I've installed this lib: https://github.com/esp8266/Arduino

        Do you have an idea, what to do, to get the code to work?

        Thanks in Advance :)

        error.png
        2 replies
        0
        None
        marcudanfAmielN

        Reply 1 year ago

        Yeah, sorry for that and the delay.

        The esp32 doesn't have the ESP8266WiFi.h library, it is replaced with WiFi.h.

        Download this ntp library, it should work.

        https://github.com/marcudanf/esp-ntp

        0
        None
        AmielNmarcudanf

        Reply 1 year ago

        Thanks a lot !! Now it works like a charm :)

        0
        None
        marcudanf

        1 year ago

        Also I changed the code, sorry for the past error.