Raspberry Pi 5のRTC機能を使って電源オフでも時刻を維持する方法、オフラインでも時刻を維持できるので遠隔監視などに便利
Raspberry Pi 5はRTCモジュールを搭載しており、HATなどの周辺機器を使わずとも時刻を保つことができます。さらに、RTC用のバックアップバッテリーを接続すれば電源切断時でも時刻を維持可能とのこと。インターネットに接続しない遠隔監視用途などで便利そうだったので、バックアップバッテリーを接続して時刻を維持する手順やバックアップバッテリーに二次電池を使う手順をまとめてみました。
https://www.raspberrypi.com/products/raspberry-pi-5/
Raspberry Pi Documentation - Raspberry Pi 5
https://www.raspberrypi.com/documentation/computers/raspberry-pi-5.html
・目次
◆1:技適についての前置き
◆2:バックアップバッテリーを接続する手順
◆3:バックアップバッテリーで時刻を維持できるか検証
◆4:バックアップバッテリー用の二次電池に充電する方法
◆5:シャットダウン時の待機電力を小さくする方法
◆1:技適についての前置き
今回使うRaspberry Pi 5はRaspberry Pi財団からGIGAZINE編集部に直接送られてきたもので、技術基準適合証明を受けていません。そこで、「技適未取得機器を用いた実験等の特例制度」の届出を行っています。なお、日本では代理店による技適申請の後でRaspberry Pi 5が発売される予定なので、一般ユーザーが技適について気にする必要はありません。
◆2:バックアップバッテリーを接続する手順
今回はバックアップバッテリーとしてML2032の二次電池を用意し、電池ケースと「JST型 SH 2Pコネクタ付きケーブル」を用意しました。Raspberry Pi 5にバックアップバッテリーを接続するにはJST形のSHコネクタが必須です。
パーツを組み立てるとこんな感じ。
組み立てたパーツをRaspberry Pi 5のUSB-CポートとMicro HDMIポートの間に位置するコネクタに接続します。
これで電源切断状態でも時刻を維持できるようになりました。
◆3:バックアップバッテリーで時刻を維持できるか検証
バックアップバッテリーで時刻を維持できるのか検証するために、バックアップバッテリーありとなしで挙動を比較してみます。
・バックアップバッテリーなし
まず、通常に起動したRaspberry Pi 5の時刻をシリアルコンソールから確認すると、Windows PCと同一の時刻を示していました。
続いて、Raspberry Pi 5をネットワークから遮断してNTPサーバーへアクセスできないようにし、さらに電源も切断。この状態で数分間待機します。
しばらく待機してからRaspberry Pi 5を再起動して時刻を確認すると、電源から切断されている間に時刻が進まなかったことにより、時刻がずれてしまいました。
・バックアップバッテリーありの場合
続いて、バックアップバッテリーを接続した状態で時刻がずれないか確認します。最初にネットワークに接続してNTPサーバーから時刻を取得し、時刻を合わせます。
続いて、ネットワークから遮断し、電源も切断します。
数分後に起動しても時刻はずれていませんでした。バックアップバッテリーによって時刻の進みが保たれたというわけです。
なお、電源接続状態ならバックアップバッテリーなしでも時刻を維持できます。
◆4:バックアップバッテリー用の二次電池に充電する方法
バックアップバッテリーに二次電池を使っている場合、「/boot/firmware/config.txt」に「dtparam=rtc_bbat_vchg=○○」という行を追記することでRaspberry Pi 5から二次電池を充電できます。「○○」には1300000〜4400000の数字を入力して目標電圧を指定可能。今回使っている二次電池は定格3Vなので「dtparam=rtc_bbat_vchg=3000000」と入力しました。
バックアップバッテリーの電圧は以下のコマンドで確認可能。
cat /sys/devices/platform/soc/soc:rpi_rtc/rtc/rtc0/battery_voltage
電圧を確認した結果、3V近くまで充電できていました。
◆5:シャットダウン時の待機電力を小さくする方法
Raspberry Pi 5のEEPROMを書き換えると、シャットダウン時の待機電力を小さくできます。設定手順は以下の通り。
まず、以下のコマンドを実行してEEPROMの設定変更画面を表示します。
sudo -E rpi-eeprom-config --edit
設定画面が開いたら「POWER_OFF_ON_HALT=0」を「POWER_OFF_ON_HALT=1」に書き換え、さらに「WAKE_ON_GPIO=0」という行を追加します。後は、システムを再起動すれば設定変更は完了です。
実際にUSBテスター「WITRN U3」で待機電力を測定してみました。通常状態の待機電力は約1.3V。
設定変更後の待機電力は約0.02Wでした。
なお、設定変更後はGPIOの3.3Vのピンから電圧が出なくなります。
一方で5Vのピンからは電圧が出ていました。
◆フォーラム開設中
GIGAZINEの公式DiscordサーバーではRaspberry Pi 5関連のフォーラムを開設しています。以下のリンク先から誰でも書き込み可能なので「○○が気になるな〜」といった内容をドシドシ書き込んでください。
• Discord | "「Raspberry Pi 5」がGIGAZINE編集部に届いたのでレビューするけど何が知りたい?" | GIGAZINE(ギガジン)
https://discord.com/channels/1037961069903216680/1166304963497041981