M5Stack Cardputer向けのOS。512KB RAMの本体上でRubyやPythonを書き、コンパイルして実行できます。
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
shell サブモジュールとともにリポジトリをクローンする
git clone --recursive https://github.com/tinydesk-project/tinydesk.git - 2
プロジェクトディレクトリに移動する
cd tinydesk - 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 の数値は毎日更新されます。
関連プロジェクト
マイクロコントローラーなどのリソースが限られたデバイスで動作し、ハードウェアアクセス用モジュールを備えた軽量なPython 3実装。
Windows、Linux、macOSでESP32などEspressif製SoC向けファームウェアを開発するための公式フレームワーク。
組み込み開発向けのクロスプラットフォームなコマンドラインツール兼ビルドシステム。ライブラリ管理、複数のボードやフレームワーク、デバッグ、ユニットテストに対応します。
ESP8266/ESP32ボード向けの代替ファームウェア。Web UIでの設定、OTAアップデート、ローカル自動化、MQTT・HTTP・Serial・KNXによる制御に対応。
マイコン向けに、TCP/IPスタック、TLS 1.3、HTTP、WebSocket、MQTT、ファームウェアのOTA更新を提供するC製の2ファイル構成ネットワーキングライブラリ。