!!!THIS GUIDE IS WORK IN PROGRESS!!!
- Raspberry Pi 4 Model B
- 32 GB SD card
- bluetooth speaker/microphone
- raspian full: "Raspberry Pi OS with desktop and recommended software" https://www.raspberrypi.org/software/operating-systems/
- this is buster debian; if you are in the future using bullseye you might want to look into using podman
- rpi-imager https://www.raspberrypi.org/software/
- flash image to SD card using rpi-imager
- insert SD card into Raspberry Pi
- boot into raspberry pi os -> setup language/locale and allow updating
install docker ref
- execute in a terminal:
sudo apt update && sudo apt upgrade -y
curl -sSL https://get.docker.com | sh
sudo usermod -a -G docker $USER
sudo reboot
docker run hello-world
- run in a terminal
PATH_TO_YOUR_CONFIG=$HOME/.config/hass/config
sudo mkdir -p $PATH_TO_YOUR_CONFIG
sudo chown pi:docker $PATH_TO_YOUR_CONFIG
chmod 770 $PATH_TO_YOUR_CONFIG
docker run --init -d \
--name homeassistant \
--restart=unless-stopped \
-v /etc/localtime:/etc/localtime:ro \
-v $PATH_TO_YOUR_CONFIG:/config \
--network=host \
homeassistant/raspberrypi4-homeassistant:stable
- install the files
docker exec -it homeassistant bash
bash-5.0# wget -q -O - https://hacs.xyz/install | bash -
- restart HASS
- add the HACS Integration
- add the following lines to
$PATH_TO_YOUR_CONFIG/configuration.yaml
(/var/docker/hass/config/configuration.yaml
)
### Custom Add-ons
## for integration with Rhasspy
# Add-on: HTTP (https://www.home-assistant.io/integrations/http/)
http:
# Add-on: Home Assistant API (https://www.home-assistant.io/integrations/api/)
api:
# Add-on: Intent Script (https://www.home-assistant.io/integrations/intent_script/)
intent_script:
GetTemperature: # Intent type
speech:
text: We have {{ states.sensor.temperature }} degrees
action:
service: notify.notify
data:
message: Temperature polled.
- restart hass
Hint: While you are waiting for the Rhasspy downloads is a good time to do this.
- start by going to http://raspberrypi:8123/ or http://localhost:8123/
- download latest version of rhasspy https://github.com/rhasspy/rhasspy/releases/
- install the local package
sudo apt-get install /home/pi/Downloads/rhasspy_2.5.9_armhf.deb
- start the server
rhasspy --profile en
- copy
cp -p /home/pi/.config/rhasspy/profiles/en/supervisord.conf /home/pi/rhasspy.conf
- start editing in the file (use
nano
orvi
instead if you are on console)
sudo mousepad /home/pi/rhasspy.conf
- edit the top of the file like so:
[supervisord]
nodaemon=false
user=pi
logfile=/home/pi/.config/rhasspy/profiles/en/supervisord.log
pidfile=/home/pi/.config/rhasspy/profiles/en/supervisord.pid
- start editing in the file (use
nano
orvi
instead if you are on console
sudo mousepad /etc/supervisor/supervisord.conf
- edit the buttom of the file like so:
[include]
files = /etc/supervisor/conf.d/*.conf /home/pi/rhasspy.conf
- start by going to http://raspberrypi:12101/ or http://localhost:12101/
- install dependencies
sudo apt -y install nodejs build-essential make g++ graphicsmagick unzip
sudo apt -y install pulseaudio libpulse-dev libcanberra-dev libatlas-base-dev sound-theme-freedesktop
sudo apt-get install gettext
- download sources
cd ~/Downloads
curl https://github.com/stanford-oval/almond-server/archive/master.zip -O -J -L
mkdir ~/opt
unzip almond-server-master.zip -d ~/opt/
mv ~/opt/almond-server-master ~/opt/almond-server
-
install
- optional: upgrade npm
npm i npm@latest -g
- install almond-server as normal user (sudo/root install causes problems) Note: Warnings are expected!
cd ~/opt/almond-server/ npm install
- expected sample warnings
warning: this statement may fall through
warning: cast between incompatible function types from
note: in expansion of macro
warning: catching polymorphic type
- expected sample errors
node-pre-gyp ERR! Tried to download(403): https://snowboy-release-node.s3-us-west-2.amazonaws.com/snowboy/v1.3.1/Release/snowboy-v1.3.1-node-v64-linux-arm.tar.gz node-pre-gyp ERR! Pre-built binaries not found for snowboy@1.3.1 and node@10.24.0 (node-v64 ABI, glibc) (falling back to source compile with node-gyp)
- check for exit status:
node bin/postinstall || exit 0 ... added 758 packages from 607 contributors in 1327.268s
-
start Almond server locally
cd ~/opt/almond-server/
npm start
- run in a terminal
sudo apt install bluetooth pi-bluetooth bluez blueman
sudo apt install pavucontrol
- follow gui based instructions ref