Logitech
G915 TKL (receptor LIGHTSPEED)
Estático, respiração, espectro e desligado; cores por tecla com um editor de teclas; os efeitos de onda (wave) e ondulação (ripple) do firmware; bateria.
Toda a sua iluminação RGB em um minúsculo aplicativo de bandeja.
O RGB Tray fala com teclados, mouses e luzes diretamente via HID, e com lâmpadas Tuya pela sua rede local. Cor, efeito e brilho para tudo de uma vez ou para um dispositivo por vez, sem software do fabricante rodando em segundo plano.
No lugar de G HUB Synapse Armoury Crate SignalRGB
01
Cada marca tem seu próprio aplicativo de iluminação, e todos querem rodar em segundo plano. O RGB Tray cuida da parte de iluminação de todos eles em um só.
Ele mesmo fala o protocolo de cada dispositivo, então G HUB, Synapse, Armoury Crate ou SignalRGB não precisam estar rodando. A instalação não exige direitos de administrador.
Um clique esquerdo no ícone da bandeja abre o painel: cor, efeito e brilho para todos os dispositivos de uma vez ou por dispositivo, e predefinições que você pode associar a atalhos de teclado globais.
A iluminação volta depois da suspensão (incluindo o Modern Standby) e quando um dispositivo é conectado, escurece junto com a tela e se apaga enquanto a tela está desligada.
02
Seis famílias por enquanto. Outros modelos que usam os mesmos protocolos também podem funcionar, e um novo muitas vezes pode ser adicionado com um pequeno arquivo de texto.
G915 TKL (receptor LIGHTSPEED)
Estático, respiração, espectro e desligado; cores por tecla com um editor de teclas; os efeitos de onda (wave) e ondulação (ripple) do firmware; bateria.
Naga V2 Pro, Mouse Dock Pro e cerca de 90 outros
Basilisk, DeathAdder, Viper, Cobra, BlackWidow, Huntsman, Ornata, Firefly, Goliathus, Base Station e outros, a partir dos dados do OpenRazer: efeitos, zonas dos mouses, bateria. A maioria não foi testada; o card do dispositivo avisa isso, e um relato é bem-vindo.
Teclados de notebook (Aura)
Estático, respiração, espectro e desligado; as zonas do teclado e as luzes do corpo via LampArray. O teclado volta sozinho para o branco ao despertar, então a iluminação é aplicada de novo.
Geekboard MacroPad v2, Keychron, teclados montados à mão
Qualquer teclado QMK com VIA e RGB: estático, respiração, espectro, desligado e brilho. As cores são definidas só na RAM, então as configurações salvas do próprio teclado ficam intactas.
Dispositivos HID LampArray
Dispositivos com o padrão LampArray: estático, respiração, espectro e desligado, com as zonas que o próprio dispositivo descreve. Respiração e espectro são desenhados pelo aplicativo.
Lâmpadas Wi-Fi no Smart Life, por exemplo LINUS A60
Pela rede local: cor, branco com sua tonalidade, respiração, espectro e desligado. A lâmpada não apaga junto com a tela. Precisa da chave local da lâmpada, obtida uma única vez na nuvem da Tuya.
As conexões, todos os modelos Razer e como obter uma chave Tuya estão na tabela completa de dispositivos no GitHub.
03
Pequeno, mas não simplório: as coisas para as quais você de outra forma abriria um aplicativo do fabricante.
Um brilho global e, por cima dele, um por dispositivo; a velocidade da respiração e do espectro, global e por dispositivo.
Para o teclado Logitech: pincel, conta-gotas, arco-íris, degradê de duas cores, predefinições WASD e só letras, destaque de uma palavra, esquemas salvos, layouts ANSI e ISO.
Salve um visual e troque para ele com um atalho de teclado global, incluindo F13–F24 com Ctrl, Alt, Shift ou Win.
Desliga um dispositivo e o liga de novo como estava, por exemplo uma luminária do quarto. As predefinições não são afetadas.
Escurece quando o Windows escurece a tela e se apaga enquanto a tela está desligada: inatividade, bloqueio ou suspensão. Pode ser desativado.
Níveis de bateria, alertas em 10% e 5%, e um status “No link” enquanto um dispositivo sem fio está em repouso; as cores voltam quando ele desperta.
Dispositivos idênticos têm configurações próprias, distinguidos pelo número de série. Os desconectados esperam em um arquivo com suas configurações.
Exporte e importe todas as configurações, ou salve uma predefinição em um arquivo: ela é aplicada aos dispositivos dos mesmos modelos de quem a recebe.
Uma vez por dia o aplicativo consulta o GitHub em busca da versão mais recente e mostra um card que a instala. A verificação pode ser desativada.
O ícone da bandeja mostra a cor atual, o painel pode ser fixado por cima das outras janelas, o tema acompanha o Windows e a interface está em inglês ou russo.
05
Bom saber antes de desinstalar qualquer coisa.
06
Muitos dispositivos não precisam de código algum, só de um pequeno arquivo de perfil. Com o Claude Code você nem precisa saber Rust ou HID: o Claude faz o trabalho técnico, você olha as luzes.
O repositório vem com uma skill /add-device para o Claude Code. Ela leva o Claude do relatório do dispositivo até um perfil ou driver testado, e até um pull request, se você quiser um.
No PC com Windows em que o dispositivo está conectado, clone github.com/Gronck2/rgb-tray e inicie o Claude Code nessa pasta. Para um perfil, bastam as ferramentas de linha de comando do aplicativo instalado; um driver precisa de Rust, e o Claude ajuda você a instalá-lo.
Diga qual é o dispositivo e o que nele acende. Feche antes o aplicativo do fabricante, para que dois programas não briguem pelo dispositivo.
Ele executa rgbtray --diagnose, encontra o seu dispositivo pelos ids de fabricante e de produto e vê quais de suas interfaces falam um protocolo que o RGB Tray já conhece.
No OpenRGB ou no OpenRazer, em uma captura USB do aplicativo do fabricante que você grava (como), ou com tentativas cuidadosas com --hid-send, uma de cada vez e só com o seu sim.
Ele escreve o perfil, verifica com --profile-check e reproduz cores, zonas e efeitos com --profile-test. Depois de cada etapa, pergunta o que o dispositivo fez.
O Claude copia o perfil para %APPDATA%\rgbtray\devices\; reinicie o RGB Tray e o dispositivo ganha seu card no painel. Depois ele pergunta se você quer compartilhá-lo.
O Claude não enxerga as luzes, então nada vale como funcionando até você dizer que sim. Ele nunca envia comandos de atualização de firmware, de bootloader, de restauração de fábrica nem de gravação na memória flash, e pergunta antes de enviar qualquer relatório que ele tenha inventado. Se um dispositivo parar de responder, desconecte-o e conecte de novo.
Quer você trabalhe com o Claude ou à mão, o dispositivo segue o primeiro caminho que servir.
Dispositivos HID LampArray e teclados QMK com VIA são controlados por drivers genéricos. Abra o painel e procure o card.
Um novo modelo Razer é um pequeno arquivo TOML com seus ids de produto, id de transação e ids de LED, tirados do OpenRazer. Um perfil QMK/VIA pode nomear os efeitos do firmware.
[hid]Um protocolo simples, com relatórios que carregam a cor e sem necessidade de respostas, é escrito como modelos de relatório com {r} {g} {b}. Também aceita checksums XOR ou de soma, relatórios de “assumir o controle” e “devolver”, e cores por LED. Sem compilar.
Um protocolo que precisa de respostas, de um handshake ou de estado é um driver: um módulo que implementa a trait Device. O CONTRIBUTING.md explica o passo a passo.
Os perfis são escritos e verificados com o próprio aplicativo, sem precisar compilar. É um programa do Windows sem console, então cada ferramenta grava o resultado no arquivo que você indicar.
| Comando | O que faz |
|---|---|
rgbtray --diagnose report.txt | Todos os dispositivos e interfaces HID, com os que o RGB Tray conhece marcados, e os arquivos de perfil com erros. |
rgbtray --hid-send out.txt <vid:pid[:page[:usage]]> <feature|output|get> "<hex>" | Envia relatórios brutos e acrescenta as respostas ao arquivo, para descobrir um protocolo. |
rgbtray --profile-check out.txt my-device.toml | Lê um perfil sem acessar nenhum dispositivo e grava como o aplicativo interpreta cada modelo, ou o que há de errado com ele. |
rgbtray --profile-test out.txt my-device.toml | Reproduz vermelho, verde, azul, branco fraco, cada zona, respiração, espectro e desligado no dispositivo de um perfil [hid], registrando cada etapa. |
Seus próprios perfis vão em %APPDATA%\rgbtray\devices\ e funcionam depois de reiniciar o aplicativo; um com a mesma key substitui um perfil embutido. Os campos e todas as seções de protocolo estão em docs/profiles.md.
Quando o seu dispositivo funciona, um pull request o deixa embutido para todos os usuários do RGB Tray. O Claude pode fazer tudo isso por você com gh pr create:
profiles/<vendor>-<model>.toml e para BUILT_IN em src/devices/profile.rs, com tested = true só se foi verificado no dispositivo.cargo fmt --check, cargo clippy e cargo test.07
Um único arquivo: o instalador é o próprio aplicativo. Nenhum runtime para instalar e sem direitos de administrador.
RGBTray-Setup-x.y.z.exe
RGBTray-Setup-<version>.exe da última versão.%LOCALAPPDATA%\Programs\RGB Tray e é iniciado.O SmartScreen pode exibir um aviso na primeira vez. O instalador ainda não tem assinatura de código: escolha Mais informações → Executar assim mesmo. Cada versão lista o SHA-256 do seu instalador.
Feche o software de iluminação do fabricante. Dois programas escrevendo no mesmo dispositivo brigam entre si. No Windows 11, o serviço “Logitech LampArray” (Iluminação Dinâmica) faz o G915 ignorar efeitos; o RGB Tray avisa sobre isso e oferece desativá-lo.
Suas configurações estão seguras. Elas ficam em %APPDATA%\rgbtray e são mantidas em atualizações e reinstalações. Cópias dos últimos 14 dias e de antes de cada atualização ficam em backups, e um arquivo de configurações danificado é substituído pela última cópia que funciona.
Windows 10 ou 11 e Rust estável com a toolchain x86_64-pc-windows-gnu ou -msvc. O instalador é o mesmo executável: com o nome RGBTray-Setup-*.exe, ele se instala sozinho.
git clone https://github.com/Gronck2/rgb-tray
cd rgb-tray
cargo build --release # target\release\rgbtray.exe
.\scripts\release.ps1 # dist\RGBTray-Setup-<version>.exe
O RGB Tray é gratuito e de código aberto. A ajuda mais útil não precisa de código: um relatório de dispositivo, ou testar uma versão em um hardware que o projeto não tem. E uma estrela no GitHub ajuda outras pessoas a encontrá-lo.
Problemas e pedidos vão para o GitHub; para escrever lá é preciso uma conta gratuita do GitHub.