In an ideal world, we’d all wake up naturally at the right time of day. But circadian rhythms vary, and sometimes you need a little extra “persuasion” to get up. And I think the traditional alarm clock is too forgiving.

So I made my own.

No snooze button, no off button, a backup battery in case you try to unplug it, no way to remove the battery without a hex key, and deactivating it requires hitting a remote key fob. You also can’t change the alarm or even the date or time without hitting the remote switch. And the key fob should be hidden as far away from your bed as possible. Obviously this is more effective the larger your home is.

Yeah, it’s pretty draconian. Not for everyone.

Details

The microcontroller is an RP2040 and the code is written in CircuitPython. I found CircuitPython simultaneously really convenient and extremely limiting.

The github repo is here if you want to learn more. It’s fully open source. Electrical (KiCAD), mechanical (STEP), and software.

How It Started

At first, this was just something I wanted for myself, and so I cobbled something together out of parts I had lying around. That was the V0. Then I decided to do a PCB, and made the V1. The V1 had a bunch of issues, but the V2 functioned the way I wanted it to.

The prototypes lined up in chronological order.

I liked the V2 so much that I wanted to share the design with my friends. So I decided to make 10 of the V3, with the intent of giving them out to people I knew.

This turned out to be a lot more trouble than I had anticipated.

The Troubles

I didn’t want to deal with JLCPCB’s annoying MOQ requirements for PCBA–they were going to force me to buy way more parts than I needed (and their weird consignment system seemed like overkill)–so I only had the boards ordered with the “basic” components assembled (mostly just resistors and caps). This ended up being the worst of both worlds. I was ordering PCBA but also tediously soldering every board. Would not recommend.

My hot plate setup.

Then it turned out I had accidentally shorted one of the pushbuttons in the schematic. This had to be fixed with Kynar wire on all ten V3s. You can see that in the open shot below.

It’s the red wire.

Next, I found out that one of the battery holders had arrived with the positive and negative terminals on its connector reversed. What the heck! I didn’t discover this until I had already plugged it in. Fortunately, the design includes reverse voltage protection.

This really puts Six Sigma into perspective.

Finally, when I thought the ordeal was over, half my RF receivers bricked on the same day. It turned out that they were knockoffs–I had naively ordered them from AliExpress rather than the official website. They don’t even look the same. Outrageous!

Knockoff compared to the real deal.

Epilogue

Well, for all the trouble I ran into, I finished it in the end, and learned a great deal too. And now I get to ship these out to people.

9 Wakers for 9 friends, and one Waker to rule them all…