ラズベリーパイ(以下ラズパイ)にリアルタイムクロック(RTC)機能を追加するための拡張ボード。
ADRSRTCのリポジトリです。
製品ページはこちら
- Readme.md [本文書]
- FAQ.md [FAQ]
- Switch-LED-Buzz2021-07-28.py [サンプルプログラム]
本動作確認は「RaspberryPI OS 32bit Bullseye 2022-04-04 Release」をイントールした後、2022年5月時点で最新版にupgradeした状態で実行しております。
I2C・SPIインタフェースは、あらかじめraspi-configで許可した状態です。
・RTC機能インストール
- /boot/config.txtに追記
dtparam=i2c_arm=on
dtoverlay=i2c-rtc,ds3231
- NTPを停止
以下のコマンドを実行して下さい
$ sudo systemctl stop systemd-timesyncd
$ sudo systemctl disable systemd-timesyncd
- fake-hwlockを削除
以下のコマンドを実行して下さい
$ sudo apt-get -y remove fake-hwclock
$ sudo update-rc.d -f fake-hwclock remove
$ sudo systemctl disable fake-hwclock
- 現在時刻をRTCに書き込みして再起動
以下のコマンドを実行して下さい
$ sudo hwclock -w
$ sudo reboot
- 起動時RTCを読み込む設定
・/etc/default/hwclock
ファイル内の以下の行の先頭の'#'を削除してコメントアウトを解除してください。
記述がない場合は、追記してください。
#HCTOSYS_DEVICE=rtc0
・/lib/udev/hwclock-set
ファイル内の以下の行すべての先頭に'#'を記入してコメントアウトしてください。
if [ -e /run/systemd/system ] ; then
exit 0
fi
- ライブラリのインストール
$ git clone https://github.com/adafruit/Adafruit_CircuitPython_SSD1306
$ cd Adafruit_CircuitPython_SSD1306/
$ sudo python3 setup.py install
- サンプルプログラムでOLED表示を確認
$ cd examples
$ python3 ssd1306_stats.py
# 終了はCtrl-Cを押下
スイッチを押すと同じ並びのLEDが点灯します。
4つ全部押すとブザーが鳴動します。
$ sudo apt install pigpio
$ sudo pigpiod
$ python3 Switch-LED-Buzz2021-07-28.py
# 終了はCtrl-Cを押下