/\___/\
   /       \
  l  u   u  l
--l----*----l--      _   _ _                      _           _             
   \   w   /        | |_(_) |_ ____ __  __ _ _ _ ( )___  _ __| |__ _ __ ___ 
     ======         | / / |  _|_ / '  \/ _` | ' \|/(_-< | '_ \ / _` / _/ -_)
   /       \ __     |_\_\_|\__/__|_|_|_\__,_|_||_| /__/ | .__/_\__,_\__\___|
   l        l\ \                                        |_|                 
   l        l/ /
   l  l l   l /
   \ ml lm /_/
	
kitzman's place

Watchtower Clock (#1)

embedded

Intro

I can’t count how many times a regular alarm failed to wake me up.

But I know what would work - a strobe and a dissonant sound. Powerful lights help the brain, especially during winter, to reset its circadian rhythm. When my sleep is shifted by 6-12h, -if- I manage to wake up, I use light to try to get myself back on track.

Notice the big -if-. How about I create my own clock? That will play dissonant, annoying crescendos, that will flash lights in my eyes.

    .-====- 
   /"/  |  \                                         ..        .
  /'/   1  .\               .-. -            .-   .        .
 / / `       \             --mm---.           .-  .-+
/_/.         ,\      ..  --#          +.++#+..
| |           |     ... #m..  MAGIC WAKEUP TECHNIQUES™
| |-9   o== 3-|   .m*%-%--                      . ... .          ..
|_|      \    |   .%m-m++-#.- .  .-.-.         %-m.m+.-  m.
\ \,      \  `/     . .  ++%m#.+.++m-%%% . . ...   .
 \,\       \ /                     - -.          .  . .        .      ..
  \;\,  6 . /                %#+++ .-
   \%\  |  /                ..   .m--+m.-.   ---  .
    ~~~~~~~                             .  +         .    .-

Features

So I’ve gathered up a list of features which I’d definitely like to have:

  • custom fonts
  • highly customizable and updatable alarms
  • output to connect to another board with strobes (and I’m talking about strobes which could be used as car lights)
  • ability to sync events with some SBC or my phone
  • ability to update alarms and fonts over-the-air
  • ability to flash it over-the-air (cool eh?)

Technical sketch

Since it needs to communicate, the easiest solution would be BLE/Regular Bluetooth. For alarms and fonts, an SD Card would be the most appropriate solution. Not only I can update it OTA, but worst case scenario I can plug it in my computer.

I’ve pondered a while about how to play alarms. Using a PWM and an amp, would definitely annoy me. But what’s the fun in that?… Using a sound bank seemed nice, but I wouldn’t be able to create microtonal distress. So in the end I’ve settled for a VS1011 - easy to use, configurable.

For the microcontroller unit, I’ve chose an ATMega128 for the pins and frequency.

I’m still trying to decide - should I use an LCD? Should I use an E-Paper? I guess the last one would be quite fancy but I still have to investigate how fast it would be.

Current status

My current work can be found in my Disroot git account [1].

I still have to do the power circuitry, adjust the audio codec, and decide over which display to use. The current circuit would also do with some power on/off of the peripherals (just to minimize the consumption).

At the end pictures and videos will be posted ^^.

Appendix

[1] Watchtower Clock repo