JarvyJ / Rhasspy-Satellite

Raspberry Pi satellite images for Rhasspy
MIT License
5 stars 0 forks source link

Rhasspy Satellite Image - BETA

This repo contains code to build a standalone Rhasspy satellite image. It allows you to easily add a seconday Pi as a satellite image to your Rhasspy instance. Since the image is trying to be as lean as possible, the satellite is only setup to handle wakewords, and will have to offload everything else to the main Rhaspsy instance. You just need to flash it, setup your networking, and start it up. From there, plug in your microphone, and setup the satellite!

Currently targetting Raspberry Pi 0W, 3, and 4. It currently has all wakeword engines installed (TODO: verify that they all work...)

The Rhasspy Satellite image is built on top of the Skiff platform for embedded systems, and will one day be integrated with Home Intent.

Installation

The main way to install it is to grab the latest system image from the Releases page, and flash it to your Raspberry Pi. I recommend using the Raspberry Pi Imager with the "Custom" image option.

Networking Setup

After flashing it, you can setup your networking config. All the networking lives in a folder called skiff on the persist partition.

TODO: finish how to setup a wifi connection.

Hostname (optional)

You can sett the hostname of the device by writing it in plaintext inside skiff/hostname on the persist parititon.

SSH Keys (optional)

If you want to be able to SSH into the satellite server, you will need to place your SSH public key in skiff/keys on the persist partition. Afterwards, you can ssh as root into the system.

Updates

To update to the latest version, start off by backing up your /skiff folder to your computer. It should be on the persist volume. After backing up /skiff to your computer, you can flash the latest image to your SD card, and restore your /skiff folder to the persist partition. From there all you need to do is boot it back up and you should be on the latest version!

We may offer an OTA update option in the future.

Docker Installation

We also provide a thinned down Rhasspy docker image that can be used as a satellite on a standalone machine. This is really just an artifact of the build process that we've made available. You can always find the latest version under packages from this page.

Roadmap

Once more of the following are figured out, and things are stabilized, I'll consider it out of beta:

Some research needs to go into the following to ensure it is possible and can run in an embedded environment