Voice in Home Assistant

Control HA with your voice without any cloud integration

I am running Home Assistant Core using the docker container, Is there any way that we HA-core peasants to run the add-ons for Whisper and Piper?

I have been using Raspberry Pi Zero, 3A and 3B models with Rhasspy as voice assistant satellites, and decided now is the time to swap to HA Voice Assist.

https://github.com/rhasspy/piper

 

 

or

https://github.com/rhasspy/wyoming-faster-whisper

https://github.com/rhasspy/wyoming-piper  

 

The easier way is to use official docker image and you can run it on another host if you want, just specify the right IP address and ports when you will configure the integrations.

Im running Home Assistant in a Docker container behind a reverse proxy. I’ve installed external Piper and Whisper containers (rhasspy/wyoming-whisper, rhasspy/wyoming-piper) and connected them through up the wyoming protocol integration. 

Table of Contents

 

Quick start

Step 1, we need to install Whisper and Piper.

When install piper in your network you have three  options

Option

Install wyoming-piper and wyoming-faster-whisper locally with Python virtual environment detail

Install piper locally (and also whisper), with docker detail

Install piper locally (and also whisper), with add-on detail

 

 

Step 2,Run Whisper, Piper, and OpenWakeWord on external server -> external voice services

Run a single-container speech-to-text service on Docker

Run a single-container text-to-speech service on Docker

Step 3,Connect it to home assistant core via  wyoming integration -> connects external voice services to Home Assistant

Step 4,Exposing your devices to Assist.

 

Hardware

A voice assistant  needs hardware.such as Android phone or  ESP32-S3-BOX or ESP32-S3-BOX-Lite

Software

 docker image of the Whisper, Piper, and OpenWakeWord。https://hub.docker.com/r/rhasspy/wyoming-whisper

 

step by step

step 1.Run Whisper, Piper, and OpenWakeWord on external server

Run Whisper, Piper, and OpenWakeWord with Docker.Pull the container,change path to your path and run it.

step 2.Connect it to home assistant core via  wyoming integration

 

Just use the ha core  and setup the wyoming integration. For host I selected localhost and for port  pointed at port10200 and 10300

Whisper and piper arre recognized in home assistant.

detail:https://www.matterxiaomi.com/boards/topic/15742/local-voice-functionality-in-home-assistant-corehow-to-manually-install-piper-and-whisper-on-home-as#22680

The Wyoming integration connects external voice services to Home Assistant using a small protocol.

http://localhost:4999/boards/topic/14594/voice-in-home-assistant#22634

 

Note

Note that these images are only supported on 64bit architectures

I’ve tries with Raspberry 3B+ and Raspberry OS (32bit) and seems images are only for ARM64.I can not pulling on a rpi3 b+ because it cannot find the arm version.

The issue is that the standard rpi OS is in 32 bit and the images for piper and whisper are 64 bit.

http://localhost:4999/boards/topic/15742/local-voice-functionality-in-home-assistant-corehow-to-manually-install-piper-and-whisper-on-home-as#22675

 

Useful links

https://www.matterxiaomi.com/boards/topic/15742/local-voice-functionality-in-home-assistant-corehow-to-manually-install-piper-and-whisper-on-home-as

source:https://developers.home-assistant.io/docs/voice/overview/

 

https://community.home-assistant.io/t/how-to-manually-install-piper/568040

 

https://www.home-assistant.io/blog/2024/06/26/voice-chapter-7/

Comments


Comments are closed