Raspbian最新カーネルでRTCの不具合が解消

RasPi2でリアルタイムクロック RTC-8564NB を使用する」で発生していたhwclockコマンドの不具合は、最新カーネル(4.0) へのアップデートにより、あっさり解消しました。 ハードウェアも、ショットキーバリアダイオードを介しバックアップ用ボタン電池を接続。 本来の使い方ができるようになると思っていましたが…。

clock

NTPサーバへのネットワークを切断した状態で起動すると、システムクロック・ハードウェアクロック共に初期化される現象に悩まされました。 アラームを設定しシャットダウンしてみると、指定した時間にアラーム出力は出ているので、どうやら、起動時に初期化されているようです。

hさんのサイトを参考にhwclock.shを修正してみましたが改善されず、さまざまなサービスや起動コマンドを停止しながら現象を確認しました。

結局、時刻合わせの為に有効となっているNTPデーモンが、上位サーバと通信できない時にシステムクロック・ハードウェアクロックを初期化していたことがわかりました。

NTPデーモンを停止し、代わりにNTPクライアントのntpdateをインストール。 1時間毎に実行する様cronへ設定し、システムクロック・ハードウェアクロックの問題は全面解決となりました。

OSインストール直後からのRTC設定手順です。

  1. /boot/config.txtへ
    dtoverlay=i2c-rtc,pcf8563 を追加
  2. /etc/modulesへ
    i2c-dev
    rtc-pcf8563 を追加
  3. /etc/rc.localへ
    hwclock -s を追加
  4. fake-hwclock
    ntp を無効化
  5. ntpdate をインストール
  6. cronへ
    ntpdate -v ntp.nict.jp を設定し定期実行

 

参考にさせていただいたサイト

Raspberry Piにリアルタイムクロックをインストールする

ntpdate – 日付と時刻をNTPサーバーと同期 – Linuxコマンド

 

 

関連記事

  • リアルタイムクロック RTC-8564NB で起動するリアルタイムクロック RTC-8564NB で起動する ESAの彗星探査機「フィラエ」が電力喪失、スリープモードに移行 探査機にとって電力は命です。 フィラエは太陽光パネルに光が当たれば、復活の […]
  • RasPi2でリアルタイムクロック RTC-8564NB を使用するRasPi2でリアルタイムクロック RTC-8564NB を使用する RasPi2に切り替えてから特に大きな問題はなく安定して動作していますが、ある時、hwclockコマンドが使えないことが発覚しました。 現 […]
  • 新型シャーシ用インターフェースボード新型シャーシ用インターフェースボード 新型シャーシには、2つの白色LEDと4つの赤色LEDを新設しました。 その信号線を引き出すために、インターフェースボードを再構成しました。 […]
  • pigpioでPWM制御するpigpioでPWM制御する PWMによる速度制御は「WiringPiでPWM制御する」で実験しましたが、致命的な問題により実用とはなりませんでした。 他に良い方法はな […]
  • フォトインタラプタで距離を測定するフォトインタラプタで距離を測定する 加速度センサーによる距離の推定結果が思わしくなかったため、オーソドックスなフォトインタラプタ(フォトリフレクタ)を使用し、距離を測定するこ […]
  • 加速度センサーで距離を推定する加速度センサーで距離を推定する ハウスローバーにとって、走行距離の計測は重要な項目です。 最も基本的な方法は、車輪の回転を検知することですが、車輪のスリップや障害物の影響 […]

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です