Arnov Sharma
Published © MIT

DIY Digital Watch Project

Made a simple Watch using XIAO ESP32C3 paired with XIAO Expansion board

BeginnerFull instructions provided1 hour527
DIY Digital Watch Project

Things used in this project

Hardware components

Seeeduino XIAO Expansion board
Seeed Studio Seeeduino XIAO Expansion board
×1
Seeed Studio XIAO ESP32C3
×1

Software apps and online services

Arduino IDE
Arduino IDE
Fusion 360
Autodesk Fusion 360

Hand tools and fabrication machines

3D Printer (generic)
3D Printer (generic)

Story

Read more

Custom parts and enclosures

cad file

Code

code

C/C++
#include <PCF8563.h>
PCF8563 pcf;

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define OLED_WIDTH 128
#define OLED_HEIGHT 64
 
#define OLED_ADDR   0x3C
Adafruit_SSD1306 display(OLED_WIDTH, OLED_HEIGHT);

void setup() {
  display.begin(SSD1306_SWITCHCAPVCC, OLED_ADDR);

  pcf.init();//initialize the clock
  pcf.stopClock();//stop the clock
  //set time to to 31/3/2018 17:33:0

  pcf.setYear(24);//set year
  pcf.setMonth(2);//set month
  pcf.setDay(19);//set dat
  pcf.setHour(18);//set hour
  pcf.setMinut(50);//set minut
  pcf.setSecond(0);//set second

  pcf.startClock();//start the clock
  display.clearDisplay();
  Serial.begin(9600);
}


void loop() {

  Time nowTime = pcf.getTime();

  display.setTextSize(1);             //DAY
  display.setTextColor(WHITE);
  display.setCursor(0, 0);
  display.println(nowTime.day);

  display.setTextSize(1);             //Dash
  display.setTextColor(WHITE);
  display.setCursor(13, 0);
  display.println("/");

  display.setTextSize(1);             //Month
  display.setTextColor(WHITE);
  display.setCursor(20, 0);
  display.println(nowTime.month);

  display.setTextSize(1);             //Dash
  display.setTextColor(WHITE);
  display.setCursor(27, 0);
  display.println("/"); 

  display.setTextSize(1);             //YEAR
  display.setTextColor(WHITE);
  display.setCursor(34, 0);
  display.println(nowTime.year);


  display.setTextSize(2);             //hour
  display.setTextColor(WHITE);
  display.setCursor(0, 15);
  display.println(nowTime.hour); 

  display.setTextSize(2);             //Dash
  display.setTextColor(WHITE);
  display.setCursor(27, 15);
  display.println("-"); 

  display.setTextSize(2);             //minute
  display.setTextColor(WHITE);
  display.setCursor(40, 15);
  display.println(nowTime.minute);   

  display.setTextSize(2);             //Dash
  display.setTextColor(WHITE);
  display.setCursor(65, 15);
  display.println("-");  

  display.setTextSize(3);             //Second
  display.setTextColor(WHITE);
  display.setCursor(80, 15);
  display.println(nowTime.second);  
 
  
  display.display();
  display.clearDisplay();

delay(1000);
}

Credits

Arnov Sharma

Arnov Sharma

269 projects • 277 followers
Just your average MAKER

Comments