CinderClock design study: open source programmable alarm clock — Endothermal Systems
‹ cd ~/work◐ themecinderclock.md
CINDERCLOCK
design study
This is a demonstration of our work process, written as the design rationale for our first product. Every decision below is here with the reasoning that produced it. If you are deciding whether to hand us a hardware project, this document is the evidence.
Also as a PDF: the 6 page executive brief for a faster read. Firmware and documentation are on GitHub.
What is this?
CinderClock, our debut product, is a multi-purpose standalone desktop clock. It is built to keep your phone away from the delicate matters of sleep and focus.
CinderClock launches on Crowd Supply. The launch list gets one message when the campaign date is set and one when it opens. Backers on the list get the launch price.
Leave this empty:
$ notify --email=<br>email address
JOIN ↵<br>Nothing else is sent to this list, and the address is not used for anything else.
Why?
After many failures of the iPhone alarm, we asked why we use our phones to wake us up in the first place. The failures had a cause. iOS carries a setting called Attention Aware Features, which quiets alerts when the phone decides you are looking at the screen. Apple separately confirmed a fault in April 2024 that stopped some alarms from sounding at all, and reports continued through 2025.
Back in the day we used phones for the convenience. As our devices got more and more loaded with unnecessary things, the convenience was replaced by burdens:
Information overload, with notifications accumulated over the night.<br>Fiddling with touch controls when you are half asleep.<br>Blue light from millions of flickering pixels hitting your eyes after eight hours of being shut.
In search of a dedicated bedside alarm clock, we found that nothing on the market was worth its money. The cheap end is crowded with trash. The expensive end sells clocks that want an app, an account, or a subscription: the Philips SmartSleep lists at $199.99 and the Loftie at $169.99, with Hatch charging $49.99 a year for its content library and Loftie $59.99 for its own. The full spectrum, from landfill ambassadors to gimmick stands, did not have a single member worth the cost with the features we wanted.
So for our first product launch we set out to make our own alarm clock.
Our goal was a standalone device that kept time, played audio, and was programmable. Programmable here means it stores user-created alarm programs and follows them automatically. Most alarm clocks, your phone app included, have very simple programming options. You can set one alarm for a specific time, have it repeat every day, and maybe follow weekdays and weekends. We feel that this is too limiting.
What if you want it to ring only on certain days of the week? Ring 2 days on and 2 days off regardless of the week? Follow your local sunrise and sunset times so you wake up with the sun? Ring for 3 weeks in a row with one week off, if you work shifts?
These are not gimmicks either. Sun following was the feature we wanted for ourselves most. Having an app do that on the phone defeats the first part of the brief. The rest are useful to the many people who never agreed to a 9 to 5.
With this in mind we got to work.
Where it started. Tap any image to enlarge.
Intentions, Constraints, Systems
Whenever we do anything, we always start with core principles. At Endothermal Systems the core principles are Intentions, Constraints, and Systems. Good intentions set you on the right path, good constraints focus your attention, and good systems get you to the destination.
The Intentions with this project were:
to take control of your sleep back from your phone<br>to make the hardware conform to your sleep needs, not the other way around
The Constraints were:
the device must be standalone, with no reliance on external entities<br>mechanical interface<br>modular design
A System is a network of methods you can run again and again. The core method we use is of the ideal outcome. Visualize an ideal outcome of whatever you hope to achieve, adhering to the rules of physics. If it satisfies you in that ideal form, then workout the details of how to get there. If, however, the solution you propose cannot satisfy you even in its ideal form, then scrap that idea altogether.
The method of ideal outcome requires you to consider every possible solution you can think of. In theory that is. List out all possible solutions to this problem, evaluate each one according to a defined scale, visualize the ideal outcome of each one, reevaluate, keep the ones that pass, scrap the rest.
If you cannot do this due to limited information, go one level below, break the problem into smaller problems. Try to define ideal solutions to those and find practical candidates for the ideal solutions. Do this until you reach the smallest atomic problem and go back up to the top level problems.
There are more nuanced ways to our System which...