Gibby Mascot

Subscribe NOW!

Ir para o conteúdo

Openterface Viewer: Solução KVM leve baseada em navegador de Kashall

O Openterface Viewer de Kashall é uma entrada destacada no Desafio USB-KVM DIY 2024, oferecendo uma alternativa leve e open-source à aplicação desktop Openterface_QT. Esta interface KVM baseada em navegador funciona completamente do lado do cliente em navegadores baseados em Chromium e não requer instalação ou servidor backend. Projetada para uso com o Openterface Mini-KVM, é construída sobre padrões web emergentes como WebUSB, WebSerial e WebHID para fornecer uma solução portátil para gestão de dispositivos headless.

Screenshot da interface web Openterface Viewer mostrando o painel de controle baseado em navegador Screenshot do Openterface Viewer em ação controlando um dispositivo alvo

Por que é importante

A versão inicial do Openterface_QT exigia instalação e oferecia apenas funcionalidade básica. Em contraste, o Openterface Viewer:

  • Funciona no navegador sem necessidade de instalação
  • Funciona em diferentes sistemas graças a um deploy estático
  • Melhora a funcionalidade com características como entrada de teclado e captura de mouse
  • Demonstra o poder das APIs web modernas para controle de hardware

Características principais

  1. Operação sem instalação Funciona diretamente em navegadores baseados em Chromium como Chrome — sem configuração de software ou servidor necessária.

  2. Arquitetura do lado do cliente Construída como aplicação web estática e hospedada no Cloudflare Pages (openterface-viewer.pages.dev), o Viewer comunica diretamente com o Mini-KVM usando:

    • WebUSB para dados de vídeo e controle
    • WebSerial para configuração
    • WebHID para entrada de mouse e teclado
  3. Leve e portátil Ideal para acesso rápido através de várias configurações — de laptops a tablets — com uso mínimo de recursos.

  4. Características de controle melhoradas Melhora as limitações iniciais do QT com captura de mouse, suporte de entrada de teclado e interface responsiva.

Implementação

  • Base de código: Desenvolvida em TypeScript com design modular e Vite para builds rápidos
  • Hospedagem: Deploy estático via Cloudflare Pages
  • Dependências: Inclui bibliotecas usb e serialport para interações de dispositivos de baixo nível
  • UI: Interface web responsiva com feed de vídeo ao vivo, toggles de entrada e suporte de resolução dinâmica
  • Tratamento de erros: Incorpora lógica de reconexão para lidar com comportamento instável de API USB, especialmente em portas USB 3.0/3.1

Visão geral do sistema

  • Dispositivo host: Qualquer navegador baseado em Chromium (ex. Chrome)
  • Mini-KVM: Conecta-se a dispositivos headless via USB e HDMI
  • Dispositivo alvo: SBCs ou servidores (ex. Jetson Nano)
  • Comunicação: USB (controle + dados), HDMI (vídeo)
  • Deploy: Aplicação web estática hospedada no Cloudflare Pages

Desafios e limitações

  • WebUSB/WebSerial/WebHID ainda são experimentais e podem se comportar de forma inconsistente em diferentes portas ou plataformas
  • Limitado a navegadores baseados em Chromium
  • O desenvolvimento do Viewer ocasionalmente ficou atrás das atualizações rápidas do QT, embora as contribuições de Kashall tenham influenciado diretamente novas características no QT (ex. suporte melhorado de mouse)

Impacto

O Openterface Viewer redefine o acesso KVM plug-and-play — sem downloads, sem drivers, apenas abra um navegador e vá. É uma ferramenta prática para:

  • Profissionais de TI que precisam de controle remoto portátil
  • Hobbyistas gerenciando SBCs e dispositivos headless
  • Desenvolvedores trabalhando através de plataformas sem bagunçar sua configuração

Este projeto também destaca o potencial crescente de interfaces de hardware web-nativas, abrindo caminho para ferramentas mais avançadas e cross-platform no futuro.

Explore mais

Agradecimentos especiais ao Kashall por esta solução elegante e visionária no Desafio USB-KVM DIY 2024!