SteelSeries-CKL-App VS gamesense-sdk

Compare SteelSeries-CKL-App vs gamesense-sdk and see what are their differences.

SteelSeries-CKL-App

This app provides a GUI to send custom RGB lighting effects to SteelSeries keyboards via Python and the GameSense SDK. (by slattery-mark)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
SteelSeries-CKL-App gamesense-sdk
1 12
5 460
- 1.7%
0.0 3.1
over 2 years ago 3 months ago
Python
- -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

SteelSeries-CKL-App

Posts with mentions or reviews of SteelSeries-CKL-App. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-07-15.
  • Custom Keyboard Lighting App (Python)
    2 projects | /r/steelseries | 15 Jul 2021
    I wrote a simple little app so that you can write your own lighting effects with Python and send them to the GameSense API via a gui. I wanted to make something that would give people a way to interact with the API without having to go through and understand all the GameSense SDK documentation. All you'll need is Engine, Python, and 2 additional Python packages. You can download the app from my GitHub, the full instructions are in the readme (it's simple).

gamesense-sdk

Posts with mentions or reviews of gamesense-sdk. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-07-15.
  • ASUS ever plan to release an OLED SDK for the Azoth (and other) keyboard?
    1 project | /r/ASUS | 3 Apr 2023
    eg: SteelSeries GameSenseSDK: https://github.com/SteelSeries/gamesense-sdk
  • Reactive RGB keyboard
    1 project | /r/AskProgramming | 12 Jan 2023
    https://github.com/SteelSeries/gamesense-sdk you can read this to get further info
  • Steelseries Actuation...
    1 project | /r/steelseries | 6 Feb 2022
    SteelSeries Engine is closed source so you can't really know what data is being stored or what data isn't so I recommend instead of using a kind of program or injecting some kind of dll in it I'd recommend you check out this page which is for SteelSeries Engine Application( plugin more likely but thats what they call it ) and this github page which even has a documentation in it which I didn't read cuz I don't need it so I dont know if its really gonna help about the actuation thing but even if not, it's still gonna help you get an idea about how to do it for sure. Though if you don't know how to code, this is probably gonna be a pain so I recommend u learn how to code before doing this.
  • Just wrote a little background program, which shows the battery percentage of my Galaxy S10. Refreshes everytime the battery level changes on the phone while it's at home.
    1 project | /r/steelseries | 12 Jan 2022
    Of course! But you need to program something yourself. There are official documentations from SteelSeries, how to send things to the OLED screen: https://github.com/SteelSeries/gamesense-sdk . I wrote my program in Python, but you can use any language as it's just posting JSONs via HTTP. This was the part which just involved a little reading and trying.
  • Need help with Gamesense SDK
    1 project | /r/steelseries | 2 Aug 2021
    Hello, I'm looking at the documentation and I need someone to clear up some stuff for me. Firstly, where do I need to write code similar to this: gamesense-sdk/json-handlers-color.md at master · SteelSeries/gamesense-sdk · GitHub ? Secondly, is my entire app going to work by opening an HTML file with everything in it? And lastly, I can't quite understand how does my code connect to the Steelseries software. Thanks in advance!
  • Custom Keyboard Lighting App (Python)
    2 projects | /r/steelseries | 15 Jul 2021
    I wrote a simple little app so that you can write your own lighting effects with Python and send them to the GameSense API via a gui. I wanted to make something that would give people a way to interact with the API without having to go through and understand all the GameSense SDK documentation. All you'll need is Engine, Python, and 2 additional Python packages. You can download the app from my GitHub, the full instructions are in the readme (it's simple).
  • Live updating OLED Screen
    1 project | /r/steelseries | 29 Mar 2021
    It can indeed be done, the documentation is here: https://github.com/SteelSeries/gamesense-sdk
  • Using numpad keys as bar graphs for temperatures and load
    1 project | /r/MSILaptops | 28 Mar 2021
    import time import wmi import requests import json import os # This script depends on OpenHardwareMonitor (running). It is free and can be configured # to run at Windows start. # The SteelSeries gamesense-sdk documents can be found at https://github.com/SteelSeries/gamesense-sdk. # define the sensors to monitor and key mappings # The SENSORS_KEY_MAPPING dictionary uses the format "Sensor.Name|Sensor.SensorType". The examples # given should make the format clear. This defines what sensors should be read, and which keys # should be used to display the colour gradient. # # min_value: required integer value indicating the minimum expected value from sensor # max_value: required integer value indicating the maximum expected value from sensor # The difference between the min and max values map the value from the sensor to a guage value # between 0 and 100. # keymap: required dictionary that defines event names for gamesense-sdk, using format: # "eventname": [key_weight, key_definition, keys] # The eventname must consist of only uppercase and numbers. # The key_weight is an integer defining how much of the 0-100 scale is represented by the # key. For example, if you are using 4 equally sized keys to show the sensor value, the key_weight # would be 25 for all for eventnames (25 x 4 = 100). # The key_definition and keys values can take one of two formats. # 1) "custom-zone-keys": [keynum] # 2) "zone":"named_key_zone" # The "custom-zone-keys" are drawn from https://www.usb.org/document-library/hid-usage-tables-112, but can be # found in the included keymapping_values.txt (more reliable than named key zones). In this form, [keynum] # is an array, so you could specify multiple keys [x, y, z] or just one key [x]. # Named key zones are easier to "figure out" when reading the code, but I found they don't always match # up with the keys on the MSI Leopard GL65. Other models might work better. The named key zones can be # found at https://github.com/SteelSeries/gamesense-sdk/blob/master/doc/api/standard-zones.md. # low_colour: required value from "red", "blue", "green", and "white" # high_colour: required value from "red", "blue", "green", and "white" SENSORS_KEY_MAPPING = { "GPU Core|Temperature": { "min_value": 35, "max_value": 90, "keymap": { "GPUTEMP0": [17, "custom-zone-keys", [79]], "GPUTEMP1": [17, "custom-zone-keys", [89]], "GPUTEMP2": [16, "custom-zone-keys", [92]], "GPUTEMP3": [17, "custom-zone-keys", [95]], "GPUTEMP4": [17, "custom-zone-keys", [83]], "GPUTEMP5": [16, "custom-zone-keys", [73]] }, "low_colour":"green", "high_colour":"red" }, "GPU Core|Load": { "min_value": 0, "max_value": 100, "keymap": { "GPULOAD0": [17, "custom-zone-keys", [98]], "GPULOAD1": [17, "custom-zone-keys", [90]], "GPULOAD2": [16, "custom-zone-keys", [93]], "GPULOAD3": [17, "custom-zone-keys", [96]], "GPULOAD4": [17, "custom-zone-keys", [84]], "GPULOAD5": [16, "custom-zone-keys", [76]] }, "low_colour":"green", "high_colour":"red" }, "CPU Package|Temperature": { "min_value": 35, "max_value": 95, "keymap": { "CPUTEMP0": [17, "custom-zone-keys", [99]], "CPUTEMP1": [17, "custom-zone-keys", [91]], "CPUTEMP2": [16, "custom-zone-keys", [94]], "CPUTEMP3": [17, "custom-zone-keys", [97]], "CPUTEMP4": [17, "custom-zone-keys", [85]], "CPUTEMP5": [16, "custom-zone-keys", [75]] }, "low_colour":"blue", "high_colour":"red" }, "CPU Total|Load": { "min_value": 0, "max_value": 100, "keymap": { "CPULOAD0": [33, "custom-zone-keys", [88]], "CPULOAD1": [34, "custom-zone-keys", [87]], "CPULOAD2": [16, "custom-zone-keys", [86]], "CPULOAD3": [17, "custom-zone-keys", [78]], }, "low_colour":"blue", "high_colour":"red" }, } # define sleep duration between sensor checks sleepy_time = 3 # always posting JSON headers = {"Content-Type":"application/json"} # JSON colour configurations guage_colour = { "red": {"red":255,"green":0,"blue":0}, "green": {"red":0,"green":255,"blue":0}, "blue": {"red":0,"green":0,"blue":255}, "white": {"red":255,"green":255,"blue":255} } # Need to discover address:port from %ProgramData%\SteelSeries\SteelSeries Engine 3\coreProps.json programdata = os.getenv('PROGRAMDATA') with open(programdata + '\SteelSeries\SteelSeries Engine 3\coreProps.json') as SSEcoreProps: coreProps = json.load(SSEcoreProps) # De-register the game to clear out all events json_to_post = {"game": "HWMONITOR"} r = requests.post('http://' + coreProps['address'] + '/remove_game', json=json_to_post, headers=headers) #print(r) # Register the app with SteelSeries json_to_post = {"game": "HWMONITOR","game_display_name": "RGB HW Monitor","developer": "Kyle J Tuck"} r = requests.post('http://' + coreProps['address'] + '/game_metadata', json=json_to_post, headers=headers) #print(r) # Register the event handlers # https://github.com/SteelSeries/gamesense-sdk/blob/master/doc/api/writing-handlers-in-json.md for sensor in SENSORS_KEY_MAPPING: for event_name in SENSORS_KEY_MAPPING[sensor]['keymap']: json_to_post = {"game": "HWMONITOR", "event":event_name, "handlers":[ {"device-type":"rgb-per-key-zones", SENSORS_KEY_MAPPING[sensor]['keymap'][event_name][1]:SENSORS_KEY_MAPPING[sensor]['keymap'][event_name][2], "mode":"color", "color":{ "gradient":{ "zero": guage_colour[SENSORS_KEY_MAPPING[sensor]["low_colour"]], "hundred": guage_colour[SENSORS_KEY_MAPPING[sensor]["high_colour"]] } } }] } r = requests.post('http://' + coreProps['address'] + '/bind_game_event', json=json_to_post, headers=headers) # reset the key colour json_to_post = {"game":"HWMONITOR", "event":event_name, "data": {"value":100} } r = requests.post('http://' + coreProps['address'] + '/bind_game_event', json=json_to_post, headers=headers) json_to_post = {"game":"HWMONITOR", "event":event_name, "data": {"value":0} } r = requests.post('http://' + coreProps['address'] + '/bind_game_event', json=json_to_post, headers=headers) # print(r) # print(json_to_post) # #r = requests.post('http://' + coreProps['address'] + '/supports_multiple_game_events') # #print(r) # read the sensors while True: w = wmi.WMI(namespace="root\OpenHardwareMonitor") temperature_data = w.Sensor() for sensor in temperature_data: full_sensor_name = sensor.Name + '|' + sensor.SensorType if full_sensor_name in SENSORS_KEY_MAPPING.keys(): sensor_value = float(sensor.Value) - float(SENSORS_KEY_MAPPING[full_sensor_name]['min_value']) min_max_delta = float(SENSORS_KEY_MAPPING[full_sensor_name]['max_value'] - SENSORS_KEY_MAPPING[full_sensor_name]['min_value']) if sensor_value >= 0.0: sensor_guage = int(sensor_value / min_max_delta * 100.0) # print(full_sensor_name + ' ' + str(sensor_guage)) for event_name in SENSORS_KEY_MAPPING[full_sensor_name]['keymap']: if sensor_guage <= 0: key_value = 0 elif SENSORS_KEY_MAPPING[full_sensor_name]['keymap'][event_name][0] > sensor_guage: key_value = int(sensor_guage/SENSORS_KEY_MAPPING[full_sensor_name]['keymap'][event_name][0]*100) else: key_value = 100 json_to_post = {"game":"HWMONITOR", "event":event_name, "data": {"value":key_value} } sensor_guage -= SENSORS_KEY_MAPPING[full_sensor_name]['keymap'][event_name][0] r = requests.post('http://' + coreProps['address'] + '/game_event', json=json_to_post, headers=headers) # print(r) # print(json_to_post) time.sleep(sleepy_time)
  • Custom Apps For Steelseries Engine
    1 project | /r/steelseries | 25 Jan 2021
  • Will There Be An Engine App For Cyberpunk 2077
    1 project | /r/steelseries | 24 Jan 2021
    For information here is the full list of predefined vibrations

What are some alternatives?

When comparing SteelSeries-CKL-App and gamesense-sdk you can also consider the following projects:

headset-charge-indicator - A simple app-indicator for GNOME desktops to display the battery charge of some wireless headsets which also allows to control some functions like LEDs, sidetone and others.

rivalcfg - CLI tool and Python library to configure SteelSeries gaming mice

openage - Free (as in freedom) open source clone of the Age of Empires II engine :rocket: