スマホやノートPCからWiFiの設定ができるようになり、NTPサーバの時刻と同期するようになりました。
WiFiの設定方法
ボタンの長押し
このボードにはSETとUPの2つのスイッチが付いています。SETスイッチは時刻の設定に使っているのでUPスイッチを使います。UPスイッチを3秒長押しすると、WiFiの設定モードになります。
最上位のVFDの'マークが点滅します。VFD時計がWebサーバーになっていることを示しています。
ESP32でWiFiの設定をスマホやPCからできるようにする仕組みとして、WiFiManagerを使いました。
本家のWiFiManagerは現在ではコンパイルできません。しかし、tzapuさんがフォークしたWiFiManagerは、今でもメンテナンスされていてコンパイルすることができました。
ESP32のアクセスポイントに接続
VFDClockというアクセスポイントが有効になるので、スマホやノートPCから接続します。
公衆WiFiに接続するときに現れるウィンドのように、スマホやノートPCの画面に設定用のウィンドが表示されます。この中の「Settings」をクリックします。
設定
VFD時計から接続したい、WiFiのアクセスポイントをクリックします。
Passwordにアクセスポイントのパスワードを入力します。タイムゾーンも変更できます。入力が終わったら「Save」をクリック。
設定が保存されました。
NTPと時刻同期
ESP32が先ほど設定したアクセスポイントに接続を開始します。無事インターネットに接続できると、NTPサーバから時刻を取得しRTC ICに設定されます。
NTPクライアントにはtickeltonさんのNTPClientを使いました。
ArduinoライブラリーのNTPClientをフォークした物で、オリジナルよりも正確にミリ秒単位で時刻同期できます。
時刻同期すると、一番左に点滅していた'マークが流れ星のように、右へ流れていくアニメーションも追加しました。
NTPサーバとは1時間ごとに時刻同期する仕組みとしました。
正確な時計になりました
WiFiの設定からNTPとの時刻同期までの動画になります。これで、とても正確なVFD時計になりました。
さて次回は、明るさセンサを追加して、部屋が暗くなったらVFDも暗くなる機能を追加したいと思います。
これまでの歩みは以下の通りです。
コメント