feat: Multi-event server support + USB LED controller
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 модуля
This commit is contained in:
@@ -152,10 +152,11 @@ python3 examples/wyoming-led.py --debug
|
||||
|
||||
```bash
|
||||
# Проверка USB устройств
|
||||
lsusb | grep -i respeaker
|
||||
lsusb | grep -i 2886
|
||||
|
||||
# Тест xvf_host.py
|
||||
python3 examples/xvf_host.py --help
|
||||
# Тест USB контроллера
|
||||
source ~/.venv_satellite/bin/activate
|
||||
python3 -c "from wyoming_satellite.xvf_usb import XVF3800Controller; c = XVF3800Controller(); print('OK' if c.is_connected() else 'Not found')"
|
||||
```
|
||||
|
||||
## Поддерживаемое оборудование
|
||||
@@ -170,10 +171,29 @@ python3 examples/xvf_host.py --help
|
||||
## Связанные файлы
|
||||
|
||||
- `examples/wyoming-led.py` — Основной скрипт LED управления
|
||||
- `examples/xvf_host.py` — Драйвер ReSpeaker XVF3800
|
||||
- `wyoming_satellite/xvf_usb.py` — USB контроллер XVF3800 (прямой доступ без subprocess)
|
||||
- `examples/led_brightness_config.json` — Настройки яркости
|
||||
- `services/wyoming-event.service` — Сервис событий (альтернатива)
|
||||
|
||||
## Архитектура USB контроллера
|
||||
|
||||
Начиная с версии 2026.05, `wyoming-led.py` использует прямой USB доступ через модуль `wyoming_satellite.xvf_usb`:
|
||||
|
||||
**Преимущества:**
|
||||
- ✅ Быстрее: ~1ms на команду (нет накладных расходов subprocess)
|
||||
- ✅ Надёжнее: контроль USB подключения с авто-переподключением
|
||||
- ✅ Чище: нет процессов subprocess и временных файлов
|
||||
|
||||
**Пример использования:**
|
||||
```python
|
||||
from wyoming_satellite.xvf_usb import XVF3800Controller, EFFECT_BREATH, rgb_to_bgr_int
|
||||
|
||||
controller = XVF3800Controller()
|
||||
controller.set_led_effect(EFFECT_BREATH)
|
||||
controller.set_led_color(rgb_to_bgr_int(0, 188, 212)) # бирюзовый
|
||||
controller.set_led_brightness(150)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔗 Связанное
|
||||
|
||||
Reference in New Issue
Block a user