Other uses

There are a few other things in the firmware I improved.

First of all, there's a security problem with allowing the keyboard to be updated just like that. While Coolermasters firmware update itself has a nice window informing the user the firmware update is run, for example my own program can be run on a Linux machine which somehow has been compromised to give root access. An intruder could then happily re-flash the firmware in the keyboard without the user even noticing, inserting e.g. a keylogger into the firmware or doing another BadUSB-like attack.

To counter that, my firmware hack adds the need for a physical condition in order to enable the flash mode. Basically, you can only start a firmware update for about 10 seconds after you've pressed the key combination fn+f; if you haven't done that (for example because it's not you that initiated the flash procedure), the update fails.

Another thing that probably is nice is a method to not have every custom effect or game I want to do run on the keyboard: especially if I release this, I think enough people want to write custom effects but do not want to open their keyboard to get into the bootloader to fix a broken flash. I saw one of the USB functions was stubbed, so I decided to re-use that: in my firmware, packets with a certain command can be used to override the LED intensities the firmware sets.

I wrote a small demo with some fluid simulation running on the PC:

« Prev 6 Next »

© 2006-2022 Sprite_tm - Contact