From be37df445912e394fab2c96476056ed2635640d5 Mon Sep 17 00:00:00 2001 From: "alexei.dolgolyov" Date: Fri, 20 Feb 2026 19:45:49 +0300 Subject: [PATCH] Calibration: pre-select device by LED count match or last remembered Co-Authored-By: Claude Sonnet 4.6 --- .../static/js/features/calibration.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/server/src/wled_controller/static/js/features/calibration.js b/server/src/wled_controller/static/js/features/calibration.js index 199be5c..de84330 100644 --- a/server/src/wled_controller/static/js/features/calibration.js +++ b/server/src/wled_controller/static/js/features/calibration.js @@ -214,6 +214,20 @@ export async function showCSSCalibration(cssId) { const testGroup = document.getElementById('calibration-css-test-group'); testGroup.style.display = devices.length ? '' : 'none'; + // Pre-select device: 1) LED count match, 2) last remembered, 3) first + if (devices.length) { + const rememberedId = localStorage.getItem('css_calibration_test_device'); + let selected = null; + if (source.led_count > 0) { + selected = devices.find(d => d.led_count === source.led_count) || null; + } + if (!selected && rememberedId) { + selected = devices.find(d => d.id === rememberedId) || null; + } + if (selected) testDeviceSelect.value = selected.id; + testDeviceSelect.onchange = () => localStorage.setItem('css_calibration_test_device', testDeviceSelect.value); + } + // Populate calibration fields const preview = document.querySelector('.calibration-preview'); preview.style.aspectRatio = '';