From 6e973965b14bceb5b245e8b20515a896b9777e3d Mon Sep 17 00:00:00 2001 From: "alexei.dolgolyov" Date: Wed, 18 Feb 2026 21:22:00 +0300 Subject: [PATCH] Fix calibration side test not applying LED offset rotation The test mode pixel array was built from segment positions but never rotated by the configured offset, causing LEDs to light up on the wrong side. Apply the same offset rotation used in the normal rendering pipeline. Co-Authored-By: Claude Opus 4.6 --- .../wled_controller/core/processing/processor_manager.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/server/src/wled_controller/core/processing/processor_manager.py b/server/src/wled_controller/core/processing/processor_manager.py index d5d5859..c7741a8 100644 --- a/server/src/wled_controller/core/processing/processor_manager.py +++ b/server/src/wled_controller/core/processing/processor_manager.py @@ -506,6 +506,12 @@ class ProcessorManager: pixels[i] = color break + # Apply offset rotation (same as Phase 2 in PixelMapper.map_border_to_leds) + total_leds = ds.calibration.get_total_leds() + offset = ds.calibration.offset % total_leds if total_leds > 0 else 0 + if offset > 0: + pixels = pixels[-offset:] + pixels[:-offset] + try: active_client = self._find_active_led_client(device_id) if active_client: