Sai come funziona almeno lo sketch che hai usato? Hai letto la libreria LowPower?
Immagino di no ![]()
Funziona attivando il watchdog, che è un circuito interno alimentato separatamente dal clock principale. Il clock principale negli sleep "profondi" viene disattivato quindi tutto si ferma. Senza un qualcosa che risvegli il micro, il micro è in ibernazione. Lo sketch ti ho postato io usa appunto un interrupt esterno. La LowPower usa invece il watchdog per resettare il microcontrollore.
In pratica, ogni 8 secondi resetta l'Atmega e fa ripartire tutto lo sketch. Ecco perché leggi sempre anche il consumo generato dal setup(), perché ogni 8 secondi tutto il codice viene rieseguito.