LowPower Arduino Countdown Timer with HX1230 LCD

preview_player
Показать описание
Features:
- the timer is always enabled and remains ready in deep sleep mode
- low power modes used as often as possible to save energy
- 500mAh LiPo cell should last for 2-3 years depending of how often the timer will be actually used
- backlight typically is used only for 15 seconds, can be removed completely
- deep sleep counter is used in countdown mode to save energy, it is not very accurate,
can be replaced by regular sleep in case of issues
- could't decide which font should be used so finally there are 4 looks (4 fonts, 2 progress indicators)

BoM:
- Arduino Pro Mini
- HX1230 96x68 pixel LCD
- button
- buzzer or mini speaker
- 100ohm resistor - 2 pcs

To consider:
- buzzer/speaker should be connected via transistor
- lithium battery charging PCB could be considered

Timestamps:
0:00 - Hardware
0:38 - Demonstration
5:27 - Power consumption tests

Project code:

If you find it useful and want to buy me a coffee or a beer:
Рекомендации по теме
Комментарии
Автор

Awesome project
Thanks for sharing and keep it up...

steveb
Автор

Nice I was just thinking of doing some stuff with my LCDs the other day

signalworks
Автор

I love your projects, so thanks.

Absolute accuracy isn't so important in this application, but running with the factory-calibrated 8MHz internal oscillator should be somewhat more accurate than an external crystal and much more accurate than the external ceramic while using less power than either. At 8Mhz, most ATmega328P's will run all the way down to the 2.7V brownout (unless BOD reconfigured), probably only limited by the low-voltage tolerance of the display.

This is nice and simple, but watching you use it makes it seem tedious to navigate and start. I suspect that a single rotary encoder would make a great interface upgrade while maintaining most of the simplicity.

antibrevity
Автор

Nice and simple 👍 It would be awesome if you attach small charging/protection circuit like TP4056 to the LiPo battery

halradhi
Автор

Greet project ! I would like to try but I have an error compiling the sketch " digits.h: No such file or directory" I try to find librarie "digits." witout succes ! Please help me .

tatavox
Автор

Great project, a question: the code works with arduino nano? thanks

anatolxxx
Автор

Nice! I notice that the screen is rendering all pixels in each refresh, maybe you can render specific pixels to save energy? I saw in another video (from EEVblog) that if you maintain polarized the lcd the pixels are still drawed even witouth energy. If you can achieve that it's possible that the power consumption will be a lot less in comparisson.

megasssurio