AI · Hardware·稼働中·2026-05: 進行中
ESP32 Weather
卓上天気ディスプレイ ファームウェア
毎朝 Siri を呼ぶルーティンを簡素化し、天気を視覚的にはっきり確認するために ESP32 で作った ambient ダッシュボードです。 浴室に設置しており、在宅中は常時稼働しています。
技術スタック
制作の動機
毎朝シャワー後に Siri を呼ぶルーティンを簡素化し、天気を視覚的にはっきり確認するために ESP32 でダッシュボードを作成しました。 ちょうど手元に ESP32 があったため、一度自分で組んでみることにしました。
コメント
組み込みを実際に構築・体験・利用しています。 ファームウェア (C++) → b-hub (TypeScript) → MySQL → KMA のフルスタックの流れを完成させ、Web では当然視していたメモリ・画面バッファ・フォント描画を機械側から再考する契機になりました。
主な特徴
- 01ESP32-D0WD-V3 + ILI9341 2.8" TFT (320×210) + XPT2046 抵抗膜タッチ: "Cheap Yellow Display"
- 02State machine: BOOT → WIFI_SETUP → LOCATION_SEARCH → WEATHER ⇄ SETTINGS / DISPLAY_SETTINGS
- 032 ボル式ハングルキーボードを自前実装 (位置検索用): ライブラリなしで作成、再利用可能に分離
- 04u8g2 unifont ハングル + drawJamoGlyph() で互換字母をピクセル描画
- 05自己復旧: 60 秒 heap 監視、KST 00 / 12 時に自発 reboot、fetch all-or-nothing (stale 維持)
- 06b-hub /weather/* プロキシ: KMA API キー非露出、格子座標変換を委任、weatherApiKey でクォータ管理
備考
- ·ILI9341 標準ドライバの色反転 / 軸入替バグ: ILI9341_2_DRIVER + setRotation(1) + invertDisplay(1) で回避 (3〜4 時間の試行錯誤)
- ·WiFi の遅延接続時のバックグラウンド自動再接続を追加予定
