RTCを接続する

1.config.txtに追記

raspi-configでI2Cインターフェースをオンにする

使用できるRTCチップを確認

$ dtoverlay -h i2c-rtc

Bookworm以降

$ sudo nano /boot/firmware/config.txt

Bullseye以前

$ sudo nano /boot/config.txt

[all]に以下の行を追加(例としてpcf8563)

dtoverlay=i2c-rtc,pcf8563

再起動して認識されるか確認

$ i2cdetect -y 1

RTCのアドレスがUU表示になれば認識成功

2.RTC関連のコマンド(要ネット接続)

時刻設定の状態を確認

$ timedatectl

現在の時刻をRTCに書き込む

$ sudo hwclock -w

RTCの時刻を確認する

$ sudo hwclock -r

RTCの時刻を時刻設定に反映する

$ sudo hwclock -s

3.OS起動時にRTC時刻を読み込む設定

次のファイル名で空のファイルを作成する

85-hwclock.rules

file85-hwclock.rules

作成したファイルの中に次の一行を書き込む

KERNEL=="rtc0", RUN+="/sbin/hwclock --rtc=$root/$name -s"

作成したファイルを入れる場所

/etc/udev/rules.d

4.参考

Raspberry Pi 5の場合は本体RTCを無効に

confiig.txtに一行追加

dtparam=rtc=off

ネットに繋がっていない時の時刻設定の方法

NTPを無効にする

$ sudo timedatectl set-ntp false

時刻を手動で設定する

$ sudo timedatectl set-time "YYYY-MM-DD 12:34:56"

NTPを有効にする

$ sudo timedatectl set-ntp true

参考・Raspberry Pi Pinout

GPIO-Pinout-Diagram-2.png

画像引用元:Raspberry Pi hardware Introduction


トップ   編集 凍結解除 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2025-04-18 (金) 01:52:13