シカゴに住むBraveStone199氏が、Chicago Transit Authority(CTA)の高架鉄道「L」のリアルタイム路線図をESP32-C6とLEDストリップで自作し、r/esp32に公開した。
市販の路線図ポスターに各駅の位置へLEDストリップを切って貼り付け、駅ごとにLEDが点灯する仕組みだ。LEDには個別に取り付けるタイプではなくストリップを選んだ理由は、ケーブル配線を短くするためだという。CTAが公開しているAPIに対して定期的にリクエストを送り、返ってきたJSONデータを解析して8路線の列車位置をLEDに反映する。デフォルトの更新間隔は30秒で、最短7秒まで設定でき、APIの1日のコール数上限を超えない範囲で調整が可能だ。
ESPHomeをベースに実装しており、輝度や更新モードはHome Assistantから変更できる。製作で驚いたのは、ESP32-C6がJSONの解析と描画更新のすべてをオンボードで処理できた点だという。当初は外部で前処理してから渡す必要があると考えていたが、問題なく動作した。
氏はPythonに習熟しているがC++は不慣れで、JSON解析の部分はバイブコーディングで実装したとコメント欄で補足している。フレーム下部にUSB-Cポートを設け、バッテリーパックで給電する構造にしたが、LEDの消費電力が高く1日程度しか持たないとのことで、通常はコンセント直結で使う予定だという。コードはGitHubで公開されている。