(anteriormente OpenAurasdk)
Uma das maiores queixas sobre o RGB é o ecossistema de software que o envolve. Todo fabricante tem seu próprio aplicativo, sua própria marca, seu próprio estilo. Se você deseja misturar e combinar dispositivos, acaba com uma tonelada de aplicativos conflitantes e funcionalmente idênticos competindo pelos seus recursos em segundo plano. Além disso, esses aplicativos são proprietários e somente Windows. Alguns até exigem contas online. E se houvesse uma maneira de controlar todos os seus dispositivos RGB de um único aplicativo, no Windows e no Linux, sem nenhum absurdo? É isso que o OpenRGB estabelece. Um aplicativo para governar todos eles.
Características
- Defina cores e selecione modos de efeito para uma ampla variedade de hardware RGB
- Salvar e carregar perfis
- Controle iluminação de software de terceiros usando o SDK OpenRGB
- Interface da linha de comando
- Conecte várias instâncias do OpenRGB para sincronizar a iluminação em vários PCs
- Pode operar independente ou em uma configuração de cliente/servidor sem cabeça
- Visualizar informações do dispositivo
- Nenhum software oficial/fabricante é necessário
Dispositivos suportados
Consulte o Wiki do projeto para obter a lista atual de dispositivos suportados.
AVISO!
Este projeto fornece uma ferramenta para investigar as SMBUs. Esta é uma operação potencialmente perigosa se você não souber o que está fazendo. Exercite a cuidado ao clicar nos dispositivos de detecção ou nos botões do dispositivo de despejo. Houve relatos de placas -mãe de gigabyte terem problemas sérios (bloqueando o RGB ou bloqueando a placa inteira) ao despejar certos dispositivos. Nas mesmas linhas, exercite a mesma cautela ao usar os comandos i2cdump e i2cdetect no Linux, pois eles executam a mesma funcionalidade. O OpenRGB não é responsável por danos causados pelo acesso inadequado de SMBUs.
A partir de agora, apenas as placas Gigabyte RGB Fusion 2.0 foram relatadas como tendo problemas.
Windows
- Os binários pré-criados estão disponíveis na seção de lançamentos no GitLab.
- Se você deseja construir o aplicativo:
- Faça o download da mais recente edição do Visual Studio Community e QT Creator.
- Abra o projeto OpenRGB.Pro no QT Creator.
- Use o kit MSVC Compiler, de 32 ou 64 bits, para criar o aplicativo.
- Execute o projeto do QT Creator. Se você deseja usar seu Build Standalone personalizado, faça o download do mais recente pacote de lançamento correspondente e substitua o OpenRGB.exe nele por sua nova compilação.
- Você deve executar o aplicativo como administrador na primeira vez para permitir que o INPOUT32 configure. Pode ser executado como um usuário normal depois
Acesso USB
- Alguns dispositivos USB (especialmente teclados e ratos) exigem a instalação do driver Winusb. Você pode fazer isso com Zadig:
- Download Zadig: https://zadig.akeo.ie/
- Selecione "Liste todos os dispositivos" no menu
- Selecione a última interface (número mais alto) do seu dispositivo
- Com o "winusb" selecionado, clique em Instalar
Linux
- Os binários pré-construídos não estão atualmente disponíveis para Linux
- Você pode criar o projeto usando o QT Creator ou na linha de comando.
- Instalar dependências de construção
- Debian: sudo apt install instalk-essencial qtcreator qt5-default libusb-1.0-0-dev libhidapi-dev pkgconf
- Fedora: sudo dnf install git make automake gcc gcc-c ++ qt-criador qt5-devel hidapi-devel libusb-devel
- Git clone https://gitlab.com/calcprogrmerks1/openrgb
- CD OpenRGB
- QMake OpenRGB.Pro
- faça -J8
- Execute o aplicativo com ./openRGB
Acesso à SMBUS
- O acesso à SMBUS é necessário para controlar a RM RAM e certos LEDs a bordo da placa-mãe.
- Se você não estiver tentando usar o OpenRGB para controlar RGB RAM ou LEDs da placa -mãe, poderá pular esta seção.
- As placas -mãe Asus e Asrock têm seu controlador RGB em uma interface SMBUS que não é acessível por um kernel Linux não modificado (por enquanto). Estou trabalhando para receber os patches enviados a montante, mas por enquanto você deve consertar o kernel com o arquivo OpenRGB.patch fornecido.
- Permitindo acesso a SMBUs:
- Carregue o módulo i2c-dev:
sudo modprobe i2c-dev
- Carregue o driver I2C para o seu chipset:
- Intel:
-
sudo modprobe i2c-i801
-
sudo modprobe i2c-nct6775
- controlador secundário para os LEDs da placa -mãe (requer patch)
- AMD:
-
modprobe i2c-piix4
- O kernel não modificado terá uma interface, o kernel remendado terá dois. O primeiro em 0x0b00 e o segundo em 0x0b20. A interface 0x0b20 é para LEDs da placa -mãe.
- Instruções sobre como corrigir o kernel:
- https://gitlab.com/calcprogrambmer1/openrgb/-/wikis/openrgb-kernel-patch
- Algumas placas -mãe gigabyte/aorus têm um conflito ACPI com o controlador SMBUS.
- Adicione
acpi_enforce_resources=lax
à sua linha de comando do kernel e reinicie. O controlador agora deve aparecer.
- Você precisará permitir o acesso do usuário às suas SMBUs se não executar como root.
- Liste todos os controladores de SMBUs:
sudo i2cdetect -l
- Observe o número dos controladores PIIX4, I801 e NCT6775.
- Dê acesso ao usuário a esses controladores, por exemplo:
sudo chmod 777 /dev/i2c-0
Acesso USB
- Os dispositivos USB exigem que as regras da UDEV acessem como usuário normal.
- Você pode executar o OpenRGB como root para detectar todos os dispositivos USB.
- As regras da UDEV estão incluídas neste repositório:
- Copie o arquivo 60-openrgb.rules para /etc/udev/rules.d/
- Recarregar as regras com
sudo udevadm control --reload-rules && sudo udevadm trigger
OpenRGB SDK
O OpenRGB fornece uma interface de rede para controlar dispositivos RGB suportados de outros softwares. Esses projetos implementam o SDK OpenRGB e fornecem maneiras adicionais para você controlar sua configuração de iluminação.
- Visualizador de teclado (por mim): https://gitlab.com/calcprogrammer1/keyboardvisualizador
- OpenRGB Python Client (por Bahorn): https://github.com/bahorn/openrgb-pyclient
- OpenRGB Python Client (por Jath03): https://github.com/jath03/openrgb-python
- OpenRGB Node.js Client (por Vlakreeh): https://github.com/vlakreeh/openrgb
- Conector D-Bus para OpenRGB (por Vinno97): https://github.com/vinno97/openrgb-dbus-connector
- OpenRGB E1.31 Receptor (por mim): https://gitlab.com/calcprogrambmer1/openrgbe131receiver
- OpenRGB.Net - C# OpenRGB Client (por DiogoTr7): https://github.com/dogotr7/openrgb.net
Projetos usados
- Inpoutx64: http://www.highrez.co.uk/downloads/inpout32/
- libusb: https://github.com/libusb/libusb
- HIDAPI: https://github.com/libusb/hidapi
- LIBE131: https://github.com/hhromic/libe131
- Nvfc: https://github.com/graphitemaster/nvfc
- OpenRazer: https://github.com/openrazer/openrazer
- OpenRazer--win32: https://github.com/calcprogrambmer1/openrazer-win32
- Qt-plus (Colorwheel): https://github.com/liuyanghejerry/qt-plus
- Bibliotecas da AMD ADL: https://github.com/gpuopen-librariasandsdks/display-library
Projetos pesquisados
Embora nenhum código desses projetos tenha entrado diretamente no OpenRGB, esses projetos foram recursos inestimáveis para informações sobre o protocolo.
- ckb-next: https://github.com/ckb-next/ckb-next
- Linux_TherMaltake_riing: https://github.com/chestm007/linux_thermaltake_riing
- Controlador de cabeçalho endereçável da AURA: https://gitlab.com/cneil02/aura-addressable hera-controller
- OpenPyaura: https://gitlab.com/thelastguardian/openpyaura
- ASRLED: https://github.com/eua/asrled
- Asrock-Leds: https://github.com/rattydave/asrock-leds
- Hue-plus: https://github.com/kusti8/hue-plus
- Rogauracore: https://github.com/wroberts/rogauracore
- msi-rgb: https://github.com/nagisa/msi-rgb
- OpenCorsairLink: https://github.com/audiohacked/opencorsairlink
- msi-teclado: https://github.com/bparker06/msi-keyboard
- rivalCfg: https://github.com/flozz/rivalcfg
- Vrmtool: https://github.com/rbrune/vrmtool
- G810-LED: https://github.com/matmoul/g810-led
- liquidctl: https://github.com/jensaMalacofilho/liquidctl