Juice4halt是一个覆盆子Pi帽子,可作为短期上升。它使用2个超级电容器为Raspberry Pi供电几秒钟,如果发生电源故障,则足够的时间可以安全地关闭。
要使用此设备,需要一些脚本来启用Raspberry Pi和Juice4halt之间的GPIO通信。官方网站在这里提供了一些,但此版本使用systemd具有一些优势。
注意:仅在库存覆盆子PI OS上进行测试。其他分布可能有效,但未经测试。


安装在Raspberry Pi 3B+上时,Juice4HALT模块看起来像。注意那些矮胖的“ BigCap”电容器的大小。
当Raspberry Pi靴子时, systemd激活juice4halt.service ,启动watchdog.sh脚本。它向Juice4Halt发送了GPIO脉冲,告知启动已完成。然后它永远循环,聆听Juice4Halt的脉搏,表明功率已经丢失。此时,看门狗将退出其循环,并启动系统关闭。
当需要手动重新启动(安装新软件或出于任何其他原因之后)时, systemd将在常规关闭过程的一部分中运行safe-shutdown.sh脚本。这样可以确保Juice4Halt将在随后的引导中处于正确的状态。如果没有这样做,重新启动后Juice4Halt将无法正确操作。
当watchdog.sh触发关闭时,此自动关闭脚本被绕过,因此不需要。
重要说明:如果系统被命令shutdown或poweroff (而不是reboot )必须从Juice4Halt物理上删除电源,并且必须允许电容器完全放电。 Raspberry Pi将无法在完全排出电源之前开始新的启动。
/etc/rc.local等中包括命令等)cd到您的主目录/home/pigit clone [email protected]:skhg/juice4halt.gitcd到新的juice4halt目录sudo ./setup.sh以安装systemd配置。 运行systemctl status juice4halt以查看状态信息并确认其正在运行。
样本输出:
● juice4halt.service - juice4halt
Loaded: loaded (/home/pi/juice4halt/conf/juice4halt.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-12-30 13:24:17 CET; 3h 25min ago
Main PID: 353 (watchdog.sh)
Tasks: 2 (limit: 1939)
CGroup: /system.slice/juice4halt.service
├─ 353 /bin/bash /home/pi/juice4halt/bin/watchdog.sh
└─6213 sleep 0.2s
Dec 30 13:24:17 television systemd[1]: Started juice4halt.
看门狗和安全检查脚本是根据Juice4halt在https://juice4halt.com/download上修改的。