Um sistema operacional para o M5Stack Cardputer, um portátil com 512 KB de RAM que permite escrever, compilar e executar Ruby e Python no próprio dispositivo.
tinydesk-project/tinydesk
Um desktop com janelas controladas pelo mouse que roda em microcontroladores ESP32 e é exibido em qualquer terminal ANSI conectado pela serial.
- Estrelas
- 104
- Forks
- 15
- Issues abertas
- 4
- Último commit
- anteontem
O que é?
TinyDesk é um desktop em modo texto para microcontroladores. Ele desenha janelas sobrepostas e arrastáveis usando sequências de escape ANSI e recebe do terminal os comandos de teclado e mouse, sem precisar de hardware de vídeo. Conecte à porta serial da placa um terminal UTF-8 com controle de cursor ANSI/VT e suporte ao protocolo de mouse xterm, como o PuTTY, e o desktop será exibido.
O desktop inclui o app Terminal, que executa o TinyDesk Shell, além de Files, um Editor com realce de sintaxe para Python, Network, MQTT, Modbus (TCP e RTU), System Monitor, Log Viewer, Settings e atualização de software OTA. É possível escrever scripts em shell (.tdsh) ou MicroPython, e uma pequena API permite que desenvolvedores adicionem seus próprios apps.
O núcleo portátil em C11 não tem dependências de terceiros e funciona em placas ESP32-S3, ESP32-C6 e ESP32 clássicas via ESP-IDF, além de Linux, Windows e macOS para desenvolvimento. O projeto está em prévia para desenvolvedores na versão 0.2.0.
Recursos principais
- 01Janelas sobrepostas, arrastáveis e redimensionáveis, exibidas em um terminal conectado pela serial.
- 02Controle por mouse e teclado, com copiar e colar no PC.
- 03Apps integrados para arquivos, edição, redes, MQTT e Modbus.
- 04Scripts de shell e MicroPython com acesso a arquivos, MQTT e Modbus.
- 05Funciona em placas ESP32-S3, ESP32-C6 e ESP32 clássicas, além de Linux, Windows e macOS de forma nativa.
Casos de uso
- Gerenciar arquivos, configurações de rede e logs de um dispositivo ESP32 sem tela nem software adicional.
- Monitorar e gravar registradores Modbus em equipamentos industriais RS-485 a partir de uma placa.
- Criar protótipos de scripts de MQTT ou controle de pinos em MicroPython em um microcontrolador.
- Aprender ou demonstrar sistemas embarcados usando um desktop visual no terminal.
Início rápido
- 1
Clone o repositório com o submódulo shell
git clone --recursive https://github.com/tinydesk-project/tinydesk.git - 2
Acesse o diretório do projeto
cd tinydesk - 3
Compile a versão para desktop no PC e execute-a
cmake -B build -G Ninja && cmake --build build && ./build/tinydesk
Antes de usar
- Esta é uma versão de prévia para desenvolvedores (v0.2.0), então pode haver problemas.
- As imagens de firmware que incluem wolfSSH e wolfSSL são distribuídas, como um todo, sob a licença GPLv3.
- Para usar todos os recursos, é necessária uma placa ESP32 conectada a um terminal serial; a versão para PC é principalmente para desenvolvimento.
- A transferência opcional via Telnet não é criptografada.
Em coleções
Tópicos
Perguntas frequentes
- O que é tinydesk?
- Um desktop com janelas controladas pelo mouse que roda em microcontroladores ESP32 e é exibido em qualquer terminal ANSI conectado pela serial. TinyDesk é um desktop em modo texto para microcontroladores. Ele desenha janelas sobrepostas e arrastáveis usando sequências de escape ANSI e recebe do terminal os comandos de teclado e mouse, sem precisar de hardware de vídeo. Conecte à porta serial da placa um terminal UTF-8 com controle de cursor ANSI/VT e suporte ao protocolo de mouse xterm, como o PuTTY, e o desktop será exibido.
- tinydesk é gratuito? Qual é a licença?
- tinydesk é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- tinydesk ainda é mantido?
- Manutenção ativa. O último commit de tinydesk foi em 5 de nov. de 2026.
- Para que posso usar tinydesk?
- Gerenciar arquivos, configurações de rede e logs de um dispositivo ESP32 sem tela nem software adicional. Monitorar e gravar registradores Modbus em equipamentos industriais RS-485 a partir de uma placa. Criar protótipos de scripts de MQTT ou controle de pinos em MicroPython em um microcontrolador. Aprender ou demonstrar sistemas embarcados usando um desktop visual no terminal.
- Como instalar tinydesk?
- Clone o repositório com o submódulo shell: git clone --recursive https://github.com/tinydesk-project/tinydesk.git Acesse o diretório do projeto: cd tinydesk Compile a versão para desktop no PC e execute-a: cmake -B build -G Ninja && cmake --build build && ./build/tinydesk
- Onde consigo tinydesk?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/tinydesk-project/tinydesk
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma implementação enxuta de Python 3 que roda em microcontroladores e outros dispositivos com recursos limitados, com módulos para acesso ao hardware.
Framework oficial de desenvolvimento da Espressif para criar firmware para ESP32 e outros SoCs da Espressif no Windows, Linux e macOS.
Ferramenta de linha de comando multiplataforma e sistema de build para desenvolvimento embarcado, com gerenciamento de bibliotecas, suporte a várias placas e frameworks, depuração e testes unitários.
Firmware alternativo para placas ESP8266 e ESP32, com configuração via web, atualizações OTA, automação local e controle por MQTT, HTTP, Serial ou KNX.
Biblioteca de rede embarcada em C, distribuída em dois arquivos, com pilha TCP/IP, TLS 1.3, HTTP, WebSocket, MQTT e atualizações OTA de firmware para microcontroladores.