Hey there, for my free open source project I'm developing a software feature to use the RGB LEDs that can be found around the joysticks on gaming handhelds like the ROG Ally, Ayaneo and others for bias lighting. Example:
ROG-Ally-Bias-Lighting-Test02
streamable.com
Kena-Average-Color-Test
streamable.com
I have all the basics working:
- At 30 FPS, interpret the screen, determine average color near the top left and right middle
- Average out the colors of the last 5 frames for smoothing
- Update the LEDs around the left and right joystick accordingly
What I could use help with:
- LED color calibration. My LEDs are a bit off, so red on the screen, turns into pink for the LEDs, even though the LED has a proper red color. Same for greens and white but blue is pretty good. I've been digging around the internet and it seems I could make something of an offset map/look up table and depending on which color is closest, do some linear interpolation, but I'm not sure. How does Hyperion do this? Could someone link me to the code in question?
- Gaming specific. As this feature will mostly be used during gaming, does anyone have some specific recommendations for features or considerations when it comes to gaming?
Link to the FOSS project: Handheld Companion