-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Omen (Apex 350) wrong keycodes #13
Comments
Hi. The keys are all over the place, probably because the default udev configuration and default xkb configuration don't properly handle the apex's extra keys. udev is the system that converts the keyboard's raw scan-codes into key-codes, and xkb is the system that converts key-codes into key-symbols (they both do a lot more than this, but this is what's important to apexctl). udev and xkb are part of your linux distribution, and are separate from apexctl. This repository provides a udev configuration to fix the key-codes. When you build apexctl, it also generates a If you're seeing errors when installing apexctl (using the command If I completely missed the mark on the problem behind your issue, then also please tell me xd |
Hi again. Thanks to you for creating the tool. Saved me some bucks if I can get the kb I already have working, hehe. Also, sorry it took me a bit to reply; been a bit caught up with work. All 4 files get installed correctly via sudo make install. Here's the terminal's output:
I executed udevadm hwdb --update and trigger manually, then went to the directories to confirm the files were there and their contents seem to be fine too. .hwdb content says:
but evtest returns
So the .hwdb file is indicating to trigger code 232 when receiving keyscan 0700ed, but the system actually triggers code 115. FWIW, I'm running KDE under Mint, which I hear could be causing some weird issues in general. |
Sorry for the late reply, I'm also a bit caught up. Ok, so if I'm looking at the information you sent correctly, then it looks like the hwdb file is being installed, but udev doesn't acknowledge its existence. I don't know what's going on, but I think one possibility is that udev is expecting its configuration files to be elsewhere. Another possibility is that linux mint uses a different version of systemd that parses the configuration in an incompatible way. I can't check what exactly is wrong right now, but it might be useful if you could get the systemd version ( |
Hi there. No worries. systemctl --version returns:
|
Hello.
I'm working on daily driving linux and your tool seemed like the perfect (and kind of only, haha) option to get my keyboard running.
The board is a rebranded Apex 350 by HP and shows as
ID 1038:120a SteelSeries ApS
in lsusb and
SteelSeries SteelSeries Apex 350 HP Omen
in evtest
At first it wasn't recognized because the reported id doesn't match any of the ones in the program, but after adding it manually to steelseries.txt it seemed to work fine when testing with the lights.
The problem arises when trying to actually use the extra keys; they're all over the place (MX6, 7 and 8 are vol up, down and mute respectively, and M5 is sleep, for example).
Checking with evtest, the keyboard seems to be reporting the correct scans as listed in the hwdb files, but they're sending the wrong codes.
Some examples:
M9-12 and L1-4 all send keycode 240
M1-4 send 136, 177, 178 and 176 respectively instead of 148-151
I dug around the files a little looking for an offset of some kind or something, but I'm not really a programmer, so I don't really understand how the program works or what I'm even potentially looking for.
Any ideas on what I could try?
I can provide any further information I might've missed or is otherwise required.
The text was updated successfully, but these errors were encountered: