Первый выпуск OpenRGB, инструментария для управления устройствами c RGB-подсветкой

После года разработки опубликован первый выпуск проекта OpenRGB, нацеленного на предоставление универсального открытого инструментария для управления устройствами с цветной подсветкой, позволяющего обойтись без установки официальных проприетарных приложений, завязанных на конкретного производителя и, как правило, поставляемых только для Windows. Код написан на C/C++ и распространяется под лицензией GPLv2. Программа многоплатформенная и доступна для Linux и Windows.

Пакет поддерживает материнские платы ASUS, Gigabyte, ASRock и MSI с RGB-подсистемой для подсветки корпуса, модули памяти с подсветкой от ASUS, Corsair и HyperX, графические карты ASUS Aura и Gigabyte Aorus, различные контроллеры светодиодных лент (ThermalTake, Corsair, NZXT Hue+), светящиеся кулеры, мыши, клавиатуры, наушники и аксессуары Razer с подсветкой. Информация о протоколе взаимодействия с устройствами в основном получена через проведение обратного инжиниринга проприертных драйверов и приложений.

Проект вначале развивался под именем OpenAuraSDK и был сфокусирован на реализации протокола ASUS Aura, но затем был расширен на другие категории устройств. Поддержка Aura уже доведена до полноценного вида и охватывает различные поколения RGB-контроллеров Aura, применяемых в разных платформах на базе CPU Intel и AMD, а также совместимые контроллеры, такие как G.Skill Trident Z.

Для взаимодействия с оборудованием в большинстве случаев достаточно использования i2c-dev или управления через USB (предложены udev-правила). Для работы с RGB-контроллерами материнских плат Aura/ASRock требуется применение патча для ядра Linux. Для периферийных устройств Razer используется драйвер OpenRazer (пакет openrazer-dkms-drivers в Debian/Ubuntu).

Проектом предлагается библиотека функций с универсальным API для управления подсветкой из приложений, консольная утилита и графический интерфейс на Qt. Поддерживается выбор режимов изменения цвета (цветовая волна и т.п.), управление зонами подсветки, применение расширенных эффектов, определение раскладки светодиодов и синхронизация подсветки с выполняемыми действиями (цветомузыка и т.п.).

Источник: http://www.opennet.ru/opennews/art.shtml?num=52629