From cf1cb4a32906d0603c681eb559fae2f7e5621ab2 Mon Sep 17 00:00:00 2001 From: MegaBytesMe <57240557+megabytesme@users.noreply.github.com> Date: Wed, 18 Mar 2026 22:31:53 +0000 Subject: [PATCH 1/2] Fix - Updated constructor of LogitechPerKeyRGBDevice to initialise LED layout (using `AddLed()` with placeholder grid layout) so all per-key Logitech keyboards report their LEDs. --- .../PerKey/LogitechPerKeyRGBDevice.cs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs b/RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs index edd3d950..b1123648 100644 --- a/RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs +++ b/RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs @@ -24,14 +24,25 @@ internal LogitechPerKeyRGBDevice(LogitechRGBDeviceInfo info, IUpdateQueue update : base(info, updateQueue) { this._ledMapping = ledMapping; + + InitializeLayout(); } #endregion #region Methods + private void InitializeLayout() + { + foreach ((LedId ledId, LogitechLedId mapping) in _ledMapping) + { + // TODO: Impove layout (curently places them in a grid) + AddLed(ledId, new Point(0, 0), new Size(10, 10)); + } + } + /// protected override object GetLedCustomData(LedId ledId) => _ledMapping.TryGetValue(ledId, out LogitechLedId logitechLedId) ? logitechLedId : -1; - + #endregion } \ No newline at end of file From 66597cf1b562680960f14bd6bfa0bc05994288bc Mon Sep 17 00:00:00 2001 From: Ben <57240557+megabytesme@users.noreply.github.com> Date: Thu, 19 Mar 2026 20:29:36 +0000 Subject: [PATCH 2/2] Apply suggestion from @DarthAffe (add all LEDs in a line with default key-size of 19mm) Co-authored-by: DarthAffe --- RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs b/RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs index b1123648..843140ae 100644 --- a/RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs +++ b/RGB.NET.Devices.Logitech/PerKey/LogitechPerKeyRGBDevice.cs @@ -34,11 +34,10 @@ internal LogitechPerKeyRGBDevice(LogitechRGBDeviceInfo info, IUpdateQueue update private void InitializeLayout() { + int pos = 0; + foreach ((LedId ledId, LogitechLedId mapping) in _ledMapping) - { - // TODO: Impove layout (curently places them in a grid) - AddLed(ledId, new Point(0, 0), new Size(10, 10)); - } + AddLed(ledId, new Point(pos++ * 19, 0), new Size(19, 19)); } ///