让 ATK RS6 Ultra Plus 用上 SignalRGB

// 让 ATK RS6 Ultra Plus 用上 SignalRGB

让 ATK RS6 Ultra Plus 用上 SignalRGB

我的 ATK RS6 Ultra Plus 可以在 ATK HUB 中设置灯光,但我想让它跟电脑上其他设备一起响应 SignalRGB 的效果。于是我根据这把键盘的 HID 控制通道,写了一个 SignalRGB 本地设备插件。这篇文章记录安装方法、灯位映射,以及两套软件如何避免争抢灯光控制权。

这份插件针对我手上的 ATK RS6 Ultra Plus 编写和测试。它匹配的硬件标识为 VID 0x373B、PID 0x1210,控制通道为 HID 接口 1。其他型号或不同硬件版本没有经过验证。安装前先核对你的设备标识。

下载并安装插件

下载 ATK_RS6_Ultra_Plus.js

下载文件的 SHA-256 为:

A4FF1BE2B05BD34EB435114DE6D5EB3DAA49B8B2CB96FDCFCF6F9ACB870DCC28

在 Windows 上按以下步骤安装:

  1. 打开“文档”文件夹,新建 WhirlwindFX\Plugins 文件夹。如果文件夹已经存在,直接打开它。
  2. 把下载的 ATK_RS6_Ultra_Plus.js 放进该文件夹。最终路径是 文档\WhirlwindFX\Plugins\ATK_RS6_Ultra_Plus.js。
  3. 打开 SignalRGB,在设备列表中找 ATK RS6 Ultra Plus。如果没有出现,重启 SignalRGB 再检查一次。
  4. 选择一个灯效,确认键盘灯光会随画布变化。

插件文件里已经内嵌设备缩略图。安装时不需要另行下载图片。如果你之前安装过旧版本,先备份原文件,再用新文件覆盖。

灯位映射如何工作

键盘采用 68 键布局。我为 SignalRGB 定义了 72 个独立采样点,其中空格键下面的 5 颗灯珠分别取色。固件使用 5 × 15 的灯光矩阵,插件把 SignalRGB 画布坐标逐个映射到矩阵槽位,再分两包发送 RGB 数据。

设备识别限制在这把键盘的控制接口上:

export function VendorId() { return 0x373B; }
export function ProductId() { return [0x1210]; }
export function Validate(endpoint) {
    return endpoint.interface === 1;
}

这样做的重点是不要误选普通键盘输入接口。我的 Windows 设备上,控制通道对应 MI_01,Usage Page 为 0xFF60,Usage 为 0x0061。这些值来自本机实测,不代表所有 ATK 键盘都相同。

在 SignalRGB 与 ATK HUB 之间切换

在 SignalRGB 的设备设置中找到 Lighting Source:

  • 选 SignalRGB,插件发送灯光数据。Lighting Mode 可以选 Canvas 跟随当前效果,或者选 Forced 使用固定颜色。
  • 选 HUB,插件停止发送灯光数据,把灯效控制交给 ATK HUB。此时要保持 ATK HUB 运行。

你仍可以用 ATK HUB 调整触发、RT、键位和固件设置。不过,不要让 ATK HUB 的在线灯效页和 SignalRGB 同时持续写灯。两边同时控制同一 HID 通道时,效果可能互相覆盖。

我还修过一个切换问题:从 HUB 切回 SignalRGB 时,如果插件在渲染线程里重新读取固件,HID 读取可能阻塞界面。现在切回时不再执行这次读取,而是直接恢复 RGB 输出。插件只在初始化阶段查询固件版本;当版本低于 2.00 或查询失败时,它会发送软件灯光模式命令。

出现问题时检查这些地方

  • 设备未出现:核对 VID、PID 和型号,确认文件位于你的“文档”文件夹下的 WhirlwindFX\Plugins,再重启 SignalRGB。
  • 设备出现但灯光不变:检查 Lighting Source 是否为 SignalRGB,并关闭 ATK HUB 的在线灯效推送。
  • 想交还控制权:把 Lighting Source 改为 HUB,并确认 ATK HUB 正在运行。

这份插件是针对一把实际设备做的映射记录,不是通用 ATK 驱动。如果你的 VID 或 PID 不同,请不要直接修改数字后就写入设备。先确认 HID 接口、报告长度和灯光矩阵,再做适配。

下一篇:欢迎来到 Lead1r 的博客
// 评论