Hello everyone I spent the past weeks refining a configuring and workflow to have completely local voice control in OpenHAB.
The overall design solely relies on marketplace add-ons except for ollama-cpp. In total the tools used are:
- Whisper - Speech to Text
- Piper - Text to Speech
- Rustpotter - Wakeword detection
- Cuevox - Rule interpreter
- HABSpeaker - Wireless microphone and speaker
- Ollama-cpp - Large Language Model (LLM) server
I covered my solution in a guide on my blog here: OpenHAB voice control for home automation | Dantali0n
I hope this way it can be easily indexed by search engines and many people who look for it can find it online.
The steps are elaborate but not hard it basically boils down to installing all the add-ons and configuring them, recording a whole bunch of audio and training the wake word detection and creating some glue logic items and things.
The audio for speech recognition is streamed to OpenHAB using an Android app called HABSpeaker developed by @Miguel_M.A.D they also developed the rustpotter wake word detection so big thanks to them for making this possible. I also want to thank @JanMattner for the collaboration on improving the cuevox rule interpreter: Cuevox - A Rule Based Voice Interpreter [4.0.0.0;4.9.9.9] - #9 by JanMattner
I wanted to submit this topic here so users could try out to get the setup working for them and so that I could help them with a discussion here if things are unclear. I can then go back and iteratively improve the blog post.
Hope that is okay.
All the best,
Corne (Dantali0n)
