I'm a pretty light sleeper - I wake up pretty often during the night and sometimes have trouble going back to sleep, so I'd like to be able to know what time it is to see whether or not it's worth trying to fall back asleep. To check the time, I have to basically force my eyes open to check my phone, which more often than not is still on full brightness from the previous day.
The goal of the No-Eye Clock project is to provide a mechanism for 'reading' the time without having to look at it.
I recently ordered my revision 1 PCB, and got it back yesterday. With a few minor tweaks to the hardware and software, the system worked great on the first try!
I forgot to add load capacitors to the 32.768 MHz RTC crystal. The particular crystal I had purchased specified a 12.5pF capacitor. The closest I had to this were 10pF ceramic caps, which I surgically inserted between each lead and a nearby ground pin. The mismatched caps will probably change the crystal's frequency slightly and cause the clock to run a little slow or fast. I'll keep an eye on this.
Removed two mosfets that were to have formed a half H-bridge for the haptic motor. In testing between when I ordered and received the PCB I didn't feel any difference between passive and electrical braking of the motor.
Some pin changes were needed in software from the breadboard version.
My breadboard version used a different I2C RTC - the DS3231 instead of the 7940N on the PCB. A 7940N library dropped right in and worked like a charm.
There are definitely a few improvements to make on the next revision. Now that I am confident with the circuit I'm going to try to reduce it's footprint, that means replacing the massive DIP-28 and beeper packages with smaller, probably surface mount parts. I'm also going to implement the battery backup on the RTC. I also have plans for other features, such as a clap detector circuit or a low-energy conversion so that the circuit can be used with batteries (perhaps as a watch).