Repolode
tinydesk-project

tinydesk-project/tinydesk

ESP32マイコン上で動作し、シリアル接続したANSIターミナルに描画される、マウス操作対応のウィンドウ型デスクトップ。

スター
104
フォーク
15
未解決の Issue
4
最終コミット
一昨日

これは何?

TinyDeskは、マイコン向けのテキストモードデスクトップです。ANSIエスケープシーケンスを使って、重ねて表示でき、ドラッグも可能なウィンドウを描画します。また、ターミナルからキーボードとマウスの入力を受け取るため、ディスプレイ用のハードウェアは不要です。PuTTYなど、ANSI/VTカーソル制御とxtermマウスレポートに対応したUTF-8ターミナルをボードのシリアルポートに接続すると、デスクトップが表示されます。

デスクトップには、TinyDesk Shellを実行するTerminalアプリのほか、Files、Pythonのハイライト表示に対応したEditor、Network、MQTT、Modbus(TCPおよびRTU)、System Monitor、Log Viewer、Settings、OTAソフトウェアアップデートが含まれます。スクリプトはshell(.tdsh)またはMicroPythonで記述でき、開発者が独自のアプリを追加するための小さなAPIも用意されています。

移植可能なC11コアにサードパーティ依存関係はなく、ESP-IDFを介してESP32-S3、ESP32-C6、初代ESP32ボードを対象としています。また、開発用にLinux、Windows、macOSでも動作します。バージョン0.2.0の開発者向けプレビューです。

主な機能

  • 01シリアル接続したターミナルに描画される、重ねて表示・ドラッグ・サイズ変更が可能なウィンドウ。
  • 02マウスとキーボードで操作でき、PCとのコピー&ペーストにも対応。
  • 03ファイル操作、編集、ネットワーク、MQTT、Modbus向けの組み込みアプリ。
  • 04ファイル、MQTT、Modbusを利用できるshellスクリプトとMicroPythonスクリプト。
  • 05ESP32-S3、ESP32-C6、初代ESP32ボードで動作し、Linux、Windows、macOSではネイティブ実行も可能。

ユースケース

  • ディスプレイや追加ソフトウェアを使わずに、ESP32デバイスのファイル、ネットワーク設定、ログを管理する。
  • ボードから産業用RS-485機器のModbusレジスタを監視・書き込みする。
  • マイコン上でMicroPythonを使い、MQTTやピン制御のスクリプトを試作する。
  • ターミナル上のビジュアルデスクトップを通じて、組み込みシステムを学習・実演する。

クイックスタート

  1. 1

    shell サブモジュールとともにリポジトリをクローンする

    git clone --recursive https://github.com/tinydesk-project/tinydesk.git
  2. 2

    プロジェクトディレクトリに移動する

    cd tinydesk
  3. 3

    PC向けデスクトップ版をビルドして実行する

    cmake -B build -G Ninja && cmake --build build && ./build/tinydesk

使う前に知っておきたいこと

  • これは開発者向けプレビュー(v0.2.0)のため、まだ不具合や粗削りな部分があります。
  • wolfSSH と wolfSSL を含むファームウェアイメージは、全体として GPLv3 の下で配布されています。
  • すべての機能を利用するには、シリアル端末に接続した ESP32 ボードが必要です。PC版は主に開発向けです。
  • オプションの Telnet による引き継ぎは暗号化されません。

収録されている特集

トピック

よくある質問

tinydesk とは?
ESP32マイコン上で動作し、シリアル接続したANSIターミナルに描画される、マウス操作対応のウィンドウ型デスクトップ。 TinyDeskは、マイコン向けのテキストモードデスクトップです。ANSIエスケープシーケンスを使って、重ねて表示でき、ドラッグも可能なウィンドウを描画します。また、ターミナルからキーボードとマウスの入力を受け取るため、ディスプレイ用のハードウェアは不要です。PuTTYなど、ANSI/VTカーソル制御とxtermマウスレポートに対応したUTF-8ターミナルをボードのシリアルポートに接続すると、デスクトップが表示されます。
tinydesk は無料で使えますか?ライセンスは?
tinydesk は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
tinydesk は今もメンテナンスされていますか?
活発にメンテナンス中。tinydesk の最終コミットは 2026年11月5日 です。
tinydesk は何に使えますか?
ディスプレイや追加ソフトウェアを使わずに、ESP32デバイスのファイル、ネットワーク設定、ログを管理する。 ボードから産業用RS-485機器のModbusレジスタを監視・書き込みする。 マイコン上でMicroPythonを使い、MQTTやピン制御のスクリプトを試作する。 ターミナル上のビジュアルデスクトップを通じて、組み込みシステムを学習・実演する。
tinydesk のインストール方法は?
shell サブモジュールとともにリポジトリをクローンする: git clone --recursive https://github.com/tinydesk-project/tinydesk.git プロジェクトディレクトリに移動する: cd tinydesk PC向けデスクトップ版をビルドして実行する: cmake -B build -G Ninja && cmake --build build && ./build/tinydesk
tinydesk はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/tinydesk-project/tinydesk

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト