The hardware is really the high point of this project. It's all quite pedestrian. It's a boost converter powering an ATTiny45. The tiny has to exercise the LED, watch for button activations, and sleep to minimize power usage when it's not doing anything.
For power management, the good news is that we can use the pin change interrupt to watch for button pushes. This allows us to drop the tiny into power down mode, which is the absolute lowest power usage possible. It won't be absolutely zero draw, since the boost converter will need to keep the 3 volts available, but the NCP1402 is fairly efficient at low power (battle tested in the crazy clock).
I've never done IR before, so it'll be interesting how best to supply a library and firmware "base" for this project. I envision a method that's called with the button number. The button push will wake up the controller, then it will call the method in question, which will decide what to do. An IR library (TBD) will be available to transmit with the LED. The user's method will be able to poll the button to see if it's still being pushed down and either auto-repeat the IR or not and when the button is released, the method can return, which will put the controller back to sleep.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.