
QR 21: The story behind a scannable QR code watch face packed with 4 concurrent time formats (Free promo codes)
I know a QR code watch face sounds a little ridiculous, but as an independent developer, I look for unusual technical challenges. I wondered if it was even possible to create an authentic, scannable QR code that updates every single minute, living entirely within the strict limits of the modern Watch Face Format.
Instead of taking the easy path by using a single QR code that routes the phone to a website showing the current time, I wanted the QR code itself to be an actual timepiece and encode the time itself. Getting a Wear OS watch to dynamically render a brand new, scannable code every 60 seconds was a technical and intellectual challenge. Preventing battery drain, memory bloat or lag took a ton of trial, error, and deep optimization.
Once I engineered a way to make it work, the irony hit me. The phone you use to scan it already shows the time, making this watch face rather pointless. I thought about leaving it as a joke watch face, but instead, I decided to lean heavily into the geek factor and see how far down the rabbit hole I could go.
I thought I would share a bit about the engineering and design hurdles behind bringing this watch face to life:
QR Time: Getting that dynamic QR code to serve the exact time payload every minute of the day without melting the watch was the biggest hurdle. It supports both 12H and 24H modes and packs into a lightweight download under 1.5MB.
Unix and Binary Time: I wanted to layer in other unconventional clocks. I added a Unix clock that counts the number of seconds elapsed since January 1, 1970. Then, I added a binary clock. To give humans a fighting chance to read it with less effort, I built an Assist Mode that illuminates the actual numeric bit values (1, 2, 4, 8, 16, and 32) when a circle is active.
Eating My Own Dog Food: I test all my watch faces by living with them, day in and day out. When I took QR 21 into the real world, I have to admit, I found it incredibly frustrating. When you are in a rush, you cannot stop to calculate binary on the fly and I didn't have time to scan the code on my wrist. I tried a few things, including an analog-type mode that used arcs instead of hands. Ultimately, I designed a stacked, ultra-tall digital clock. It looks like graphic framing on the edges of the dial, but it provides instant readability when you need it and it's not the main focus of the watch face on first glance.
AOD Battery Limits: I originally wanted the QR code visible at all times. However, Google has strict power limits for Always On Displays, plus I wasn't convinced that having the QR code visible at all times was worthwhile. To protect battery life, the ambient QR code had to go. Instead, I designed the tall digital numbers to smoothly animate from the edges into the center for a clean, power sipping ambient display.
Hex Battery and Customization: Standard battery percentages were replaced with hexadecimal values. Plus, the QR code itself has 7 different styles (including Grid, Circles, and Hearts) and 28 color themes.
It was a fantastic coding exercise that pushed me to redefine what a functional watch face can be.
Check out QR 21 yourself. To grab a FREE code, head over to the link below. Read the deep dive into QR 21, or simply scroll to the bottom to get your code, while supplies last.