We've had Amazon Alexa for five years, since the gen 1 device, and now find it to be an increasing invasion to the sanctity of the home.
We find it particularly annoying that nowadays, when you ask Alexa to do something, several times per week it will suggest some annoying upsell crap you don't care about. It used to suggest things once per quarter tops, that was fine.
HN, what private alternatives to Alexa may exist?
For example, does anyone make a system that's relatively polished and operates entirely in the home, with no audio sent to the cloud? I'd be happy to run a hub/box for the system.
To be clear, I’m not concerned about cloud processing or even mining my data. Just something I can have a reasonable amount of control over and that doesn’t constantly enable features I don’t want on its own.
While I've not used the entire Rhasspy project myself (but trying it out is on the long list of things to do :) ) I have used the offline Text-To-Speech sub-project Larynx...
...and it is amazing!
Larynx is significantly ahead in terms of quality of output & variety of voices (fifty--across multiple languages, accents & genders) of any other FLOSS Text-To-Speech project I've tried.
I think the relative new-ness of the project is part of the reason Larynx (https://github.com/rhasspy/larynx/) currently flies under the radar.
If the rest of Rhasspy is as good as Larynx I'd imagine it's worth trying out.
Larynx demo video: https://www.youtube.com/watch?v=hBmhDf8cl0k
Samples of pre-trained voices: https://rhasspy.github.io/larynx/#en-us
It seems like they have an open source client that you can run on your own hardware but it's still dependent on the backend services that Mycroft-the-company provides. Perhaps their privacy stance is more palatable to you, though?
I think there used to be a project that was fully on-device but it got bought and consumed by Sonos
First off, unless you want to really DIY the glue-code, you want to use HomeAssistant (huge community) or NodeRED.
The only part I'm uncertain about and haven't explored properly myself is the voice-to-text part. Any solution should be pluggable into HA or NR.
Relevant threads in HA voice-assistant sub-forum:
* https://community.home-assistant.io/t/replacing-alexa-or-goo... (Ada, Rhasspy and other FOSS alternatives)
* https://community.home-assistant.io/t/local-voice-control/29... (you can apparently use Alexa for voice control even if it does not have any internet access)
* https://community.home-assistant.io/t/best-option-for-local-... (local TTS)
Although audio is sent to the cloud, you can choose whether it is stored or not, and whatever you pick, Apple's privacy policy is very strict.
HomePods are mostly advertised as music playback devices, but I mostly use mine as a HomeKit control device.
Homebridge allows you to control non-HomeKit devices via Siri: https://homebridge.io
It uses Rhasspy under the covers, and automatically imports lights, switches, fans, etc and sets up sentences and intents for you. After initial setup, it can be used without an active internet connection.
All you need is some container knowledge, an extra Pi, and a good speakerphone (like a Jabra Speak 410) to get going.
Disclosure: I am the main author of Home Intent.
Most things seem to assume a raspberry as the base hardware which somewhat implies cloud usage.
There is also hive mind which seems to get around the above issue (basically mycroft except with a more satellite mentality to mic placement)
Also been wondering whether it is possible to just use the cloud TTS since their voices are quite good. That should fall under GCP/AWS etc terms which seems a little more privacy friendly than straight alexa & friends.
Planning on having another go at this, but first tackling presence detection which is a minefield of note too
Essentially you can program your house to coded knocks. Lights/music/door/... all by sequences of knocks.
Personally, I live fine without a voice controlled home assistant. I am however able bodied, and I can press buttons and flick switches without much thought. If that were to change, then yeah, I can see a need for these things, but they really need to be able to work offline with no internet connection should you wish have them configured like that.
Mozilla has DeepSpeech [0] and, while not as advanced as the stuff from Google or Amazon, my experimentation left me feeling pretty hopeful that it could reliably recognize at least keywords.
The Raspberry Pi is quite capable though you'll probably need some dedicated microphone to reliably catch voice data. I know ReSpeaker [1] but maybe some off the shelf conference USB microphones would work as well.
[0] https://github.com/mozilla/DeepSpeech
[1] https://wiki.seeedstudio.com/ReSpeaker_4_Mic_Array_for_Raspb...
So if you've got a few apple devices such as a homepod / apple watch / iPhone, consider the homekit ecosystem, its been working well for me.
The good thing about it is that it takes only a couple of minutes to install via Docker and has all the base niceties out of the box (trigger word, intent detection, speech synthesis).
I would say it is good enough to tinker with, although clearly not yet up to par (mind you, I am also trying it in English).
There are open source speech to text engines, text to speech engines and assistant software with APIs, you could probably build something with a raspberry pi, I looked into it a while back but I don't really mind light switches.
"Open Assistant" should get the ball rolling for you, search that and dive down the rabbit hole of open source home automation.
I have never had an Alexa but surely there isn't that much time saved by having it turn off lights. Siri on your iPhone can set alarms and shopping lists and presumably your phone it always around you.
I set up my phone so I can say "hey Siri ok google" and then it asks me what I want to tell google. I then say any command supported by the Google Assistant, and it passes the command through.
Technically I think it's supposed to work all in one utterance, but I have found that it never works that way. I always have to split it up. Even still, this is a pretty handy way to be able to ask for information (Siri's knowledge seems quite limited compared to Alexa/Google) without having any always-listening devices in my home.
https://github.com/victorqribeiro/rpiapi
Here you can see I'm using voice commands to drive a car
https://github.com/victorqribeiro/raspberryCar
I mean, with a little bit of code and some 3v relays you can achieve what you want
Unfortunately it is not open source (the GitHub just has binary blobs) and requires an account to log in to generate and download model files, but the accuracy is great and you can use it to send commands to Home Assistant to turn lights on/off etc.
Would probably be easier with Android as I imagine you could push apk files OTA if you wanted, which would come in handy.
This is similar to a feature I saw in waze, you can record your own turn by turn audio directions by recording your voice saying things like “turn left” or “police reported ahead”, it’s how they offer all the fun celebrity and cartoon voices.
Thoughts?
(It might be harder than it looks especially if your lights' API isn't documented well.)
clap off
the clapper
clap clap
Lot of plugins and functionality, especially mycroft.However Almond being open-source is very good for hacking around