
米カルフォルニア在住のエンジニアEric氏が「ESP32-P4」と4インチのラウンドディスプレイを使用したオフラインマップビューワーを開発し、YouTubeで公開した。SDカードに保存された地図データを読み込むため、Wi-Fi接続なしで動作するのが特徴。GPSナビゲーターやハイキング用デバイスなど、様々な応用が期待できる。
タッチ操作で自由に地図を探索
このマップビューワーは、LVGLグラフィックライブラリを使用して地図タイルを描画。タッチ操作で地図を滑らかにスクロールでき、画面中央の緯度・経度が自動的に更新される。ズームレベルもその場で変更可能で、保存されている地域であれば自由に探索できる。
各地図タイルは256×256ピクセルで、一度に25枚(5×5グリッド)を描画。開発者によると、7×7や9×9のグリッドも試したが動作が遅くなるため、5×5が最適なバランスだという。
ハードウェアには「ESP32-P4」とDSIディスプレイを採用。SPIディスプレイと比べて表示が格段に滑らかになるという。ESP32-P4は32MBのPSRAMと32MBのフラッシュメモリを搭載した高性能ボードで、Wi-FiやBluetoothは内蔵していないが、別途ESP32-C6が通信用に搭載されている(今回のプロジェクトでは未使用)。
地図データの準備には、オフラインマップダウンローダーを使用。ダウンロードした地図データをRGB565バイナリ形式に変換してSDカードに保存することで、LVGLが追加のデコード処理なしに直接読み込めるようにしている。これは以前製作したRaspberry Piと電子ペーパーを使った地図ビューワーでも使用した手法だという。

さまざまな応用プロジェクトへの展開を期待
開発者は、このシステムを基盤として、さまざまなプロジェクトに発展できると考えている。例えば、オフラインで動作する専用GPSナビゲーター、携帯電話の電波が届かない場所でも使えるハイキング用デバイス、スマートダッシュボード、都市ガイド、実際の地図タイルを使用したゲームなど、応用の可能性は幅広い。
「なぜスマートフォンがあるのに作るのか」という疑問に対しては、「作ること自体が楽しみであり、ローカルマップが必要な将来のプロジェクトの基盤になる。それに、これは私の趣味だから実現したかった」と開発の動機を説明している。
開発者は「map tiles」というコンポーネントをESP registryに公開しており、誰でも利用可能。現在、他の人が試しやすいようにサンプルプロジェクトを準備中で、完成次第GitHubリポジトリで公開予定だという。
使用されているラウンドディスプレイは、元々WaveshareがスマートホームやloTダッシュボード向けに設計したものだが、今回は全く異なる用途で活用されている。こうした既存部品の新しい使い方も、このプロジェクトの興味深い点の一つだ。