Skip to content
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

Trying this with Apex 150 #26

Open
Borancer opened this issue Feb 21, 2019 · 5 comments
Open

Trying this with Apex 150 #26

Borancer opened this issue Feb 21, 2019 · 5 comments

Comments

@Borancer
Copy link

shows like this:
udo msiklm list
Device: SteelSeries Apex 150 Gaming Keyboard
Device Vendor ID: 4152
Device Product ID: 5654
Device Serial Number: (null)
Device Manufaturer: SteelSeries
Device Path: 0001:0005:00
Device Interface Number: 0
Device Release Number: 24

Device: SteelSeries Apex 150 Gaming Keyboard
Device Vendor ID: 4152
Device Product ID: 5654
Device Serial Number: (null)
Device Manufaturer: SteelSeries
Device Path: 0001:0005:01
Device Interface Number: 1
Device Release Number: 24

Also then changed msiklm.c file so it patches with ID
It looks like this:
bool keyboard_found()
{
hid_device* keyboard = open_keyboard();
if (keyboard != NULL)
{
hid_close(keyboard);
return true;
}
else
{
return false;
}
}

/**

  • @brief tries to open the MSI gaming notebook's SteelSeries keyboard
  • @returns a corresponding hid_device, null if the keyboard was not detected
    /
    hid_device
    open_keyboard()
    {
    if (hid_init() == 0)
    return hid_open(4152, 5654, 0);
    else
    return NULL;

And after editing and saving this file it still can't detect my keyboard

sudo msiklm test
No compatible keyboard found!

It should even find it right?

@Gibtnix
Copy link
Owner

Gibtnix commented Feb 21, 2019

After changing the IDs accordingly your keyboard should at least be detected - calling 'sudo msiklm test' should work. However, changing the lines is not sufficient, you will have to recompile the program. This is not a script that will be interpreted, it will compiled into the binary, the source file itself is not needed for at all, once you built the binary. So if you change it, recompile the program and your keyboard should at least be detected.
However I doubt that anything will work, but of course fell free to give it a try and to tell me about your success, good luck!

@Borancer
Copy link
Author

http://i.imgur.com/BF9O9aL.png
http://i.imgur.com/5OEDZRu.png
Should be correct right? I don't know why or should just reinstall it.

Already tried other methods like msi-keyboard, running steelseries engine with wine and so on. Also unfortunately i'm not in that lvl in programming that i could do anything like that.

@Borancer
Copy link
Author

I just feel im useless. I tried it both ways. Using those numbers from lsusb and also those msiklm ids. Dunno why it still says not compatible like it doenst necessarily mean it isnt found but well eh.

@Gibtnix
Copy link
Owner

Gibtnix commented Feb 22, 2019

No problem... You installed the program as mentioned in the instructions (probably using the install script). This will compile the binary using the included version of the source files. If you change the source files after the program was already built, it will have no effect to the existing program.

If you want to modify the source code, do it and run the install script after doing so, e.g. again execute 'install.sh'. This will recompile the program including your modifications. Hope this helps :-)

@Gibtnix
Copy link
Owner

Gibtnix commented Feb 24, 2019

Quickly coming back to your issue: I just tested it myself, if you change the IDs as you mentioned and recompile the program, the keyboard will be found. So please reinstall the program after changing the code and it will find the keyboard. However I doubt that the commands will work, but that's a different story.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants