FrontPage
WeatherStationDemoのインストール方法 †
概要 †
- WeatherStationDemoはESP8266_Weather_Stationライブラリのexamplesに含まれるプログラム
- 128x64dot モノクロOLEDに時刻、天気と気温、3日分の天気予報などを表示します。
- HSES-NODE-OLEDで動作させるための修正内容を説明します。
WeatherStationDemoExtended の画面
入手方法 †
- ESP8266 Weather Station ライブラリに付属します。
- ライブラリマネージャからインストール可能です。
- GitHubの下記ページからもダウンロード/git clone可能です。
- ライブラリがインストールできたら、Arduino-IDEのメニューバーから ファイル→スケッチの例→ESP8266 Weather Station→ WeatherStationDemo で開き、適当な場所に保存してください。
WeatherStationDemo/Extended/DSTの違い †
- よく似た名前の3つのサンプルスケッチがあります。
- 中身も似てますので、おなじような修正で、それぞれ動かせます。
- 違いは
- WeatherStationDemo: SSID/パスワードはプログラムに埋め込み
- WeatherStationDemoExtended: SSID/パスワードはスマホ等で設定、画面下部の表示内容が増える
- WeatherStationDemoExtendedDST: 表示が6面、温湿度センサーも接続?
Wunderground API keyの入手 †
- このプログラムを動作させるにはWunderground のAPI Keyが必要です。
プログラムの修正箇所 †
- WeatherStationDemoExtendedの例で説明します。
SSD1306WireをSSD1306Spiに †
- 79行あたり
-SSD1306Wire display(I2C_DISPLAY_ADDRESS, SDA_PIN, SDC_PIN);
+#define OLED_RST 16
+#define OLED_DC 15
+#define OLED_CS 2
+SSD1306Spi display(OLED_RST, OLED_DC, OLED_CS);
時差、Wundergroundの設定 †
- どの都市名が使用できるかは、wundergroundの検索box/Search Locationsで検索してみるとわかります。
ThingSpeak関連処理の削除 †
- ThingSpeakを経由して室温湿度等を表示する機能があります。
- そのままですと、どこかの部屋の温度・湿度が表示されるだけなので削除します。
- 121行あたり
-FrameCallback frames[] = { drawDateTime, drawCurrentWeather, drawForecast, drawThingspeak };
-int numberOfFrames = 4;
+FrameCallback frames[] = { drawDateTime, drawCurrentWeather, drawForecast};
+int numberOfFrames = sizeof(frames)/sizeof(frames[0]);
- 265行あたり
- drawProgress(display, 80, "Updating thingspeak...");
- thingspeak.getLastChannelItem(THINGSPEAK_CHANNEL_ID, THINGSPEAK_API_READ_KEY)
コンパイルしプログラムを書き込む †
- ArduinoIDEの「マイコンボードに書き込む」ボタンをクリックし、プログラムを書き込んでください。
WiFi ManagerでWiFiの設定を入力 †
- このプログラムは WiFi Managerを使用しており、無線LANのssidとパスワードをROMの専用領域に保存し使用するようになっています。
- これらの情報が未設定あるいは接続できない場合、プログラムはWiFiアクセスポイントとして動作し、スマホ、ノートパソコン等で接続、ブラウザでssidとパスワードを入力します。