Projects

Shrek Clock

published 2021-08-26

Time is an Illusion

...or at least it's arbitrary. We use hours, minutes, seconds, etc. to measure the distance between two points in time, and because these are such a fundamental part of our lives it feels more or less like these units are analogous to time itself.

The origins of our units of time date back to the Sumerians (according to a quick google search), and since it worked reasonably well and became ingrained into our society we never changed it. That is, until now.

I Invented A New Unit of Time

Hours, minutes, and seconds have governed my life for far too long. To break free of them, I created the Shrek (not the movie, but the unit of time).

I have defined the Shrek as the time it takes to watch the first Shrek movie from beginning to end. Thus, one Shrek is 95 minutes long.

Some simple math tells us that one Shrek is ~1.6 hours, and one day is ~15.1579 Shreks. (So easy to remember!)

There are no other units (for example seconds and minutes compared to the hour) used in my new time system, which makes it much easier to understand.

I Made A Clock That Uses Shreks

There's a picture of it at the beginning of this page. It's pretty great. What's better: it synchronizes with NTP servers every 60 seconds. It's a super accurate, pretty much useless clock.

The code for it can be found here.

It's still a work in progress; I've made a working prototype using the Arduino Framework, however I want to make the final version using the ESP IoT Development Framework. The reason for this is that it's something I've not done yet and it looks kinda cool. So far I've got the NTP synchronization working, but (at the time of writing this) I still need to figure out how OLED displays work in this framework.

For hardware I'm using a cheap ESP32 board I got on Amazon, and a cheaper OLED display I found on ebay a year or two ago.

This project (like many others) has fallen into the pit of back-burnered project limbo. I made lots of progress at first, but after the novelty wore off and I got busier I got distracted by other things. It will be finished one day, but perhaps not soon.

What I've Learned

I learned a decent amount about the Network Time Protocol during this project. This is also the first project I've done using the ESP IDF framework, so I learned a lot about that.

Future Plans

Once I finish this project, I'd like to continue implementing my new unit of time. Perhaps I'll build a Shrek NTP server or something, I think that would be fun.