From 75ba5481b6852f12cbca2affefca014025ba9ee3 Mon Sep 17 00:00:00 2001 From: sirmrak Date: Wed, 20 May 2026 11:41:06 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20=D1=8F=D1=80=D0=BA=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D1=8C=20DoA=20=D1=8D=D1=84=D1=84=D0=B5=D0=BA=D1=82=D0=B0=20?= =?UTF-8?q?=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20=D0=BC=D0=B0=D1=81=D1=88=D1=82?= =?UTF-8?q?=D0=B0=D0=B1=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20?= =?UTF-8?q?=D1=86=D0=B2=D0=B5=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Для LED_EFFECT=4 (DoA) команда LED_BRIGHTNESS не работает. Яркость управляется через значения цветов в LED_DOA_COLOR. Изменения: - Масштабирование base_color и doa_color по brightness (0-255) - Формат цвета: 0xBBGGRR (BGR byte order) - Комментарии на русском согласно .qwen/qwen.md Co-authored-by: Qwen-Coder --- examples/wyoming-led.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/examples/wyoming-led.py b/examples/wyoming-led.py index 6cc2777..43d886e 100644 --- a/examples/wyoming-led.py +++ b/examples/wyoming-led.py @@ -139,10 +139,19 @@ def set_led_state(state: str, skip_publish=False): run_xvf_command("LED_BRIGHTNESS", [brightness]) logger.info(f"🟢 Speaking: зелёный ({brightness})") elif state == "idle": + # DoA эффект: яркость управляется через значения цвета, а не LED_BRIGHTNESS + # Масштабируем цвета по яркости (0-255) + base_r = int(0x30 * brightness / 255) + base_g = int(0x30 * brightness / 255) + base_b = int(0x30 * brightness / 255) + doa_r = int(0x00 * brightness / 255) + doa_g = int(0xBC * brightness / 255) + doa_b = int(0xD4 * brightness / 255) + base_color = f"0x{base_b:02X}{base_g:02X}{base_r:02X}" + doa_color = f"0x{doa_b:02X}{doa_g:02X}{doa_r:02X}" run_xvf_command("LED_EFFECT", [4]) - run_xvf_command("LED_DOA_COLOR", ["0x303030", "0x00BCD4"]) - run_xvf_command("LED_BRIGHTNESS", [brightness]) - logger.info(f"⚪ Idle: DoA ({brightness})") + run_xvf_command("LED_DOA_COLOR", [base_color, doa_color]) + logger.info(f"⚪ Idle: DoA (brightness={brightness}, base={base_color}, doa={doa_color})") elif state == "paused": run_xvf_command("LED_EFFECT", [1]) run_xvf_command("LED_COLOR", ["0x404040"])