Você tira o Divoom Times Gate da caixa, conecta-o à tomada e observa cinco telas LCD se iluminarem com cotações de ações, previsão do tempo e animações em pixel art. O aplicativo funciona bem. Mas você continua pensando: será que posso enviar meus próprios dados para essas telas? Posso escrever um script que coloque um painel personalizado na tela três, enquanto mantém o relógio funcionando na tela um?
A resposta curta é sim — mas não da maneira que você imagina. A Divoom não publicou um documento oficial da API do Times Gate. Em vez disso, a comunidade de desenvolvedores fez engenharia reversa da API de rede local do dispositivo, criou bibliotecas em Python, Rust e C# e integrou o dispositivo a plataformas como o Home Assistant. Este guia explica como o Times Gate realmente se comunica, o que a API local de LAN pode fazer e quais ferramentas ajudarão você a começar a desenvolver mais rapidamente.
O tutorial oficial de configuração do Times Gate no canal da Divoom no YouTube.
Como o Times Gate se comunica com a sua rede
Antes de escrever uma única linha de código, você precisa entender uma coisa que confunde quase todo desenvolvedor na primeira vez: o Times Gate não disponibiliza uma API local assim que é ligado. Quando o dispositivo inicializa, ele se conecta aos servidores de nuvem da Divoom usando MQTT para mensagens em tempo real e HTTPS para sincronização de dados. Somente depois que essa conexão inicial com a nuvem é concluída o endpoint HTTP local se torna disponível na sua rede.
Essa é uma arquitetura diferente da do Pixoo-64, que funciona como um dispositivo local mais simples. Se você já usou a API REST do Pixoo-64 (abordada no nosso guia para iniciantes da API do Pixoo-64), espere uma curva de aprendizado mais acentuada com o Times Gate. A dependência da nuvem significa que você precisa de uma conexão Wi-Fi ativa com acesso à internet durante a configuração, e a API local desaparecerá se o dispositivo perder a conexão com a nuvem.
Por que isso importa? Porque isso molda todas as decisões que você toma sobre como controlar o dispositivo. Se você estiver desenvolvendo um painel de casa inteligente que precise continuar funcionando durante uma queda de internet, precisará de uma estratégia de fallback. Se estiver apenas executando scripts da sua mesa, a conexão inicial com a nuvem será uma etapa de configuração única, e a API local funcionará perfeitamente depois disso.
O Times Gate não é um dispositivo de uma única tela com uma API adicionada. É um painel de cinco telas totalmente programável — assim que você entende como se comunicar com ele.
A API de LAN local: o que você pode controlar diretamente
Depois que o Times Gate estiver conectado ao seu Wi-Fi e tiver concluído a comunicação com a nuvem, ele disponibilizará uma API HTTP na sua rede local. Desenvolvedores da comunidade mapearam os principais recursos por meio de experimentação e engenharia reversa. Veja o que você pode realmente fazer com esse endpoint:
- Trocar os canais das telas — faça com que cada uma das cinco telas exiba um canal diferente (relógio, previsão do tempo, cotações de ações, estatísticas de redes sociais ou arte de pixels personalizada).
- Enviar pixel art personalizada — envie dados brutos de pixels para uma tela específica, o que significa que você pode renderizar qualquer coisa que caiba em uma grade de 128×128.
- Controlar brilho e volume — ajuste programaticamente a intensidade da tela e a saída de áudio.
- Consultar o status do dispositivo — leia o estado atual de cada tela, os canais ativos e as informações de conexão.
A API se comunica por HTTP padrão, o que significa que você pode acessá-la de qualquer linguagem capaz de fazer uma solicitação de rede — Python, JavaScript, Rust, Go ou até mesmo um script de shell com curl. Não é necessário token de autenticação nem chave de API para solicitações locais; o dispositivo confia em qualquer conexão na mesma rede local.
Um desenvolvedor na comunidade Divoom no Reddit fez a mesma pergunta que muitos novos proprietários do Times Gate têm: "Tenho interesse em controlá-lo programaticamente em vez de usar apenas o aplicativo móvel. Alguém sabe se existe uma API?" A discussão revelou que a API local, embora completamente não documentada pela Divoom, está ativa e responde normalmente.
Dica de configuração
Antes de começar a escrever chamadas de API, certifique-se de que o Times Gate esteja na mesma rede Wi-Fi que sua máquina de desenvolvimento e tenha inicializado completamente (as telas devem exibir dados ao vivo, não um estado de carregamento). Se o endpoint da API local não estiver respondendo, reinicie o dispositivo e verifique se ele tem acesso à internet.
Enviando widgets personalizados para cinco telas
É aqui que o Times Gate fica interessante. Diferentemente de uma tela de pixels única, você tem cinco grades independentes de 128×128 para trabalhar. Isso significa que pode criar um verdadeiro painel de controle para desktop: cotações de ações em tempo real na tela um, gráficos de criptomoedas na tela dois, um widget de clima na tela três, sua contagem de inscritos no YouTube na tela quatro e uma animação personalizada de arte pixel na tela cinco.
O processo de envio de conteúdo personalizado segue o mesmo padrão, independentemente da tela escolhida. Você renderiza seus dados em um bitmap de 128×128 pixels, codifica-o no formato esperado pela API (normalmente RGB bruto ou uma variante compactada) e envia-o como um HTTP POST para o endpoint local, especificando o índice da tela. O dispositivo atualiza a exibição imediatamente.
Para implementações práticas, a maioria dos desenvolvedores renderiza os dados no servidor usando uma biblioteca gráfica leve — o Pillow, do Python, é uma opção comum — e depois envia o bitmap resultante ao Times Gate em intervalos programados. Um script Python simples que busca cotações de ações em uma API gratuita, renderiza os dados como texto e um minigráfico em uma tela de 128×128 e envia o resultado para a tela um a cada 60 segundos é um projeto que você consegue criar em uma tarde.
A iluminação ambiente de duas bordas, com 12 efeitos RGB personalizáveis, também pode ser controlada pela API, embora o suporte da comunidade para controlar a iluminação programaticamente ainda esteja amadurecendo em comparação com os endpoints de controle da tela.
Ferramentas da comunidade para desenvolvimento do Times Gate
Você não precisa criar tudo do zero. A comunidade de desenvolvedores em torno dos dispositivos Divoom produziu várias bibliotecas e ferramentas que encapsulam a API HTTP bruta em algo mais prático. Se você já usou a API do Pixoo-64, algumas dessas ferramentas parecerão familiares — várias foram originalmente criadas para o Pixoo e posteriormente ampliadas para oferecer suporte aos endpoints do Times Gate.
| Ferramenta | Linguagem | O que faz | Ideal para |
|---|---|---|---|
| pixoo-rest | Python (servidor REST) | Executa um servidor REST local que encapsula as APIs HTTP da Divoom; oferece suporte ao desenho de pixels, linhas, retângulos e texto, além do download automático de imagens | Desenvolvedores que desejam uma camada de middleware REST entre o aplicativo e o dispositivo |
| divoom-cli | Rust | Ferramenta e biblioteca de linha de comando; inclui descoberta de dispositivos na LAN, troca de canais e envio direto de pixels | Desenvolvedores de Rust e qualquer pessoa que prefira scripts de CLI a escrever um servidor |
| Divoom.Api | C# / .NET | Biblioteca .NET que encapsula as APIs dos dispositivos Divoom; originalmente criada para dispositivos Timebox | Desenvolvedores de C# no ecossistema .NET |
| divoom-gateway | Gateway REST (interface do Swagger) | Gateway de API REST independente com especificação OpenAPI e interface do Swagger; encapsula as APIs HTTP brutas da Divoom para qualquer linguagem | Equipes que desejam uma camada de API documentada e independente de linguagem, com uma interface de exploração integrada |
Cada ferramenta adota uma abordagem diferente. O Pixoo-rest é o ponto de partida mais popular para desenvolvedores Python porque lida com os detalhes do protocolo e oferece endpoints claros, como /api/draw/text ou /api/draw/rectangle. O divoom-cli baseado em Rust é excelente se você quiser um binário compilado que possa chamar a partir de scripts de shell ou tarefas cron. O Divoom.Api cobre o lado do .NET. E o divoom-gateway é a escolha certa se você estiver criando algo multilíngue e quiser documentação do Swagger pronta para uso.
O ecossistema Rust merece uma menção especial, pois o projeto pixoo-rest e o crate divoom para Rust incluem uma API de descoberta de dispositivos — você chama uma função e ela encontra todos os dispositivos Divoom na sua rede local. Isso é realmente útil quando você tem vários displays ou quando o endereço IP do dispositivo muda após a reinicialização do roteador.
Integração com o Home Assistant
Se você usa o Home Assistant, não precisa escrever um aplicativo personalizado para controlar o Times Gate. A API HTTP local pode ser acessada diretamente pela integração de comandos REST do Home Assistant, o que significa que você pode enviar chamadas de API como parte de qualquer automação.
A configuração é simples. Você define um comando REST no seu configuration.yaml que aponta para o endereço IP local do Times Gate e para o endpoint da API que deseja chamar. Em seguida, você aciona esse comando a partir de qualquer automação — um pressionamento de botão, um gatilho de horário, uma mudança de estado em outro sensor ou um comando de voz. A discussão da comunidade do Home Assistant sobre dispositivos Divoom inclui exemplos funcionais de configurações de comandos REST que alternam canais de tela, enviam imagens personalizadas e ajustam o brilho com base em sensores de luz ambiente.
Ideias práticas de automação que proprietários do Times Gate criaram com o Home Assistant incluem alternar as cinco telas para um relógio no “modo de foco” quando um timer Pomodoro começa, exibir alertas meteorológicos quando um aviso de tempestade é acionado, mostrar uma notificação de campainha com uma animação de pixel personalizada quando alguém toca a campainha e alternar entre estatísticas de redes sociais a cada poucos minutos durante uma transmissão ao vivo.
Algo importante a ter em mente: como o Times Gate precisa da conexão inicial com a nuvem antes que a API local fique disponível, você deve adicionar uma condição à sua automação do Home Assistant que verifique se o dispositivo está respondendo antes de enviar comandos. Uma simples verificação de ping evita que os logs de erro se acumulem se a sua conexão com a internet cair.
O que a API ainda não pode fazer
Ser honesto sobre as limitações faz parte de um bom guia para desenvolvedores. A API comunitária do Times Gate é poderosa, mas tem restrições reais que você deve conhecer antes de criar um sistema de produção baseado nela.
Primeiro, não há documentação oficial da API. Tudo o que a comunidade sabe vem de engenharia reversa, o que significa que a API pode mudar com uma atualização de firmware sem aviso. Se você criar algo crítico com base na API local, tenha um plano alternativo — mesmo que esse plano seja apenas verificar se seus scripts continuam funcionando após cada atualização de firmware.
Segundo, a dependência da nuvem é um requisito obrigatório. Um usuário no subreddit do Home Assistant descobriu isso da pior maneira quando tentou usar seu dispositivo Divoom em uma VLAN isolada, sem acesso à internet. A API REST simplesmente não respondia até que ele permitisse que o dispositivo acessasse primeiro os servidores de nuvem da Divoom. Se você está planejando uma configuração de casa inteligente totalmente isolada da rede, o Times Gate pode não ser o display ideal para esse ambiente.
Terceiro, a cobertura de ferramentas da comunidade especificamente para o Times Gate ainda está crescendo. Muitas bibliotecas foram originalmente escritas para o Pixoo-64 ou o Timebox e ampliadas para oferecer suporte aos endpoints do Times Gate, mas nem todos os recursos foram verificados em todos os modelos de dispositivo. Se você estiver usando uma biblioteca que não foi originalmente projetada para o Times Gate, teste cada chamada da API individualmente antes de depender dela.
Segurança das atualizações de firmware
Após qualquer atualização de firmware do Times Gate, faça um teste rápido dos seus scripts da API antes de presumir que tudo continua funcionando. Fixe a versão do firmware se você tiver um fluxo de automação estável que não possa correr o risco de interromper.
Perguntas frequentes
O Times Gate tem uma API oficial?
Não. A Divoom não publicou um documento oficial da API do Times Gate. No entanto, a comunidade de desenvolvedores fez engenharia reversa da API HTTP local e criou bibliotecas em Python, Rust e C# que tornam prático controlar o dispositivo programaticamente.
Posso controlar o Times Gate sem conexão com a internet?
Não completamente. O Times Gate requer uma conexão inicial com a nuvem via MQTT e HTTPS antes que sua API LAN local fique disponível. Depois que essa conexão é concluída, as chamadas à API local funcionam sem acesso contínuo à internet — mas, se o dispositivo for reiniciado ou perder energia, ele precisará se reconectar aos servidores em nuvem da Divoom antes que a API local volte a responder.
Quais linguagens de programação têm bibliotecas da comunidade?
Python (pixoo-rest), Rust (divoom-cli e o crate divoom) e C# (Divoom.Api para .NET). Também existe o divoom-gateway, um gateway de API REST independente com interface do Swagger que funciona com qualquer linguagem capaz de fazer requisições HTTP.
O Home Assistant é compatível com o Times Gate?
Sim, por meio da integração de comandos REST do Home Assistant. Você define um comando REST apontando para o endpoint da API local do Times Gate e o aciona a partir de qualquer automação. A comunidade do Home Assistant tem exemplos funcionais de integração com dispositivos Divoom.
Posso enviar widgets personalizados para telas individuais?
Sim. Cada uma das cinco telas LCD de 128×128 pode exibir conteúdo independente. Você pode enviar pixel art, texto ou dados renderizados personalizados para qualquer tela específica, endereçando-a por meio do parâmetro de índice da tela na API.
O que fazer a seguir
Se você já tem um Times Gate, comece executando um comando curl simples na API local para alternar o canal de uma tela — esse será o seu momento de "hello world". A partir daí, escolha a ferramenta da comunidade que corresponda à sua linguagem preferida e crie um pequeno projeto: um ticker de ações, um painel meteorológico ou uma animação de notificação personalizada. O Times Gate recompensa a experimentação e, assim que você tiver uma tela fazendo algo personalizado, as outras quatro seguirão naturalmente.
Se você vem do mundo do Pixoo-64, nosso guia para iniciantes da API do Pixoo-64 aborda o modelo mais simples de API REST local usado pelo Pixoo — um contexto útil para entender o que mudou com a arquitetura conectada à nuvem do Times Gate. Para a configuração do hardware e a documentação oficial do produto, a página do manual de produtos da Divoom contém os guias atuais.
Divoom Times Gate
Cinco telas LCD independentes de 128×128, conectadas por Wi-Fi e totalmente programáveis por meio de uma API local e ferramentas da comunidade. Widgets integrados para ações, criptomoedas, previsão do tempo e estatísticas de redes sociais.
Ver o Times Gate