3rd party gaming keyboard backlight button?

So i just purchased a 3rd party CM Storm Devastator keyboard and it is compatible for both PC and Mac, it is a pc keyboard but i just remapped the keys so its all good, but the backlight toggle is on the SCROLL LOCK button. For some reason when I press the SCROLL LOCK button it doesn't turn on. When I plugged the keyboard into my sisters's PC (eww pc) the SCROLL LOCK button for the backlight worked perfectly. Is there a separate command for Macs to activate scroll lock? Thanks.

MacBook Pro, OS X Mountain Lion (10.8.2)

Posted on Jan 11, 2014 3:28 PM

Reply
18 replies

Feb 22, 2014 10:57 AM in response to Teddylift

Hello Teddylift,


i've the same keyboard.

my solution at this moment is this sample HID code.


https://github.com/darcyliu/CocoaSampleCode/raw/master/HID_LED_test_tool/build/R elease/HID%20LED%20test%20tool


you can start it in a terminal-window.


it will turn on and of all the led's of your keyboard. then you can stop the program (at the moment when "scroll_lock" led is lid) by ctrl-c.


i know that's not really comfortable (and of course not professionell)...


but it works 😉


regards...

Jun 23, 2014 1:49 PM in response to NfslittleDEMON

Hey there,


All I did was download the HID LED test tool kit here:

https://developer.apple.com/library/mac/samplecode/HID_LED_test_tool/Introductio n/Intro.html


From there I opened up the folder 'Build'.


From 'Build" I opened up the 'Release' folder.


Once 'release' was opened, the terminal popped up with the bit of aforementioned output posted by ninja. The keyboard was cycling and blinking. Once all the keys are lit up hit 'ctrl + C' to terminate the the terminal. The keyboard should stay lit.

May 26, 2014 12:00 PM in response to cameraman_matt

For @camerman_mat and others:


I just bought the CM Storm Devastator keyboard yesterday, and I think its stupid that they don't have a mac solution for setting the keyboard backlight. I am in the process of writting a simple GUI application for OSX based on HID LED Test Tool to set the keyboard backlight status. I will post it up when its done if anyone wants to give it a shot. I think it will help most people. In the meantime, below I have sumed up the steps I followed to get this working for me. All credit goes to above posters.


Instructions:

  1. Download https://github.com/darcyliu/CocoaSampleCode/raw/master/HID_LED_test_tool/build/R elease/HID%20LED%20test%20tool
  2. Rename the file to : "HID" or something simple for now
  3. Go to the directory you downloaded the file using terminal : Ex) cd ~/Downloads/
  4. In terminal type: ./HID


If everything works, you should see your keyboard cycle through backlight states. Once it is lit, press ctrl+C to end the program. Everytime you want to change the keyboard backlight status run ./HID and press ctrl+C when you want it to stay at its current state.


Note:

If ./HID fails to run, make sure you change the permissions on the HID file to exectuable.

In terminal: chmod 777 HID then re run step 4

Mar 4, 2014 10:35 PM in response to Jenketsu

Hello Jenketsu,


it's not my code. i've just found it on the internet.

for me it works.

I've a 3rd party CM Storm Devastator keyboard.

In a Windows enviroment the backlit can be switched on/off by the "scroll lock" key.

In Linux the backlit can be switched on/off by the "scroll lock" key too (but before it works this function must be activated by command "xmodmap -e 'add mod3 = Scroll_Lock'").

In MacOSX 10.9.2 i've found these HID-LED-test-tool.


The HID-LED-test-tool generates some output:


as you can see there are two "device" entries. the second one seems to be the external CM Storm Keyboard. the backlight is on, when the the third value is "0x000000001".


regards...



pass = 0.

device = 0x52a170.

element = 0x52a460 (page: 8, usage: 1, type: 129 ).

value = 0x00000000.

element = 0x52a590 (page: 8, usage: 2, type: 129 ).

value = 0x00000000.

element = 0x52a5e0 (page: 8, usage: 3, type: 129 ).

value = 0x00000000.

element = 0x52a660 (page: 8, usage: 4, type: 129 ).

value = 0x00000000.

element = 0x52a6a0 (page: 8, usage: 5, type: 129 ).

value = 0x00000000.

device = 0x529df0.

element = 0x52a7e0 (page: 8, usage: 1, type: 129 ).

value = 0x00000000.

element = 0x52a820 (page: 8, usage: 2, type: 129 ).

value = 0x00000000.

element = 0x52a860 (page: 8, usage: 3, type: 129 ).

value = 0x00000000.

pass = 1.

device = 0x52a170.

element = 0x52a460 (page: 8, usage: 1, type: 129 ).

value = 0x00000001.

element = 0x52a590 (page: 8, usage: 2, type: 129 ).

value = 0x00000000.

element = 0x52a5e0 (page: 8, usage: 3, type: 129 ).

value = 0x00000000.

element = 0x52a660 (page: 8, usage: 4, type: 129 ).

value = 0x00000000.

element = 0x52a6a0 (page: 8, usage: 5, type: 129 ).

value = 0x00000000.

device = 0x529df0.

element = 0x52a7e0 (page: 8, usage: 1, type: 129 ).

value = 0x00000001.

element = 0x52a820 (page: 8, usage: 2, type: 129 ).

value = 0x00000000.

element = 0x52a860 (page: 8, usage: 3, type: 129 ).

value = 0x00000000.

pass = 2.

device = 0x52a170.

element = 0x52a460 (page: 8, usage: 1, type: 129 ).

value = 0x00000000.

element = 0x52a590 (page: 8, usage: 2, type: 129 ).

value = 0x00000001.

element = 0x52a5e0 (page: 8, usage: 3, type: 129 ).

value = 0x00000000.

element = 0x52a660 (page: 8, usage: 4, type: 129 ).

value = 0x00000000.

element = 0x52a6a0 (page: 8, usage: 5, type: 129 ).

value = 0x00000000.

device = 0x529df0.

element = 0x52a7e0 (page: 8, usage: 1, type: 129 ).

value = 0x00000000.

element = 0x52a820 (page: 8, usage: 2, type: 129 ).

value = 0x00000001.

element = 0x52a860 (page: 8, usage: 3, type: 129 ).

value = 0x00000000.

pass = 3.

device = 0x52a170.

element = 0x52a460 (page: 8, usage: 1, type: 129 ).

value = 0x00000001.

element = 0x52a590 (page: 8, usage: 2, type: 129 ).

value = 0x00000001.

element = 0x52a5e0 (page: 8, usage: 3, type: 129 ).

value = 0x00000000.

element = 0x52a660 (page: 8, usage: 4, type: 129 ).

value = 0x00000000.

element = 0x52a6a0 (page: 8, usage: 5, type: 129 ).

value = 0x00000000.

device = 0x529df0.

element = 0x52a7e0 (page: 8, usage: 1, type: 129 ).

value = 0x00000001.

element = 0x52a820 (page: 8, usage: 2, type: 129 ).

value = 0x00000001.

element = 0x52a860 (page: 8, usage: 3, type: 129 ).

value = 0x00000000.

pass = 4.

device = 0x52a170.

element = 0x52a460 (page: 8, usage: 1, type: 129 ).

value = 0x00000000.

element = 0x52a590 (page: 8, usage: 2, type: 129 ).

value = 0x00000000.

element = 0x52a5e0 (page: 8, usage: 3, type: 129 ).

value = 0x00000001.

element = 0x52a660 (page: 8, usage: 4, type: 129 ).

value = 0x00000000.

element = 0x52a6a0 (page: 8, usage: 5, type: 129 ).

value = 0x00000000.

device = 0x529df0.

element = 0x52a7e0 (page: 8, usage: 1, type: 129 ).

value = 0x00000000.

element = 0x52a820 (page: 8, usage: 2, type: 129 ).

value = 0x00000000.

element = 0x52a860 (page: 8, usage: 3, type: 129 ).

value = 0x00000001.

pass = 5.

device = 0x52a170.

element = 0x52a460 (page: 8, usage: 1, type: 129 ).

value = 0x00000001.

element = 0x52a590 (page: 8, usage: 2, type: 129 ).

value = 0x00000000.

element = 0x52a5e0 (page: 8, usage: 3, type: 129 ).

value = 0x00000001.

element = 0x52a660 (page: 8, usage: 4, type: 129 ).

value = 0x00000000.

element = 0x52a6a0 (page: 8, usage: 5, type: 129 ).

value = 0x00000000.

device = 0x529df0.

element = 0x52a7e0 (page: 8, usage: 1, type: 129 ).

value = 0x00000001.

element = 0x52a820 (page: 8, usage: 2, type: 129 ).

value = 0x00000000.

element = 0x52a860 (page: 8, usage: 3, type: 129 ).

value = 0x00000001.

pass = 6.

device = 0x52a170.

element = 0x52a460 (page: 8, usage: 1, type: 129 ).

value = 0x00000000.

element = 0x52a590 (page: 8, usage: 2, type: 129 ).

value = 0x00000001.

element = 0x52a5e0 (page: 8, usage: 3, type: 129 ).

value = 0x00000001.

element = 0x52a660 (page: 8, usage: 4, type: 129 ).

value = 0x00000000.

element = 0x52a6a0 (page: 8, usage: 5, type: 129 ).

value = 0x00000000.

device = 0x529df0.

element = 0x52a7e0 (page: 8, usage: 1, type: 129 ).

value = 0x00000000.

element = 0x52a820 (page: 8, usage: 2, type: 129 ).

value = 0x00000001.

element = 0x52a860 (page: 8, usage: 3, type: 129 ).

value = 0x00000001.

Mar 7, 2014 12:23 AM in response to Jenketsu

Nice 🙂


In addition i've found this here too ->


http://apple.stackexchange.com/questions/23308/osx-does-not-recognize-the-scroll -lock-key-on-my-external-usb-keyboard


It takes the same sample code from the HID+LED+test+tool.


I've tried to compile this code in XCODE 5 on OSX 10.9.2 Mavericks. But without succes yet.


A Dock Icon would be much better. May'be someone other can do the compile-job here?


regards...

May 16, 2014 9:39 AM in response to ninjasiat

Hi, I've been looking through all these posts and I'm still really lost on what to do! 😝 I've downloaded HID_LED_test_tool but when I open It, It doesn't have the same code as the one you've posted above. I'm a bit of a nOOb to coding or anything like that so could anyone poosibly break it down for me? just give me a little step by step thing I can follow? I'll be incredibly grateful if anyone can help!


Thanks.

Jun 16, 2014 8:27 PM in response to Commander147

Adding confirmation and thanks to those that posted the solution. I had the same keyboard, same issue. Commander147's instructions worked like a champ on my vintage 2006 Mac Mini running OS X 10.6.8. For convenience I created an alias (right-click menu option on the downloaded file) and dragged it to the dock. Extra heads-up: you can't drag it to the left side of the dock with the apps, but you can drag it to the right side next to the trash bin.


Big thanks to those who found, tested and *posted* a working solution!

Jul 21, 2014 1:40 PM in response to Jenketsu

I've tried this on my mac, running OSx 10.9.4 and it did not work for me. the terminal says this after i open the file:


HID_LED_test_tool/build/Release/HID\ LED\ test\ tool ; exit;

pass = 0.

device = 0x127e90.

Trace/BPT trap: 5

logout


[Process completed]


None of the lights cycle through, at all, the backlighting just stays turned off. Please help?

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

3rd party gaming keyboard backlight button?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.