ESP32でOS風ターミナルを自作——マイコン初心者が夏から始めて形にした「MiniOS-ESP」

FabScene(ファブシーン)

マイコンでOS風の環境を作りたい。そう考える人は少なくないが、実際に形にするのは簡単ではない。VuqarAhadli氏はESP32の限られたリソースで動作する軽量なコマンドラインインターフェースを目指し、MiniOS-ESPを開発した。

ハードウェアはESP32開発ボードとST7789 TFTディスプレイ(240×320ピクセル)で構成される。ディスプレイにはコマンドプロンプトとその出力が表示され、入力はシリアルモニター経由で受け付ける。USBキーボードを直接接続する方式ではないが、PCのターミナルから操作する形だ。

実装はC++のみで、Arduino CoreやPlatformIOで動作する。ESP-IDFのCLIコンポーネントを使わなかったのは、既存フレームワークへの依存を減らし、自分の理解の範囲で進めたかったからだという。

コマンドはPOSIXやMS-DOSのような既存CLIを模倣していない。helpでコマンド一覧、osでロゴ表示、versionでバージョン情報、wifiでWiFi接続、timeで時刻表示といった独自体系だ。ファイル操作にはSPIFFS(SPI Flash File System)を使う。読み書きと削除が可能だ。HTTPクライアント機能も備え、外部APIへのリクエストを送れる。テーマ機能で表示色のカスタマイズもできる。

VuqarAhadli氏は「2024年夏に初めてESP32を購入した。それまでマイコンの経験はゼロだった」と述べている。開発中のプロジェクトであり、Espressif固有の機能を実装できるコントリビューターを募集している。

関連情報

GitHubリポジトリ(VuqarAhadli/MiniOS-ESP)

fabsceneの更新情報はXで配信中です

この記事の感想・意見をSNSで共有しよう
  • URLをコピーしました!
目次