4180 Atomic Alarm Clock
Group Members:
Michael Egnor
Benjamin Lazar
Overview
In this project, our group designed an “Atomic” alarm clock. The main feature of this alarm clock is that on boot-up, the clock uses Wi-Fi to connect to the internet and receive the current time. The alarm clock also has most of the standard alarm clock features such as setting the alarm time along with a sound to indicate when the alarm goes off. Another feature of the alarm clock is that it saves the currently set alarm time on an SD card to preserve the settings through power cycles. Also the alarm sound can be changed by uploading a custom WAV file to the SD card. The alarm uses the Bluefruit app on a smart phone to connect to a Bluetooth chip in the alarm in order to control all the alarm features.
Design
The design process started with first setting up the Wi-Fi chip to interact with a web API (timezonedb.com) to get the most current time. After this was completed we than started work on the main alarm clock functionality. We first wanted to use physical buttons to interact with the alarm clock features but then decided that it would be better to use Bluetooth through the Bluefruit App to do this instead. After this was setup, we than merged the Wi-Fi and the alarm together so that on boot up, the current time would be set from the internet. After this was completed, we added a speaker to sound when the alarm went off. Finally, we housed the whole system inside a box.
Video of Alarm going off
The project's physical wiring
An example of the Alarm clock in operation
The Bluetooth interface to control the Alarm Clock
Parts
- 1 x mbed NXP LPC1768 Microcontroller
- 1 x uLCD-144-G2
- 1 x microSD Card Reader
- 1 x Adafruit HUZZAH ESP8266 Breakout
- 1 x Adafruit Bluefruit LE UART
- 1 x Wall Adapter Power Supply - 5V DC 2A (Barrel Jack)
- 1 x 2N3904 driver transistor
- 1 x Sparkfun Speaker 8ohm .5W
uLCD-144-G2
mbed | uLCD |
---|---|
VU | 5V |
GND | GND |
P9 | RX |
P10 | TX |
P11 | Reset |
microSD Card Reader
mbed | microSD |
---|---|
P8 | CS |
P5 | DI |
Vout | Vcc |
P7 | SCK |
GND | GND |
P6 | DO |
Adafruit Bluefruit LE UART
mbed | Bluefruit |
---|---|
GND | GND |
VU | Vin |
nc | RTS |
GND | CTS |
p14 (Serial Tx) | RXI |
P13 (Serial Rx) | TXO |
Adafruit HUZZAH ESP8266 Breakout
Huzzah | mbed LPC1768 | External 5V DC supply >=500MA |
---|---|---|
gnd | gnd | gnd |
TX | RX - p27 | |
RX | TX - p28 | |
V+ | 5VDC | |
RST | p26 (optional) |
Sparkfun Speaker 8ohm .5W
Speaker | |
---|---|
Speaker(+) | 5V |
Speaker(-) | Transistor Collector |
Transistor | |
Transistor Base | 330 ohm resistor -> p18 |
Transistor emitter | gnd |
Import programAlarmClock4180
Program code for the project
Future Features
- Snooze Functionality, set alarm for 5 more minutes
- Use GPS to read which time zone the user is in
- Allow the user to select different time zones
- Vibration feature for when the alarm goes off
Please log in to post comments.