An alarm clock with vibration, battery monitoring and induction (wireless) charging capabilities. Buttons available to set the time/alarm, turn off OLED and reset. This device is meant for my friend's birthday gift.
As you can tell from the name, this is the second version. It has been slightly streamlined compared to the first.
More pictures during the assembly/testing phase at the end.
- Microview with 64x48 OLED screen (based on ATmega328P chip). Bought during its Kickstarter campaign.
- Chronodot v2.1 Real Time Clock (based on DS3231 temperature compensated RTC crystal)
- Adafruit PowerBoost 500 Charger
- 3.3V voltage regulator (LD1117V33)
- 4x button switches (1 switch as reset button)
- Pololu DRV8833 dual motor driver
- 500mA Qi wireless receiver module
- 10mm vibration motor
- 4400mAh Lithium battery
- 1x half-breadboard
- 4x mini-breadboard (2x8 points)
- Translucent case
This schematic only represents the logical connections I made. The physical connections differs due to space issues. Closest components used as Fritzing does not have them.
- MD030A as DRV8833 motor driver. (Pin 6 on the Microview is connected to the sleep pin on the DRV8833.)
- RTC module as Chronodot
- The battery is a cylindrical style 4400mAh one.
##Differences with version 1 (V1)
- No more pull-down resistors for the switches. I use the internal pull-up resistors of the Arduino by setting pinmode to INPUT_PULLUP.
- Battery capacity: The battery size was an afterthought in V1. The battery size is now more than 4x larger.
- Power consumption: Reduced by putting the Arduino to sleep and only waking via alarm interrupts from the Chronodot or button press. Even if alarm is enabled, current use is 34mA with display on and 16mA when in sleep giving battery life at approximately 5 and 11 days respectively. (See pictures below)
- The components here now run at 5V levels instead of 3.3V previously as that is the output of the PowerBoost charger even though this may not be entirely efficient. I can't use the battery output directly as that value can drop below 3.3V.
- The Pololu DRV8833 motor driver is powered behind a 3.3V regulator as 5V is too high for the 10mm vibration motor.
- Display the temperature of the Chronodot.
- Qi wireless charging. Frequent plugging in and out of the micro-USB cable may wear-out/damage the connector. Wireless charging is convenient too!
- Removed speaker as it is rather soft. Even the vibration motor is louder than the speaker!
- The Analog to Digital Converter (ADC) of the Microview is rather unstable. As the battery voltage is retrieved via the ADC, I had to do a running average to get a stable value to display.
I use the very nifty adjustable voltage generator to simulate a battery at different voltage levels to verify the battery percent readings.
Adding a wireless power receiving capability is just as simple as adding a receiver pad. Why didn't I consider this earlier?
##References and libraries