One day I said “Hey Google” and my Pixel didn’t respond. After a few more unsuccessful tries I went into the settings and saw that Voice Match — the feature that lets you activate Google Assistant by voice — “is currently unavailable for this language”. I found this strange since the language was set to English, and it used to work. Now, neither US nor UK English, nor Danish, could make it work.
I googled the problem and found lots of tips, but none of them worked. Later I found a solution, that I’ll post here in the hopes of helping someone else.
Toward The Solution
Before I found the solution I checked several things after googling the problem. I confirmed that the microphone did work in other apps. In fact, it even worked in the Google app itself when activated by touch instead of voice. I didn’t have other voice assistants installed that could somehow conflict with Google Assistant. I couldn’t retrain the voice model as some recommended since the whole Voice Match feature was unavailable. I tried rebooting, uninstalling Google app updates, clearing its cache, reinstalling the updates, rebooting some more, all to no avail.
Besides the system Voice settings’ language preferences, the Google app’s Assistant settings also have language preferences. Here, I also had English (tried both US and UK), so that couldn’t be the unsupported language either. Finally I went to the system settings’ main language preferences, which are a third language setting in the same Google/Android ecosystem. My main language was set to “English (Denmark)”.
It’s not enough to use a supported language, the regional variant also has to be supported and set in the correct one out of three sets of language preferences. “English (Denmark)” doesn’t work, but setting the main system language preferences’ top or only language to “English (United States)” does. Presumably English from other primarily English-speaking regions works as well.
After changing my main system language to “English (United States)” I could now activate Voice Match a.k.a. “OK Google”/“Hey Google”.
The above is more of a hack than an actual solution, because it prevents me from using Danish regional (time, date, number, etc.) formats on Android while using Voice Match.
When I got my Pixel 2 I had set it myself to “English (United States)”. This worked fine until I later installed Google Fit and wanted its calendar view to use Monday as the first day of the week, rather than Sunday. The app didn’t have it’s own setting for this, but it worked after I changed the main system language to “English (Denmark)”. I don’t use Google Assistant every day, so when “Hey Google” later didn’t work, I didn’t immediately make the connection to the region change.
If the original error message had been “This feature is currently unavailable for English (Denmark)”, rather than the generic “this language”, it would have been much easier to fix. Even better, Android should use the Voice settings’ language as the voice language. Or the Assistant settings’ language as the assistant language. Or stop having so many language settings! Or let Voice Match fall back to a supported language variant if the chosen one is unsupported.
Speaking of Google Assistant problems, I just read that many of the linguists that helped create Google Assistant were treated with mistrust and being paid less than 20% of what permanent staff makes, while also expected to do unlogged overtime. I appreciate that not all skills are in equal demand, and therefore pay, but that’s no excuse to treat people with a lack of respect on top of low pay and inferior health insurance. I think Google should choose to treat all its workers with dignity. #DontBeEvil