ドットマトリックスLED(MAX7219)を使用し、時間と気象情報を表示するウエザーステーションを作成してみます。
以前 Oled_SSD1306 を使用したウエザーステーションを作成し4日分の天気を表示させましたが、今回は現在の気象情報のみ表示させます。
表示させる項目は、時間 曜日 日付 気温 湿度 気圧 降水確率 風速 風向き などで横スクロール表示させます。
使用パーツ
ドットマトリックスLED MAX7219
Wemos D1 mini いずれ ESP_Wroom02 に変更します
マイクロUSBオス/メス延長パネル
その他、マイクロUSB 充電器、スマフォ用充電器など流用出来ます。
回路図
配線は簡単で、5本配線するだけです、回路図の MAX7219 は8×8ドットの単体ですが接続は変わりません。
MAX7219への接続は、赤:VCC 黒:GND 黄:DIN 緑:CS 青:CLK です、制作した画像は配線の色が違います。
プログラム
この動画を参考にしました、コードへのリンクがありますのでダウンロードします。
ダウンロードしたZIPファイルを解凍すると、プログラムコードとライブラリーフォルダーが出来ますのでArduino IDE にそれぞれ入れておきます、Arduino IDE の使い方については割愛します。
コードのテキスト箇所がドイツ語なので英語に翻訳する箇所があります、適宜変更して下さい。
気象情報の取得には「open weather map」を使います、登録してAPIキーを取得する必要があります、取得方法は参考動画で説明されています、私の前の記事にもリンクがあります。
コードの変更箇所
コード変更箇所を上げておきます。
LEDMatrixV2.ino
WiFi の ssid pass Weather Key Weather Lang cityID NTP server TimeChangeRule Timezone などを変更します。
行番号:23・24・27・31・32・36・48・50 です。
日本は夏時間がないので49はコメントアウトします。
time.ino
6行目 1箇所のみ変更します
time_t tTlocal = jST.toLocal(tT);
weather.ino
気象情報を表示する部分がドイツ語になっているので英語に変換しました。
その他LEDに表示されるドイツ語を英語に変換する、電源投入時表示される Connect など。
エラーが出たらチェックするところ
arduino json 関連のエラーが出た場合は
・ スケッチの ライブラリーを管理から arduino json を検索しのバージョンを Ver5.13.5 にダウングレードする。
時計表示のみで気象情報が表示されない場合は
・ ボードマネージャーで ESP8266 を検索し バージョンを Ver2.40 にダウングレードする。
以上が作成した中で出たエラーです。
ケースに組み込み完成させる
ドットマトリックスLEDがケースの中でグラつくようだったらホットグルーで固定します。
マイクロUSBパネルが大きすぎて裏蓋が閉まらないので、バラして必要な長さに切って使用しました。
動作動画