Windowsの時計を正確に合せる

FT8のデコード率が悪いのは時計のズレせい

FT8で、WSJT-Xのウォータフォールにたくさん信号が見えている割にデコードできているものが少ない。どうしてか考えてたどり着いたのが時計のズレ。手動で時計を合せたらたくさんデコードできた。

手元のWindowsの時計はNTPで合せている。

JT65の通信(おそらくJT9も)では、PCの時計が合っていることが重要。双方の時計の誤差が大きいと信号をデコードできない。 Window...

でも、実際にはズレていたわけで、いろいろ調べてわかったのが、Windowsの時刻合せのポリシが「大体合せる」というものだということ。正確に合せようとつもりはないらしい。

第1回 NTPとWindows時刻同期サービス (2/2)
http://www.atmarkit.co.jp/ait/articles/1203/15/news121_2.htm…

上記ページから一部引用。

これによるとw32timeサービスの設計目標は次のようなものである。

・Kerberos認証が適切に行える程度の時刻同期機能の提供――Active DirectoryのKerberos認証*2では、サーバとクライアント間の時刻のずれは最大で5分間まで許されるが、これを満たす程度の時刻同期を実現する

・クライアントに対する“ルーズな”時刻同期機能の提供――1~2秒以下の精度での時刻同期を保証するものではない

どうやら、2秒以内であっていればOKという考え方のようだ。WSJT-Xでは、±1秒が要求仕様になっている。うーん、これじゃ、JT65やFT8では使えない…。

OSの機能では合わないのか実験

まず、Time.isで正確な時刻とのズレを調べる。

https://time.is/

ここでは、実験のため、意図的にPCの時計を約1秒ずらした。「0.9秒進んでいます」と表示されている。

続いて、Windowsのインターネット時刻設定の画面を開く。

「今すぐ更新」ボタンを押す。

「時刻は正常に~と同期しました」と表示されている。これで正確に合ったものと期待するのだけど…。

再び、Time.isを開き、ちゃんと合っているか確認する。

残念ながら「0.9秒進んでいます」のまま。何度か同期させてみたけれど、やはりこのズレは変らなかった。上のサイトにあったように、精度は1~2秒ということが確認できた。

やはり、この機能は正確な時刻が必要な用途では使いものにならない。

時刻合せのツールを使う

OSの機能では時刻は正確には合せららないことがわかったので別のツールを使って合せることにする。この手のツールで有名なのは「桜時計」だろう。Windows 98の頃はお世話になった。その後は、OSが「インターネット時刻設定」の機能を持つようになったので外部ツールは使っていなかった。ちゃんと合っているのだろうと思っていたので…。

では、今回も桜時計と思ったのだけど、あのツールは自動起動してくれないのでそこがちょっと面倒。やりようがないこともないけど、他にそのあたりができるのもがないか探して見つけたのがこれ。

iネッ時計 ~インターネット時刻補正~
http://pino.to/ntptools/

これだとサービスとして動いてくれるので、いちいち起動させてとか考える必要が無いのが嬉しい。最新版が2008/08/23とだいぶ古いのが気になるが…。ま、ともかく試してみる。

ダウンロードして、インストール。途中、サービスとして登録するかの確認があった。

もちろん、ここでは「OK」を選択。後で設定することもできるようだけど、ここでやっておけば忘れなくて済む。

JWordはいらないので「キャンセル」。

これでインストール完了。と、同時に、ツールが立ち上がった。

色々と設定項目がある。できるだけ正確に合せたいので、許容誤差値を200ミリ秒にした(初期値は500だったと思う)。もっと小さくしたいところだけど、これより小さくはできなかった。

ツールの起動と同時に時刻設定もされているはず。ということで、再びTime.is。

「ちょうどぴったりです」とのこと。メデタシ、メデタシ。
最後に、サービスとして登録されているかを念のため確認。

「Windows管理ツール」の「サービス」を立ち上げる。

「iネッ時計」が入っており、スタートアップが「自動」になっている。これで大丈夫だろう。