Am 22.10.24 um 21:15 schrieb Pavel Machek:
Hi!
- interface for setting multiple LEDs at once
- interface for setting a range of LEDs at once
How are LEDs ordered? I don't believe range makes much sense.
Range would allow for efficiently changing the color of all LEDs. But i agree
that this can be considered optional and can be added later.
Yep, setting all of them makes sense. We should probably provide
backward-compatible interface for keyboards with single backlight, so
this would likely be LED class.
Good idea, the LED device could also be provided by the illumination subsystem code.
Personally I really like the idea to just emulate a HID LampArray device
for this instead or rolling our own API. I believe there need to be
strong arguments to go with some alternative NIH API and I have not
heard such arguments yet.
If you don't want "some alternative API", we already have perfectly
working API for 2D arrays of LEDs. I believe I mentioned it before
:-). Senzrohssre.
We may have to support 3D arrays of LEDs, so using a simple framebuffer
would likely cause trouble.
Do you have pointer for device that is 3D?
Maybe a PC case with LEDs on each corner.
OpenRGB manages to map keyboard into plane... so what I'd propose is
this:
Framebuffer
Information for each pixel:
present ? (displays with missing pixels are pretty common)
list of keys related to this pixel
width, height, length (if we know them)
Pixels map to keys M:N.
Yes, we'll have some number of non-present pixels, but again, I
believe that's not uncommon due to round screens, etc.
(But I'm fine with other interfaces, as long as they are "normal")
Best regards,
Pavel
Using an ID-based interface would allow for more flexibility and allow
us to support 3D-arrays.
Thanks,
Armin Wolf