diff --git a/service/10-avahi.conf b/service/10-avahi.conf deleted file mode 100644 index dc5ca11..0000000 --- a/service/10-avahi.conf +++ /dev/null @@ -1,3 +0,0 @@ -[Unit] -Wants=avahi-daemon.service -After=avahi-daemon.service diff --git a/service/10-tuning.conf b/service/10-tuning.conf deleted file mode 100644 index b5dc628..0000000 --- a/service/10-tuning.conf +++ /dev/null @@ -1,8 +0,0 @@ -# /etc/systemd/system/linux-voice-assistant.service.d/10-tuning.conf -[Service] -# Keep mpv logs at warning by default; override with environment if desired -Environment=LVA_MPV_MSG_LEVEL=all=warn - -# Faster, cleaner shutdowns -TimeoutStopSec=5s -KillMode=mixed diff --git a/service/alsa-mww-linux-voice-assistant.service b/service/alsa-mww-linux-voice-assistant.service deleted file mode 100644 index ed5e5fd..0000000 --- a/service/alsa-mww-linux-voice-assistant.service +++ /dev/null @@ -1,27 +0,0 @@ -[Unit] -Description=Linux Voice Assistant (ALSA - ReSpeaker 2mic HAT) -After=network-online.target -Wants=network-online.target - -[Service] -Type=simple -User=pi -Group=pi -WorkingDirectory=/home/pi/linux-voice-assistant - -Environment=PYTHONUNBUFFERED=1 - -# Use ALSA ReSpeaker 2mic HAT hardware device -Environment="MPV_DEFAULT_DEVICE=alsa/plughw:CARD=seeed2micvoicec,DEV=0" - -ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name 'Linux Satellite ALSA MWW' \ - --audio-input-device default \ - --audio-output-device ${MPV_DEFAULT_DEVICE} \ - --debug - -Restart=always -RestartSec=2 - -[Install] -WantedBy=multi-user.target diff --git a/service/alsa-oww-linux-voice-assistant.service b/service/alsa-oww-linux-voice-assistant.service deleted file mode 100644 index 3466db7..0000000 --- a/service/alsa-oww-linux-voice-assistant.service +++ /dev/null @@ -1,31 +0,0 @@ -[Unit] -Description=Linux Voice Assistant (ALSA - ReSpeaker 2mic HAT) -After=network-online.target wyoming-openwakeword.service -Wants=network-online.target -Requires=wyoming-openwakeword.service - -[Service] -Type=simple -User=pi -Group=pi -WorkingDirectory=/home/pi/linux-voice-assistant - -Environment=PYTHONUNBUFFERED=1 - -# Use ALSA ReSpeaker 2mic HAT hardware device -Environment="MPV_DEFAULT_DEVICE=alsa/plughw:CARD=seeed2micvoicec,DEV=0" - -ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name 'Linux Satellite ALSA OWW' \ - --audio-input-device default \ - --audio-output-device ${MPV_DEFAULT_DEVICE} \ - --wake-uri 'tcp://127.0.0.1:10400' \ - --wake-word-name 'alexa' \ - --wake-models-dir '/home/pi/wyoming-openwakeword/wyoming_openwakeword/models' - --debug - -Restart=always -RestartSec=2 - -[Install] -WantedBy=multi-user.target diff --git a/service/pa-mww-linux-voice-assistant.service b/service/pa-mww-linux-voice-assistant.service deleted file mode 100644 index 3548e3c..0000000 --- a/service/pa-mww-linux-voice-assistant.service +++ /dev/null @@ -1,33 +0,0 @@ -[Unit] -Description=Linux Voice Assistant (PulseAudio - Headphone Jack) -After=network-online.target pulseaudio.service -Wants=network-online.target -Requires=pulseaudio.service - -[Service] -Type=simple -User=pi -Group=pi -WorkingDirectory=/home/pi/linux-voice-assistant - -# Environment -Environment=PYTHONUNBUFFERED=1 -Environment="PULSE_SERVER=unix:/var/run/pulse/native" -Environment="PULSE_LATENCY_MSEC=60" -Environment="MPV_DEFAULT_DEVICE=pulse/alsa_output.platform-soc_sound.stereo-fallback" - -# Wait briefly for the Pulse native socket to be ready -ExecStartPre=/bin/sh -c 'for i in $(seq 1 40); do [ -S /var/run/pulse/native ] && exit 0; sleep 0.5; done; echo "PulseAudio socket not found" >&2; exit 1' - -# Launch the assistant -ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name 'Linux Satellite PA MWW' \ - --audio-input-device default \ - --audio-output-device ${MPV_DEFAULT_DEVICE} \ - --debug - -Restart=always -RestartSec=2 - -[Install] -WantedBy=multi-user.target diff --git a/service/pa-oww-linux-voice-assistant.service b/service/pa-oww-linux-voice-assistant.service deleted file mode 100644 index 20712fb..0000000 --- a/service/pa-oww-linux-voice-assistant.service +++ /dev/null @@ -1,36 +0,0 @@ -[Unit] -Description=Linux Voice Assistant (PulseAudio - Headphone Jack) -After=network-online.target pulseaudio.service wyoming-openwakeword.service -Wants=network-online.target -Requires=pulseaudio.service wyoming-openwakeword.service - -[Service] -Type=simple -User=pi -Group=pi -WorkingDirectory=/home/pi/linux-voice-assistant - -# Environment -Environment=PYTHONUNBUFFERED=1 -Environment="PULSE_SERVER=unix:/var/run/pulse/native" -Environment="PULSE_LATENCY_MSEC=60" -Environment="MPV_DEFAULT_DEVICE=pulse/alsa_output.platform-soc_sound.stereo-fallback" - -# Wait briefly for the Pulse native socket to be ready -ExecStartPre=/bin/sh -c 'for i in $(seq 1 40); do [ -S /var/run/pulse/native ] && exit 0; sleep 0.5; done; echo "PulseAudio socket not found" >&2; exit 1' - -# Launch the assistant -ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name 'Linux Satellite PA OWW' \ - --audio-input-device default \ - --audio-output-device ${MPV_DEFAULT_DEVICE} \ - --wake-uri 'tcp://127.0.0.1:10400' \ - --wake-word-name 'alexa' \ - --wake-models-dir '/home/pi/wyoming-openwakeword/wyoming_openwakeword/models' \ - --debug - -Restart=always -RestartSec=2 - -[Install] -WantedBy=multi-user.target diff --git a/service/pulseaudio.service b/service/pulseaudio.service deleted file mode 100644 index 174bf60..0000000 --- a/service/pulseaudio.service +++ /dev/null @@ -1,9 +0,0 @@ -[Unit] -Description=PulseAudio system server - -[Service] -Type=notify -ExecStart=pulseaudio --daemonize=no --system --realtime --log-target=journal - -[Install] -WantedBy=multi-user.target diff --git a/service/user-linux-voice-assistant.service b/service/user-linux-voice-assistant.service index ceeffcf..9c356b2 100644 --- a/service/user-linux-voice-assistant.service +++ b/service/user-linux-voice-assistant.service @@ -7,11 +7,13 @@ WorkingDirectory=/home/pi/linux-voice-assistant Environment=PYTHONUNBUFFERED=1 ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name LVA-OWW \ - --wake-word-dir wakewords/openWakeWord \ + --name 'Linux Voice Assistant' \ + --wake-word-dir wakewords/openWakeWord \ --wake-word-dir wakewords \ - --stop-model stop \ - --debug + --stop-model stop \ + --audio-input-device seeed-2mic-voicecard \ + --audio-output-device alsa/plughw:CARD=seeed2micvoicec \ + --debug Restart=always RestartSec=2 diff --git a/service/user-pa-mww-linux-voice-assistant.service.service b/service/user-pa-linux-voice-assistant.service similarity index 69% rename from service/user-pa-mww-linux-voice-assistant.service.service rename to service/user-pa-linux-voice-assistant.service index 359bef2..c8a9c17 100644 --- a/service/user-pa-mww-linux-voice-assistant.service.service +++ b/service/user-pa-linux-voice-assistant.service @@ -1,5 +1,5 @@ [Unit] -Description=Linux Voice Assistant (PulseAudio + MWW) +Description=Linux Voice Assistant (PulseAudio) After=pulseaudio.service Wants=pulseaudio.service @@ -9,7 +9,10 @@ WorkingDirectory=/home/pi/linux-voice-assistant Environment=PYTHONUNBUFFERED=1 ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name 'Linux Satellite PA' \ + --name 'Linux Voice Assistant' \ + --wake-word-dir wakewords/openWakeWord \ + --wake-word-dir wakewords \ + --stop-model stop \ --audio-input-device default \ --audio-output-device pulse/alsa_output.platform-soc_sound.stereo-fallback \ --debug diff --git a/service/user-pa-oww-linux-voice-assistant.service.service b/service/user-pa-oww-linux-voice-assistant.service.service deleted file mode 100644 index 64b1ffa..0000000 --- a/service/user-pa-oww-linux-voice-assistant.service.service +++ /dev/null @@ -1,26 +0,0 @@ -[Unit] -Description=Linux Voice Assistant (PulseAudio + OWW) -After=pulseaudio.service wyoming-openwakeword.service -Wants=pulseaudio.service wyoming-openwakeword.service -Requires=wyoming-openwakeword.service -After=wyoming-openwakeword.service - -[Service] -Type=simple -WorkingDirectory=/home/pi/linux-voice-assistant -Environment=PYTHONUNBUFFERED=1 - -ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name 'Linux Satellite PA' \ - --audio-input-device default \ - --audio-output-device pulse/alsa_output.platform-soc_sound.stereo-fallback \ - --wake-uri 'tcp://127.0.0.1:10400' \ - --wake-word-name 'alexa' \ - --wake-models-dir '/home/pi/wyoming-openwakeword/wyoming_openwakeword/models' \ - --debug - -Restart=always -RestartSec=2 - -[Install] -WantedBy=default.target diff --git a/service/user-pw-mww-linux-voice-assistant.service.service.service b/service/user-pw-linux-voice-assistant.service similarity index 68% rename from service/user-pw-mww-linux-voice-assistant.service.service.service rename to service/user-pw-linux-voice-assistant.service index 31ecb86..24a901d 100644 --- a/service/user-pw-mww-linux-voice-assistant.service.service.service +++ b/service/user-pw-linux-voice-assistant.service @@ -1,5 +1,5 @@ [Unit] -Description=Linux Voice Assistant (PipeWire + MWW) +Description=Linux Voice Assistant (PipeWire) After=pipewire.service pipewire-pulse.service Wants=pipewire-pulse.service @@ -9,7 +9,10 @@ WorkingDirectory=/home/pi/linux-voice-assistant Environment=PYTHONUNBUFFERED=1 ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name 'Linux Satellite PW MWW' \ + --name 'Linux Voice Assistant' \ + --wake-word-dir wakewords/openWakeWord \ + --wake-word-dir wakewords \ + --stop-model stop \ --audio-input-device default \ --audio-output-device pipewire/default \ --debug diff --git a/service/user-pw-oww-linux-voice-assistant.service.service b/service/user-pw-oww-linux-voice-assistant.service.service deleted file mode 100644 index 1d1623b..0000000 --- a/service/user-pw-oww-linux-voice-assistant.service.service +++ /dev/null @@ -1,26 +0,0 @@ -[Unit] -Description=Linux Voice Assistant (PipeWire + OWW) -After=pipewire.service pipewire-pulse.service wyoming-openwakeword.service -Wants=pipewire-pulse.service wyoming-openwakeword.service -Requires=wyoming-openwakeword.service -After=wyoming-openwakeword.service - -[Service] -Type=simple -WorkingDirectory=/home/pi/linux-voice-assistant -Environment=PYTHONUNBUFFERED=1 - -ExecStart=/home/pi/linux-voice-assistant/script/run \ - --name 'Linux Satellite Test PW' \ - --audio-input-device default \ - --audio-output-device pipewire/default \ - --wake-uri 'tcp://127.0.0.1:10400' \ - --wake-word-name 'alexa' \ - --wake-models-dir '/home/pi/wyoming-openwakeword/wyoming_openwakeword/models' \ - --debug - -Restart=always -RestartSec=2 - -[Install] -WantedBy=default.target diff --git a/service/user-wyoming-openwakeword.service.service b/service/user-wyoming-openwakeword.service.service deleted file mode 100644 index 56af08a..0000000 --- a/service/user-wyoming-openwakeword.service.service +++ /dev/null @@ -1,25 +0,0 @@ -[Unit] -Description=Wyoming openWakeWord - -[Service] -Type=simple -WorkingDirectory=/home/pi/wyoming-openwakeword - -ExecStart=/usr/bin/env bash -lc '\ - cd /home/pi/wyoming-openwakeword && \ - exec ./script/run \ - --uri tcp://0.0.0.0:10400 \ - --models-dir /home/pi/wyoming-openwakeword/wyoming_openwakeword/models \ - \ - --preload-model alexa_v0.1 --threshold 0.5 --trigger-level 3 \ - --preload-model hey_jarvis_v0.1 --threshold 0.5 --trigger-level 3 \ - --preload-model hey_mycroft_v0.1 --threshold 0.5 --trigger-level 3 \ - --preload-model hey_rhasspy_v0.1 --threshold 0.5 --trigger-level 3 \ - --preload-model ok_nabu_v0.1 --threshold 0.5 --trigger-level 3 \ -' - -Restart=always -RestartSec=2 - -[Install] -WantedBy=default.target diff --git a/service/wyoming-openwakeword.service b/service/wyoming-openwakeword.service deleted file mode 100644 index bfdeefa..0000000 --- a/service/wyoming-openwakeword.service +++ /dev/null @@ -1,27 +0,0 @@ -# /etc/systemd/system/wyoming-openwakeword.service -[Unit] -Description=Wyoming openWakeWord -After=network-online.target -Wants=network-online.target - -[Service] -Type=simple -User=pi -WorkingDirectory=/home/pi/wyoming-openwakeword -ExecStart=/usr/bin/env bash -lc '\ - cd /home/pi/wyoming-openwakeword && \ - exec ./script/run \ - --uri tcp://0.0.0.0:10400 \ - --models-dir /home/pi/wyoming-openwakeword/wyoming_openwakeword/models \ - \ - --preload-model alexa_v0.1 --threshold 0.5 --trigger-level 3 \ - --preload-model hey_jarvis_v0.1 --threshold 0.5 --trigger-level 3 \ - --preload-model hey_mycroft_v0.1 --threshold 0.5 --trigger-level 3 \ - --preload-model hey_rhasspy_v0.1 --threshold 0.5 --trigger-level 3 \ - --preload-model ok_nabu_v0.1 --threshold 0.5 --trigger-level 3 \ -' -Restart=always -RestartSec=2 - -[Install] -WantedBy=multi-user.target