Project Complete

A project log for Prometheus Alarm Clock

Possessing both the beauty of the bygone analog age and the convenience of cutting edge tech, Prometheus is the ultimate alarm clock!

Andrew LeeAndrew Lee 03/22/2017 at 23:340 Comments

Dear readers,

If you have been following, thanks for patience through my hiatus through my busy school schedule. I took it upon myself to finish this project to a usable state with all the main components finished. In this usable "prototype," I have added most of the main features I wanted:

1) usable web interface to control the clock

2) program to selectively play sound on my soundsystem and or run the bed vibrator (via GPIO) based on the config files that I modified using the web interface

3) Reliably keep time (via NTP rather than a hardware clock module)

Hence, all these components are present and I can say that at least the alarm clock portion of the project is complete.

There are some portions of the projects that I hope to update and work on in the future including:

4) setting up the Pi as a Bluetooth Audio Receiver so it can both function as the Alarm driver as well as a Media Receiver so I don't have to manually switch inputs on my sound system

5) Communicating with the NCS 314 Nixie Cathode Clock to receive accurate time from NTP rather than rely on hardware as well we being able to display alarm set/snooze/unset messages to have a hardware feedback system rather than just the web interface.

I did not complete 4) because despite my efforts, setting up the Pi as a bluetooth audio receiver is combersome to say the least, and although I did get it to work (albeit temporarily), there was no consistent solution that would survive a system reboot, and all the libraries required to accomplish this (Bluez, A2DP, ALSA Audio Routing) do not work very well in harmony, and since I already have a standalone bluetooth audio receiver, I decided I will just merge the audio receiver audio out and the pi audio out into a single Mono stream using cables, then feed that single audio signal into my speakers.

With 5, I am definitely interested in completing this, but the hardware implementation (written in C by GRA and AFCH from Ukraine) is very complex in itself, and until I have the chance to sit down and really dissect the internal structure of their logic, various call patterns, and what parts are event based and which parts are sequentially executed, I have no way to implement any type of communication between the Pi and the Nixie Clock. Furthermore, this is a minimal issue since the clock itself is pretty much self contained and even contains a hardware clock module that keeps the clock accuracy within a margin of a few minutes every month. Hence, although this is something I plan to do, I believe the clock runs fine without this since the alarm control/alarm running program is completely independent from the clock display mechanism.

As an added todo, I think it would be cool to implement a virtual nixie cathode clock as the title of the web interface (possibly implemented in Javascript).

But I just want to thank everyone who has helped me on this awsome project including Hberg32, AFCH, the amazing people at SonicAlert Alarms (from which I used the bed vibrator hardware) for their insights.

Later today, I will post a video of running the Atom Alarm Clock so you can see what you can do with it.

But with that, with much love, I am signing out. I hope so see you in my next project.