I am currently creating an embedded project and would like to know what you all think is the best way to proceed.
My setup at its most basic is an ATMEGA328P, a simple momentary pushbutton, a 2500mAh 18650, and an 11 LED ring run by a WS2812.
I am using the FastLED library for running the WS2812. I can only have one button that will be tasked with both power and mode functions (cycle through 10 stored presets). Think long press is power on/off and short press is next mode. Would it be appropriate to place the ATMEGA328 in SLEEP_MODE_PWR_DOWN, turn off BOD and the ADC, and just let it sleep waiting for the interrupt from the button? If it's drawing on the order of 150nA (which I've seen in my research) I think this would be a very acceptable way to proceed. I would just use a P channel MOSFET triggered by the ATMEGA328 to supply power to the WS2812 driven LED ring.
Is there another and or better way to do this? Is it a bad design principle to not have a way to cut power to the processor in the event something goes wrong? (The battery will be internal and not removable).