古いCitizenの皿時計(文字版がお皿の時計)の時計ムーブメントを取り替えて、NTP対応のネットワーク時計にDIYしました。当然ですがとても正確です。ムーブメントはAliExpressで送料込み2,439円でした。
古い皿時計
今回改造するのはCitizenの古い皿時計です。昭和のものと思いますが、陶磁器でできているので今でも綺麗です。調べたらオークションサイトで2,500円程度で販売されているようです。
スマホの影響で、掛け時計もオワコン商品になっているようで、あまり見かけないようになった気がします。正確な時刻を表示するスマホがあれば、掛け時計など不要かもしれません。この皿時計も、一応は動いていたものの、時刻が合ってないことが多く、あまり活用していませんでした。スマホ並みに正確だったら、もう少し頼りにできると思いました。
皿時計には、元々は水晶発振器のムーブメントが付いてました。それがそこそこ狂うので、電波時計のムーブメントに交換して使ってました。ただ、JJYの電波が入りづらく、時刻補正できないと精度の悪い水晶時計になってしまいます。鉄筋コンクリート集合住宅だと、JJYの電波塔に向いた窓際以外の場所では、ほとんど受信できません。
今の時代、どこのご家庭にもWi-Fiはあるので、雑音に弱いJJYの電波を使わずに、Wi-Fi経由でNTPサーバから時刻を取得すれば良いのにと思います。でも、NTP方式のアナログ掛け時計、置き時計製品は、あまり売られてません。
NTPアナログ時計
Wi-Fiに接続して、NTPサーバーから時刻を取得する時計は、少しは販売されています。そもそもAmazon Echoとか、Googleのスマートスピーカー製品は、ネットワーク上のサーバから正確な時刻を取得しています。その中には時刻をデジタル表示する機能が搭載されている製品もあります。でもNTPに対応したアナログ時計はあまり見かけません。
日本の会社からは、セイコーのNCA-3002, NCA-4002という製品が販売されている程度です。NCA3002は、送料込み38,194円くらいです。どちらかというと事業所や学校で使う業務用製品のようです。
海外サイトでも、NTP時計らしき製品が、いくつか販売されています。例えばAliExpressでは送料込み6,353円くらいで販売されています。この製品は以前購入したことがありますが、ちゃんと動作しました。
AliExpressをさらに探すと、掛け時計をDIYする人のために、ムーブメントも販売されていました。こちらの製品です。送料込みで2,439円です。
これを使えば、お手頃な価格で、古風な皿時計を最新のNTP時計にDIYできそうです。早速購入しました。
組み立ててWi-Fi設定する
ごく普通の小さな段ボール箱に入って到着しました。中には、ムーブメント本体の他に、針、ネジ部品、マニュアルが入ってます。マニュアル類は、メーカーのサイトからも入手できます。
針は2種類入っているので、文字盤デザインに合わせて選べます。ムーブメントにはCH-899と書かれてます。これが型番のようです。
皿時計から古いムーブメントを外して、この製品を取り付けます。ネジで止めるだけの簡単な作業です。針はシャフトに押し込むだけです。裏側に、針位置固定のピンが刺さってます。おそらくは12時0分0秒に固定してあるのだと思います。針を挿した後、ピンを抜きました。電池を入れて、裏のボタンを適当に押していたら、LEDが点滅しました。Wi-Fi接続モードに入ったようです。(多分MSETと書かれたボタンを押すと、接続モードになるようです)
接続モードでは、ムーブメントが一時的にWi-Fi基地局として機能してます。そこでスマホのWi-Fi設定を開くと、Wifi-Clock_で始まるSSIDの基地局が見えてます。これがムーブメントです。これに接続すると、「ログイン」のページが表示されます。ここで、時計が接続すべき2.4GHz Wi-FiのSSIDとパスワードを設定します。
「保存」して「Reboot」すれば、完了です。時計の針が動き始めて、しばらくすると現在時刻て停止します。
ちなみにWifi-Clock_の文字の後の6文字は、Wi-FiモジュールのMACアドレスの下位3バイトです。次の動作解析のためにメモしておきました。
動作解析
製品サイトにも取説にも、「Wi-Fiコントロール」時計であると書かれているだけで、NTPで同期しているという説明はありません。でもNTPに違いないと思います。そこで、ルーターに残った記録から、NTPで時刻合わせしていることを確認しました。
MACアドレス、IPアドレス
まずは時計のIPアドレスを調べます。時計はDHCPでアドレスを得ているので、DHCPサーバの記録を見れば、MACアドレス、IPアドレスがわかります。手元の環境
では、YamahaのRTX-1200がDHCPを担当しているので、その情報で確認しました。ルーターの設定WebページのDHCPアドレス付与一覧に、ホスト名Wifi-Clock_XXXXXXという名前が見つかり、対応するIPアドレスがわかりました。MACアドレスもわかります。9c:9c:1f:xx:xx:xxというアドレスでした。
チップメーカー
MACアドレスから製造会社を調べるサイトで、9c:9c:1f:xx:xx:xxというMACアドレスを確認すると、ESP32でお馴染みのEspressif社のアドレスでした。ムーブメントの中で、Espressifのチップが稼働しているようです。
NTP動作の確認
次に、時計が時刻合わせしているタイミングの詳細なログを取得することにしました。そこで、RTX-1200の設定webページから、syslogを詳細に記録するよう設定しました。次に、この時計が時刻合わせをしている時のsyslogを取得します。時計に割り当てられたアドレス、192.168.xxx.xxxで検索すると、
2024/03/07 16:27:38: [INSPECT] LAN2[out][101099] UDP 192.168.xxx.xxx:4097 > 182.92.12.11:123 (2024/03/07 16:27:08) 2024/03/07 16:27:41: [INSPECT] LAN2[out][101099] UDP 192.168.xxx.xxx:4097 > 133.130.121.141:123 (2024/03/07 16:27:11)
という記録が見つかりました。時計から
- 182.92.12.11:123
- 133.130.121.141:123
というアドレス:ポートにUDPアクセスしています。UDPポート123番は、NTPが使用するポート番号なので、この時計がNTPを使って時刻合わせしていることが確認できました。
使用するNTPサーバ
時計がアクセスしているNTPサーバのうち、182.92.12.11は、ntp.aliyun.comというNTPサーバーのエイリアスのようです。aliyun.comにweb接続すると、運営しているのは中国のIT会社のようでした。Alibabaに関係した会社らしいです。
もう一件の133.130.121は、marinecat.netという名前の日本のサイトで、MP3エンコーダーのフリーソフトのサポートページのようです。その中でNTPサーバも公開しているようです。
これらのNTPサーバをどうやって時計が知ったのかを調べるために、ルーターのDNSキャッシュの記録を見ました。Yamahaのルータにtelnetやsshでアクセスして、administratorモードに移行して、dns chacheを見ます。
> administrator (この後パスワードを聞かれます) # show dns cache
とタイプします。ここで得られたdnsの記録から、前述の2つのIPアドレス(182.92.12.11と133.130.121.141)を検索します。その結果、以下の記録が見つかりました。
A IN 78/94 pool.ntp.org (162.159.200.123 133.130.121.141 162.159.200.1 133.243.238.243) A IN 142/161 time.pool.aliyun.com (182.92.12.11 120.25.108.11 115.28.122.198)
pool.ntp.orgは、有志がNTPサーバを提供するオープンなプロジェクトのURLでした。ここにアクセスすると、適切なNTPサーバがランダムに提供されます。プロジェクトのサイト
には、「主要な Linux ディストリビューションや多くのネットワーク機器のほとんどが、デフォルトのタイムサーバとしてこのプールを使用しています。」とのことですので、安心して使用できるかと思いました。
もう一つのtime.pool.aliyun.comは、先ほど述べたaliyun.comという会社が提供するNTPサーバのようです。漢字では「阿里伝」と書くようです。アリババのクラウドサービスのサイトに転送されるので、これも安心して使用して良いかと思いました。
まとめ
古い皿時計のムーブメントを交換して、NTP対応のアナログ針時計にDIYしました。この改造をしたのは1年以上前ですが、不具合なく安定して時刻更新しています。時間が狂うことはありません。夜の12時を過ぎると、秒針が静止して、電池の節約をしているようです。そういう工夫も効いているのか、Wi-Fi接続であるものの電池消費が極端に大きいわけでもなく、1年以上、電池交換不要です。
また、ルータの記録を見て、このムーブメントが使用しているNTPサーバも調べました。
コメント