51 Commits
Author SHA1 Message Date
Willian WangandFlorian Asche a66c0e4f28 feat: add --listen-during-wake-sound argument (#273)
* feat: add --listen-during-wake-sound argument

---------

Co-authored-by: Florian Asche <github@florian-asche.de>
2026-07-18 19:16:11 +02:00
aryanhasgithub 9b2a8b4b30 Add Tests For LVA (#312)
* Add Tests
2026-07-18 18:22:25 +02:00
Omar Amin 2d460b6728 Leds and buttons events (#266)
Use events and commands to control custom onboard leds and buttons. Can be used to communicate with an external Python script via a WebSocket API running in a container alongside LVA.
2026-07-03 19:58:45 +03:00
Omar Amin e1770d071c Update README.md 2026-07-01 02:55:40 +03:00
Omar Amin 49b0937a13 Document continue-conversation-delay 2026-07-01 02:48:25 +03:00
Omar Amin a9f0af1287 Upgrade to Python 3.13 2026-06-22 20:19:35 +03:00
Omar Amin eb29a00386 Enable dual audio input channel (#334)
This PR adds the ability to choose the microphone stream that works best with a particular STT engine using the new dual audio input channel feature.
2026-06-19 02:46:02 +03:00
Hedda 17e3ee061b Revise Assist Satellite installation instructions (#338)
Updated installation instructions for Assist Satellite app, including manual repository addition and future installation plans.
2026-06-13 02:36:31 +03:00
aryanhasgithub ec70b3b58d Add volume arg to parser (#335)
This PR adds the mic volume to the arg parser and makes the value range from 1-100
2026-06-07 18:15:05 +03:00
Omar Amin b339f76b7d Update formatting of requirements in README
Formatted requirements section for better readability.
2026-06-04 22:48:35 +03:00
Omar Amin 4ba509ab41 Revise README for clarity and hardware compatibility
Updated project description to clarify functionality and improved hardware compatibility notes.
2026-06-04 22:39:24 +03:00
Omar Amin 34edd1e67d App for HAOS (#325)
Added the app link for Home Assistant OS to the documentation.
2026-06-04 22:37:14 +03:00
Florian Asche 19c4c2337f docs(readme): restructure requirements and hardware section (#321)
Refactor the README to improve clarity by replacing the "Usage" section with a dedicated "Requirements" section. This includes:
- Adding specific hardware requirements (Microphone, CPU, Memory, Storage, OS).
- Updating recommended hardware configurations for better readability.
- Clarifying compatibility notes regarding Raspberry Pi Zero 2W and Respeaker Lite.
2026-05-14 19:34:47 +02:00
Omar Amin b1e36b0cc3 Update hardware compatibility details in README
Added requirement for 16kHz mono audio support for USB microphones to improve voice recognition performance.
2026-05-07 17:35:29 +03:00
Florian Asche 73b494275d docs(readme): add hyperlink for raspberry pi image 2026-04-22 17:47:59 +02:00
Florian Asche 2dd27e27b1 docs(readme): update tested supported python versions 2026-04-22 17:45:38 +02:00
AlecJDavidson 9192d8423b Update README.md (#303)
Fix typo in README.md
2026-04-22 00:33:56 +02:00
Omar Amin 3ea32895ee Wake word sensitivity (#207)
## Summary
- Introduces configurable wake word and stop word sensitivity
- Adds UI-controllable thresholds for wake word detection
- Refactors wake word loading and handling logic
- Improves audio preprocessing and runtime behavior

## Key Features
- Per-wake-word sensitivity configuration (Wake Word 1 & 2)
- Configurable stop word sensitivity
- Fine-grained numeric control (0.0 – 1.0, step 0.001)
- Sensitivity values exposed as Number Entities for Home Assistant
- Persistent storage of user-defined sensitivity values

## Wake Word Handling
- Support for model-specific default thresholds (`probability_cutoff`)
- Automatic fallback to defaults if no user value is set
- Separate thresholds for:
  - Wake Word 1
  - Wake Word 2
  - Stop Word
- Unified handling for MicroWakeWord and OpenWakeWord models

## UI / API Integration
- Adds new Home Assistant entities:
  - `WakeWord1SensitivityNumberEntity`
  - `WakeWord2SensitivityNumberEntity`
  - `StopWordSensitivityNumberEntity`
- Entities support:
  - Live updates
  - Persistence via preferences
  - Synchronization with runtime state
- Pushes updated values to Home Assistant on startup

## Refactoring
- Extracted wake word logic into `wake_word.py`
  - Model discovery
  - Model loading
  - Stop word handling
- Simplified `__main__.py` by delegating wake word responsibilities
- Improved separation between configuration and runtime state

## Additional Changes
- Improved debug logging across initialization and runtime

## Impact
- Enables fine-tuning of wake word detection accuracy
- Reduces false positives and missed triggers
- Improves usability via UI-based configuration
- Provides better flexibility across different environments and microphones
2026-04-21 02:04:11 +02:00
Omar Amin 0de631160e Fix formatting issues in README.md 2026-04-21 00:46:01 +02:00
Omar Amin 995da72569 Add mic-volume option to README 2026-04-16 23:52:38 +02:00
aryanhasgithub 4ee7bb04bc Add support for WebRTC Auto Gain and Noise Suppression (#250)
## WebRTC Auto Gain & Noise Suppression
 
This PR adds support for WebRTC Auto Gain and Noise Suppression as previously implemented in the Wyoming Satellite project.
 
### What's New
 
Two new entities have been created a number slider for gain and another one for noise suppression. The processing happens inside of the `webrtc.py` file and is implemented in the `__main__.py` file's `process_audio` function. The slider for gain has a limit of 0-31 and noise suppression has a limit of 0-4.
 
The Auto Gain and Noise Suppression persist through restarts and are saved as preferences. The values are dynamically chnged without needing a restart.
 
CLI flags called `--mic-auto-gain` and `--mic-noise-suppression` have also been added.
 
>  When both values are 0, WebRTC processing is bypassed entirely with no performance overhead.

Closes #25 
 
### Testing
 
When saving the audio recorded by LVA there is a noticeable increase. The following two files have been recorded with similar audio being played through them with these results (Gain-31 and NS-4):
 
| Metric | With AGC+NS | Without |
|---|---|---|
| Max amplitude | 0.329 | 0.054 |
| RMS amplitude | 0.008905 | 0.002862 |
| Volume adjustment needed | 3.034x | 13.479x |
| Rough frequency | 916 Hz | 705 Hz |
2026-04-09 00:43:11 +02:00
Florian Asche 341e3dcb9c Output only satellite - part 2 (#278)
Introduce a new `--output-only` command-line flag and corresponding `ENABLE_OUTPUT_ONLY` environment variable. This allows users to run the assistant in output-only mode, where it only supports announcements. The change includes updates to configuration examples, documentation, and the Docker entrypoint script.
2026-03-31 01:57:47 +02:00
Florian Asche 8b060d7346 docs(config): document timer max ring seconds configuration (#277) 2026-03-31 01:33:07 +02:00
Hedda 0dce320db2 Update README removing colon signs section headers (#265)
Update README to remove the colon sign from all section headers to make formatting consistant with other projects from the Open Home Foundation.
2026-03-26 16:56:44 +01:00
Hedda 496cd90a8c Revise intro to Linux-Voice-Assistant in README (#223)
* Revise intro to Linux-Voice-Assistant in README
2026-03-11 21:41:03 +01:00
Hedda be9c1220cd Enhance hardware compatibility details in README (#222)
* Enhance hardware compatibility details in README
2026-03-11 01:15:25 +01:00
Florian Asche 1fc29241b4 Add linting scripts and pipeline (#201)
* Add linting scripts and pipeline
2026-03-05 01:58:39 +01:00
Florian Asche 76308cc209 add more clear documentation on the start page (#166) 2026-02-20 19:21:53 +01:00
Florian AscheandFlorian Asche 70fab99c9f Feature/custom paths (#165)
* add possibility to add own wake words and sounds
* improve documentation

---------

Co-authored-by: Florian Asche <git@florian-asche.de>
2026-02-20 19:05:38 +01:00
Florian Asche 725c39013a Improve documentation (#141)
* add new parameter overview
* change download link for docker-compose setup to latest version
2026-02-13 19:58:15 +01:00
Florian Asche 4052daae01 hotfix for mac-detection and various variable names (#139)
* Change Client-Name: The client name inside LVA is not capable of having spaces in the name. Fixed the example.
* Add first version of Docker-Compose for developers
* Add variable for network-interface and auto detection by default
* Added autodetection for the MAC-Address based on the detected or specified network-interface.
* Switched from listening on all IP-Addresses to the IP of the default interface, usually u set the correct network-interface and it will automatically detect the right IP-Address.
* Added missing variables, fixed variables names
* Fixed not working variables for example sound-files.
* Moved the auto-name creation from shell to python. The name is no longer mandatory, it will be generated if no name is given.
2026-02-13 19:50:20 +01:00
Florian Asche 8f39a281c9 Merge pull request #31 from Hedda/patch-1 (improved documentation)
Update README.md
2026-02-12 18:10:27 +01:00
Omar Amin 1a5281380b Update badge for Open Home Foundation project 2026-02-12 15:06:25 +02:00
Omar Amin f1460cceab Update badge description in README.md 2026-02-12 15:04:49 +02:00
Omar Amin e1cc9c5b1d Add badge for Open Home Foundation standard 2026-02-12 15:02:45 +02:00
Omar Amin 027c48fd7e Add Open Home Foundation badge to README
Added badge for Open Home Foundation standard.
2026-02-12 15:01:10 +02:00
Omar Amin 6add30f9f8 Fix formatting in README.md 2026-02-12 14:52:46 +02:00
Omar Amin 75085808a8 Fix formatting in README for clarity 2026-02-12 14:50:34 +02:00
Omar Amin 9e491a9e51 Merge branch 'main' into patch-1 2026-02-12 14:48:09 +02:00
Florian Asche 5d3d82419e docs: added parameters 2026-02-09 18:09:14 +01:00
Florian Asche 8f50fcf137 fix typo in documentation 2026-02-01 21:11:33 +01:00
Florian Asche 7655d9e398 improved documentation 2026-02-01 20:20:46 +01:00
Omar Amin 405ab13abc Update README.md 2026-01-28 23:58:56 +02:00
Omar Amin 4e12be4ab6 Add sound customization
Add explanation for how to customize the default wakeup and timer sounds, and enable thinking sound on startup.
2026-01-28 23:57:39 +02:00
Michael Hansen dd97aecc7b Fix typo in README.md 2026-01-20 15:05:00 -06:00
Michael Hansen 2b04484f4c Update README 2025-10-16 17:16:16 -05:00
Hedda 6639c29d04 Update README.md
Mention aioesphomeapi library in the readme.
2025-10-02 11:17:45 +02:00
Michael Hansen 3165b0f495 More options in README 2025-09-08 14:08:01 -05:00
Michael Hansen 3bb89f7314 Add portaudio19-dev 2025-09-08 14:01:31 -05:00
Michael Hansen 4356633ed6 Rename to Linux Voice Assistant 2025-08-26 09:30:58 -05:00