見出し画像

WindowsでもPiZero2Wで高精度に時刻合わせ

ここまで、PiZero2W上にGPSのPPS信号で高精度なNTPサーバを立て、MacからOTG接続して時刻合わせする記事を公開してきましたが、Windowsでも同様に時刻合わせできないものでしょうか?

答えは「できます」。


PiZero2Wの設定についてはMac向けの記事をご参照下さい。

WindowsでOTG接続

MacOSと同様のサービスを利用するには、下記の設定を行えばOKです。

  • WindowsにBonjourサービスをインストール

  • OTGドライバをインストール

  • 時刻合わせの設定

簡単そうですね。これに加えて、FT8に特化した時刻同期アプリである BktTimeSync を導入することで、より細やかな制御が可能になるようです。

この記事ではWindows 10 Professional環境での設定についてまとめています。ただし私はLinuxがメインでMacがサブ、Windowsはただのクライアント環境としてしか使っていないので、知識は素人に毛が生えたレベルです。ご承知おき下さい。

Bonjourのインストール

まずはOTG接続したデバイスのホスト名を解決できるようにするために、Bonjourをインストールします。

推奨環境にWindows 10が含まれていないようですが、気にしない方向で。

OTGドライバのインストール

次に、OTGドライバをインストールします。

このページの中ほどにあるRPI Driver OTGというリンクから、ドライバのzipファイルをDLして、任意のディレクトリに展開しておきます。

PiZero2Wを接続

上記のインストールが完了したら、PiZero2Wを接続します。しばらく待ってからデバイスマネージャーを開くと、「ポート (COMとLPT)」にUSBシリアルデバイスとして表示されます。

これを右クリックして「ドライバの更新」で先ほどDLしたOTGドライバのzipを展開したフォルダを選択してドライバを更新します。ドライバが更新されると、デバイスマネージャーのネットワークアダプターに「USB Ether/RNDIS Gadget」として表示されます。

これでMac同様、ネットワーク接続されたデバイスとしてWindowsから認識できるようになりました。興味があれば、Tera TermやWSL2のUbuntu等からSSH接続してみてもOKです。

時刻合わせの設定

簡易的に済ませるには、コンパネ→日付と時刻で開くダイアログのインターネット時刻タブ→設定の変更→サーバの欄を raspberrypi.local に変更すればOKのようですが、ほんまかいな。よく分からんのでここは飛ばしましょう。

BktTimeSyncのインストール

Windows標準の設定はよく分からないので、FT8に特化した時刻同期アプリであるBktTimeSyncをインストールしましょう。

このサイト、いろんな場所にダウンロードボタンがありますが、本物はページ内やや下寄りにある「Download BktTimeSync」というラベルのボタンです。

インストーラがデジタル署名されていないのか、DLして実行しようとすると警告が表示されます。詳細を表示して内容を確認してからインストールします。インストールが完了したらBktTImeSyncを実行します。

BtkTimeSyncアプリ

ざっくり、下記の設定でOKのはずです。

  • インターネット設定:

    • NTPサーバー: raspberrypi.local

    • NTPを使用: チェックを入れる

  • GPS設定:

    • GPSを使用: チェックを外す

  • 一般オプション:

    • Windows起動時スタート: チェックを外す

    • 起動時システムトレイに入れる: お好みで

    • 起動時に同期: チェックを入れる

    • 同期周期: 1分

    • NTPがエラーならGPSを使用: チェックを外す

一般的にはNTPサーバへの頻繁な同期リクエストはあまり意味がない上に迷惑行為になるので推奨されませんが、自前のNTPサーバなら遠慮なく同期リクエストを投げても大丈夫です。

もっとも、そんな頻繁に時刻が乱れることはないのであまり意味もなさそうです。

その他

WSL2でchrony

WSL2のUbuntuやDebianにchronyを入れて同期するという方法もあるようですが、未検証です。

Dockerでchrony

思い付きですが、WSL2で時刻合わせできるのならDockerでもよさげ。

愚痴

WindowsはコンパネやらPC設定やら、設定が取っ散らかっていて訳が分かりません。


この記事が気に入ったらサポートをしてみませんか?