There's no way to do that. The Raspberry Pi (including the 4B) doesn't have a suspend/sleep mode; it's either on or off. The Pi 4 can "fake sleep" using open firmware/bare-metal and then reboot after a while, but it's not true sleep and this doesn't work on the Pi 5. Waking it up still requires external hardware.this is something ive mentioned often when talking about the open firmware
it could be modified, to check the battery level via i2c to a battery management chip, and only boot once it has fully charged
i also already made an example program, that will just sleep for a few hours, and then wake back up, doing the same job as an arduino timer, with no extra chips
https://github.com/librerpi/lk-overlay/ ... -sleepy.mk
https://github.com/librerpi/lk-overlay/ ... leepy.c#L9
this code will generate a start4.elf that sleeps for 2 minutes (time can be adjusted in source, or perhaps a config file added)
then after the delay is up, it will just reboot
the intent, is that you have a second fat32 partition, and you use "reboot 4" to load the start4.elf there
and then a set number of hours later, it reboots again, and boots the stock firmware and whatever linux you have
but it wont work on the pi5, they have improved the code-signing, and open firmware just isnt an option anymore
a baremetal arm kernel could do similar things, but wont be able to get as low of a power usage, plus the pi5 is just more power hungry
Statistics: Posted by salesmanrelief — Wed Dec 17, 2025 1:56 am