DoA эффект:
- base_color: 0x303030 (серый, без масштабирования)
- doa_color: 0xD4BC00 (бирюзовый, без масштабирования)
- brightness: управляется отдельно через set_led_brightness()
Это как в оригинале до изменений яркости.
Проблема: после перехода на set_led_doa_color() яркость
не устанавливалась отдельно, поэтому LED не работали.
Решение:
- led_controller.set_led_brightness(brightness) после set_led_doa_color()
Восстановлено поведение как в оригинале:
LED_EFFECT [4] → LED_DOA_COLOR → LED_BRIGHTNESS
New features:
- wyoming_satellite/xvf_usb.py — прямой USB доступ к XVF3800 без subprocess
- docs/development/multi-event-server-plan.md — план разработки event server
- examples/respeaker_usb_mic_array.py — исходный файл с LED анимациями
Documentation updates:
- DEPLOY.md — добавлена секция про LED управление и event server план
- docs/integration/mqtt-led.md — обновлена документация по USB и event server
- docs/deployment/systemd-services.md — добавлен event server раздел
Refactoring:
- examples/wyoming-led.py — замена subprocess на XVF3800Controller
- install_service.sh — удалён (устарел, используется install_systemd_services.sh)
Bug fixes:
- wyoming-led.py — яркость DoA эффекта через масштабирование цвета
- systemd сервис — добавлена поддержка wyoming_satellite.xvf_usb модуля
Для 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 <qwen-coder@alibabacloud.com>
Port LED effects from respeaker_usb_mic_array.py to example_led.py:
- Replace built-in XVF3800 effects with custom frame-by-frame animations
- Use LED_RING_COLOR command (resid=20, cmdid=19) for direct LED control
- Implement 11 animations matching home-assistant-voice.yaml:
- off, twinkle, twinkle_blue, waiting, listening, thinking,
replying, muted, error, timer_tick, timer_ring
- Muted indicator: 4 red LEDs at mic positions (0°, 90°, 180°, 270°)
- Timer tick: arc shows remaining time with sweep marker
- Add --test mode for hardware verification
- Add --verbose flag for INFO logging
- Enhanced USB diagnostics and error reporting
Technical changes:
- set_led_frame() sends 12×uint32 colors in 0xBBGGRR format
- RGB tuples with _scale() for brightness control
- _pulse_step() for smooth pulsing effects
- _apply_mic_indicators() for muted state visualization
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>