今天我买了一个 HyperX Alloy Elite RGB 键盘。我看到他们有一个名为 NGenuity 的 LED 图案定制软件(https://www.hyperxgaming.com/us/ngenuity)。但这只是窗户。我尝试在 wine 中运行它,但它没有找到键盘。有没有办法在 Linux 中配置它或让 wine 找到键盘,以便我可以使用 Windows LED 定制程序?
谢谢
长话短说:
我发布了一个我不久前发现的新解决方案作为答案。核实。
警告说明
我无法让 NGenuity 在 Linux 上运行。它在 Wine 上安装并运行,但无法识别键盘。所以我首先在虚拟化的 ReactOS 中尝试,得到了相同的结果。然后我继续使用在 Ubuntu 上运行的虚拟化 Windows 7,它位于我办公室的计算机中。当我尝试此选项时,NGenuity 运行并询问我是否要更新键盘的固件。我选择更新,然后整个键盘就死机了。更新的进度条没有通过初始状态,我以为我毁了键盘。拔掉插头,重新插上,重新启动。死的。打电话给支持只是为了听他们会更换它。幸运的是,我在其他机器上本地安装了 Windows,这次更新成功完成,键盘再次激活。但是,求求您:
只是不要在非标准 Windows 安装中运行 NGENUITY 固件更新
不过,如果有人成功运行这个软件或在 Linux 上自定义键盘,我很想听听你的消息。
编辑
一年多后,我终于鼓起勇气再次尝试。现在我已经使用了一点:D
但无论如何@d4rkm3z 解决方案不起作用。我的 Mint 安装在 /dev 中没有任何 ttyUSB0。我也认为事情比这更复杂。 First Elite RGB 有 2 根 USB 电缆。然后 AFAIU 它使用 hidraw 端口。我对这些事情了解不多。这是同一件事 ?我读到它是一个原始 USB 端口,所以它应该是相同的。我认为这是因为 dmesg 输出。我尝试将 com1 链接到所有 ln hiraw0 到 hidraw5 设备,但 Ngenuity 无法找到其中任何设备。我还在 /dev/input/by-id 中发现了一些带有 HyperX_Alloy_RGB 名称的文件。尝试将它们全部链接到 com1,结果相同。我对 dmesg 输出的理解是,它链接到多个 USB。
这是一些数据:
whatever:~$ sudo ls /dev -p
autofs cuse hidraw3 i2c-4 loop1 mei0 ppp sdb tty tty17 tty26 tty35 tty44 tty53 tty62 ttyS12 ttyS21 ttyS30 uinput vcs2 vcsa4 vcsu6
block/ disk/ hidraw4 i2c-5 loop2 mem psaux sdb1 tty0 tty18 tty27 tty36 tty45 tty54 tty63 ttyS13 ttyS22 ttyS31 urandom vcs3 vcsa5 vcsu7
bsg/ dri/ hidraw5 i2c-6 loop3 memory_bandwidth ptmx sg0 tty1 tty19 tty28 tty37 tty46 tty55 tty7 ttyS14 ttyS23 ttyS4 usb/ vcs4 vcsa6 vfio/
btrfs-control drm_dp_aux0 hpet initctl loop4 mqueue/ pts/ sg1 tty10 tty2 tty29 tty38 tty47 tty56 tty8 ttyS15 ttyS24 ttyS5 userio vcs5 vcsa7 vga_arbiter
bus/ ecryptfs hugepages/ input/ loop5 net/ random shm/ tty11 tty20 tty3 tty39 tty48 tty57 tty9 ttyS16 ttyS25 ttyS6 vboxdrv vcs6 vcsu vhci
char/ fb0 hwrng kmsg loop6 network_latency rfkill snapshot tty12 tty21 tty30 tty4 tty49 tty58 ttyprintk ttyS17 ttyS26 ttyS7 vboxdrvu vcs7 vcsu1 vhost-net
console fd i2c-0 kvm loop7 network_throughput rtc snd/ tty13 tty22 tty31 tty40 tty5 tty59 ttyS0 ttyS18 ttyS27 ttyS8 vboxnetctl vcsa vcsu2 vhost-vsock
core full i2c-1 lightnvm/ loop-control null rtc0 stderr tty14 tty23 tty32 tty41 tty50 tty6 ttyS1 ttyS19 ttyS28 ttyS9 vboxusb/ vcsa1 vcsu3 video0
cpu/ fuse i2c-2 log mapper/ nvram sda stdin tty15 tty24 tty33 tty42 tty51 tty60 ttyS10 ttyS2 ttyS29 udmabuf vcs vcsa2 vcsu4 zero
cpu_dma_latency hidraw2 i2c-3 loop0 mcelog port sda1 stdout tty16 tty25 tty34 tty43 tty52 tty61 ttyS11 ttyS20 ttyS3 uhid vcs1 vcsa3 vcsu5 zfs
whatever:~$ sudo ls /dev/usb -p
hiddev1 hiddev2
whatever:~$ sudo ls /dev/input/ -p
by-id/ by-path/ event0 event1 event10 event11 event12 event13 event14 event15 event16 event17 event18 event19 event2 event20 event3 event4 event5 event9 mice mouse0 mouse1 mouse2
whatever:~$ sudo ls /dev/input/by-path/ -p
pci-0000:00:1d.0-usb-0:1.2.4:1.0-event-mouse pci-0000:0b:00.0-usb-0:2:1.0-event-kbd pci-0000:0b:00.0-usb-0:2:1.2-event pci-0000:0b:00.0-usb-0:2:1.2-event-mouse platform-i8042-serio-0-event-kbd platform-i8042-serio-1-mouse
pci-0000:00:1d.0-usb-0:1.2.4:1.0-mouse pci-0000:0b:00.0-usb-0:2:1.1-event-kbd pci-0000:0b:00.0-usb-0:2:1.2-event-kbd pci-0000:0b:00.0-usb-0:2:1.2-mouse platform-i8042-serio-1-event-mouse platform-PNP0C14:00-event
whatever:~$ sudo ls /dev/input/by-id -p
usb-ELECOM_TrackBall_Mouse_HUGE_TrackBall-event-mouse usb-HyperX_Alloy_Elite_RGB_HyperX_Alloy_Elite_RGB-event-kbd usb-HyperX_Alloy_Elite_RGB_HyperX_Alloy_Elite_RGB-if02-event-mouse
usb-ELECOM_TrackBall_Mouse_HUGE_TrackBall-mouse usb-HyperX_Alloy_Elite_RGB_HyperX_Alloy_Elite_RGB-if01-event-kbd usb-HyperX_Alloy_Elite_RGB_HyperX_Alloy_Elite_RGB-if02-mouse
usb-HyperX_Alloy_Elite_RGB_HyperX_Alloy_Elite_RGB-event-if02 usb-HyperX_Alloy_Elite_RGB_HyperX_Alloy_Elite_RGB-if02-event-kbd
lsusb 输出:
Bus 002 Device 004: ID 138a:0011 Validity Sensors, Inc. VFS5011 Fingerprint Reader
Bus 002 Device 031: ID 056e:010d Elecom Co., Ltd
Bus 002 Device 029: ID 163c:0407
Bus 002 Device 028: ID 1a40:0101 Terminus Technology Inc. Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 004: ID 0951:16be Kingston Technology <<<<<< should be this one
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 0cf3:3005 Atheros Communications, Inc. AR3011 Bluetooth
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
dmesg | grep HyperX:
[ 840.621032] usb 3-2: Product: HyperX Alloy Elite RGB
[ 840.621034] usb 3-2: Manufacturer: HyperX Alloy Elite RGB
[ 840.636345] input: HyperX Alloy Elite RGB HyperX Alloy Elite RGB as /devices/pci0000:00/0000:00:1c.4/0000:0b:00.0/usb3/3-2/3-2:1.0/0003:0951:16BE.000F/input/input40
[ 840.696729] hid-generic 0003:0951:16BE.000F: input,hidraw3: USB HID v1.11 Keyboard [HyperX Alloy Elite RGB HyperX Alloy Elite RGB] on usb-0000:0b:00.0-2/input0
[ 840.702294] input: HyperX Alloy Elite RGB HyperX Alloy Elite RGB as /devices/pci0000:00/0000:00:1c.4/0000:0b:00.0/usb3/3-2/3-2:1.1/0003:0951:16BE.0010/input/input41
[ 840.760639] hid-generic 0003:0951:16BE.0010: input,hidraw4: USB HID v1.11 Keyboard [HyperX Alloy Elite RGB HyperX Alloy Elite RGB] on usb-0000:0b:00.0-2/input1
[ 840.768647] input: HyperX Alloy Elite RGB HyperX Alloy Elite RGB Mouse as /devices/pci0000:00/0000:00:1c.4/0000:0b:00.0/usb3/3-2/3-2:1.2/0003:0951:16BE.0011/input/input42
[ 840.828447] input: HyperX Alloy Elite RGB HyperX Alloy Elite RGB System Control as /devices/pci0000:00/0000:00:1c.4/0000:0b:00.0/usb3/3-2/3-2:1.2/0003:0951:16BE.0011/input/input43
[ 840.828573] input: HyperX Alloy Elite RGB HyperX Alloy Elite RGB Consumer Control as /devices/pci0000:00/0000:00:1c.4/0000:0b:00.0/usb3/3-2/3-2:1.2/0003:0951:16BE.0011/input/input44
[ 840.828675] input: HyperX Alloy Elite RGB HyperX Alloy Elite RGB Keyboard as /devices/pci0000:00/0000:00:1c.4/0000:0b:00.0/usb3/3-2/3-2:1.2/0003:0951:16BE.0011/input/input46
[ 840.828834] hid-generic 0003:0951:16BE.0011: input,hiddev2,hidraw5: USB HID v1.11 Mouse [HyperX Alloy Elite RGB HyperX Alloy Elite RGB] on usb-0000:0b:00.0-2/input2
答案1
不久前,我很高兴找到(几乎)所有问题的解决方案:OpenRGB
https://gitlab.com/CalcProgrammer1/OpenRGB/-/wikis/home
这是一款在 Linux 中运行的免费软件,允许自定义许多 RGB 键盘型号,包括我的键盘。 \o/
现在只有固件升级与 Windows 相关。您可以废弃 NGenuity。 :)
郑重声明:我测试过,它有效。
答案2
Wine 不支持 USB 驱动程序,但如果您的设备被识别为串行设备,那么您需要com1
和之间的符号链接/dev/usb
,并且它必须位于文件夹 中~/.wine/dosdevices
。
这将允许在 Wine 下运行的 Windows 程序看到 USB 串行设备。我使用 USB GPS 搭配 wine。
这应该可以做到。
ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com1
该解决方案的来源:https://ubuntuforums.org/showthread.php?t=1335098&p=8371229#post8371229
答案3
我最近给自己买了一台 HyperX Alloy RGB,但我非常失望,因为我无法在 Linux Ubuntu 中控制颜色。
我有双启动,Win 10 + Ubuntu。
然后我在 Windows 上安装了驱动程序,进行了颜色设置,并在 Linux 中重新启动。颜色保留为我在 Win 中制作的颜色。
因此,对于想要在 Linux 中拥有自定义彩色 HyperX 键盘的人来说,解决方案是: - 拥有 Windows/Linux 双启动 - 在 Windows 上安装驱动程序并进行设置 - 在 Linux 中使用自定义颜色重新启动
祝你好运!