19a11aac6e6c8d7b0402137a791b63636869b257
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>
README — VoskWyoming Satellite
Удалённый голосовой спутник, использующий Wyoming protocol для Home Assistant.
Возможности
- 🏠 Интеграция с Home Assistant — Нативная поддержка Wyoming протокола
- 🎤 Локальная детекция wake word — Vosk, русские фразы ("привет дроид" и др.)
- 🔇 Аудио улучшения — Шумоподавление WebRTC и автоматическое усиление
- 💡 MQTT LED управление — ReSpeaker XVF3800 4-MIC с авто-обнаружением HA
- 🎯 Voice Activity Detection — Silero или WebRTC VAD для приватной работы
Быстрый старт
1. Установка
git clone <repository-url> ~/projects/Satellite
cd ~/projects/Satellite
python3 -m venv ~/.venv_satellite
source ~/.venv_satellite/bin/activate
pip install -r requirements.txt
2. Установка systemd сервисов
sudo ./install_systemd_services.sh
3. Запуск
sudo systemctl enable --now wyoming-satelite-vosk.service
sudo systemctl status wyoming-satelite-vosk.service
В Home Assistant: Настройки → Устройства и сервисы → Найдено → Wyoming Satellite → Настроить
Документация
| Руководство | Описание |
|---|---|
| Развёртывание | Полное руководство по развёртыванию |
| Tutorials | Пошаговые руководства для разного оборудования |
| Архитектура | Как работает Wyoming Satellite |
| MQTT LED | LED управление с Home Assistant |
| VAD/Wake интеграция | Техническое руководство |
| Настройки | Шпаргалка по CLI флагам |
Tutorials
- 2-MIC HAT — Raspberry Pi + ReSpeaker 2-MIC HAT
- Установщик — Интерактивный установщик
Требования
- Python 3.9+
- Linux (протестировано на Raspberry Pi OS)
- Микрофон (USB или HAT)
- Опционально: ReSpeaker XVF3800 USB 4-MIC Array (для LED управления)
Структура проекта
Satellite/
├── wyoming_satellite/ # Основной Python пакет
├── examples/ # Примеры скриптов (LED, MQTT, конфиги)
├── services/ # systemd сервис файлы
├── docs/ # Документация
│ ├── tutorials/ # Руководства по оборудованию
│ ├── integration/ # Технические руководства
│ ├── deployment/ # Руководства по развёртыванию
│ └── architecture/ # Документация по архитектуре
├── sounds/ # Аудио файлы (awake.wav и др.)
├── scripts/ # Вспомогательные скрипты
└── tests/ # Юнит тесты
Конфигурация
Wake words (русские)
Отредактируйте start_satellite.sh:
--wake-word-name "привет дроид"
--wake-word-name "привет придурок"
--wake-word-name "привет жопа с ушами"
Аудио настройки
--mic-noise-suppression 2
--mic-auto-gain 5
VAD настройки
--vad
--vad-system webrtc
--vad-threshold 0.5
Разработка
# Линтинг
pylint wyoming_satellite/
mypy wyoming_satellite/
# Тесты
pytest tests/
# Форматирование
black wyoming_satellite/
isort wyoming_satellite/
Видео уроки
Внешние ресурсы
License
Этот проект является частью экосистемы Open Home Foundation.
Languages
Python
93.5%
Shell
6.3%
Dockerfile
0.2%
