天気予報と温湿度表示
M5Stackで作成した『天気予報表示』とTWELITEを使った『屋外温度表示』を合体して一つのガジェットにしてみました。更に、室内温湿度と気圧表示、チャイムを追加しており、更に雨降り警報器も合体予定です。
使用デバイス・FeatherWing - 3.5インチ 480 x 320 タッチスクリーンTFT
・Adafruit ESP32 Feather Board
・BME280
・TWELITE DIP / TWELITE PAL
・圧電スピーカー
・ユニバーサル基板

FeatherWing - 3.5インチ 480 x 320 タッチスクリーンTFT
TFT コントローラ HX8357SPI MODE 0 / MSB First
コマンド一覧
|
![]() |
タッチスクリーン コントローラ TSC2007
I2C アドレス 0x48~0x4B (ディフォルト 0x48)
読み取り座標 (0,0)ー(4096,4096) ペン圧 Z1,Z2:0~255
※ ただし、TFTの方が面積が小さいため、座標の有効読み取り範囲は (150,130)ー(3800,4000)
| コマンド | 動作 |
| 0xC0 | X位置読み取り |
| 0xD0 | Y位置読み取り |
| 0xE0 | Z1位置読み取り |
| 0xF0 | Z2位置読み取り |
16Bitのデータに読み込みむには4BitのBitシフトが必要です。
Adafruit ESP32 Feather
FeatherWing - 3.5インチ 480 x 320 タッチスクリーンTFTにはめ込んで使用できるようになっています。
Adafruit ESP32 Featherから見たピン配置は▼です。
| 信号名 | ピン番号 | 備考 |
| SPI - SCK | 5 | |
| SPI - MOSI | 18 | |
| SPI - MISO | 19 | |
| TFT - CS | 15 | |
| TFT - DC | 33 | |
| SD - CS | 14 | |
| I2C - SCL | 22 | BME280のSCLに接続 |
| I2C - SDA | 23 | BME280のSDAに接続 |
| TS - IRQ | 32 | |
| U2RXD | 16 | TWELITE DIPのTXに接続 |
| U2TXD | 17 | TWELITE DIPのRXに接続 |
| SPEKER | 21 | 圧電スピーカーに接続 |
温湿度・気圧センサー BME280
湿度用のレジスタが増えている以外は BMP280 と同じです。秋月電子で購入したBME280ユニットはディフォルトではSPI接続なので、ジャンパーを変更してI2Cインターフェイスにしています。
| レジスタ名 | アドレス | bit7 | bit6 | bit5 | bit4 | bit3 | bit2 | bit1 | bit0 |
| 湿度LSB | 0xFE | 湿度LSB<7:0> | |||||||
| 湿度MSB | 0xFD | 湿度MSB<7:0> | |||||||
| 気温XLSB | 0xFC | 気温XLSB<7:4> | 0 | 0 | 0 | 0 | |||
| 気温LSB | 0xFB | 気温LSB<7:0> | |||||||
| 気温MSB | 0xFA | 気温MSB<7:0> | |||||||
| 気圧XLSB | 0xF9 | 気圧XLSB<7:4> | 0 | 0 | 0 | 0 | |||
| 気圧LSB | 0xF8 | 気圧LSB<7:0> | |||||||
| 気圧MSB | 0xF7 | 気圧MSB<7:0> | |||||||
| CONFIG | 0xF5 | ||||||||
| CNTL_MEAS | 0xF4 | 気温オーバーサンプリング[2:0] | 気圧オーバーサンプリング[2:0] | 動作モード[1:0] | |||||
| STATUS | 0xF3 | 計測状態 | レジスタ状態 | ||||||
| RESET | 0xE0 | リセット[7:0] | |||||||
| ID | 0xD0 | チップID[7:0] | |||||||
| 補正値 | 0xA1~0x88 | 補正値データ 24Byte(12Word) | |||||||
漢字表示 ~東雲フォントをSDカードから読み込み ~
『東雲フォントをSDカードに入れてみた』と同じです。お天気アイコン ~JPEG画像表示~
『M5Stackで天気予報』と同じです。天気予報情報読み込み
『M5Stackで天気予報』と同じです。ケースの3D形状データ

スケッチとSDカードに入れて置くデータ(アイコン画像、気象区コード、プロパティファイル)
Adafruit ESP32 Featherのスケッチ
SDカードのルートフォルダにコピーしてください。
WeatherForecast.json のSSIDとPWDをご自宅の環境に合わせて変更してください。
気象区はスケッチ起動後にConfigから変更できます。
