TTS voice randomly defaulting to Generic US

My TTS messages work about 75% of the time with the correctly installed UK English Google voice. There is nothing else installed. Randomly it will default that robotic US English voice (which is awful!). I’m not sure what’s causing it as it is not a specific message or time or anything.

Usually though if there are 2 in quick succession the second might come out right.

Baffling - anyone got any ideas? I’ve checked and triple checked everything on the settings on my Pixel 3.

The app users whatever the default voice your device has.

Hi - it has one default voice - UK English. Therefore I do not understand why the generic robotic voice gets used randomly.

could be an android bug, the app makes a request for the default locale. Try to make sure Google speech services is up to date, outside of that nothing really the app can do there.


Everything is 100% up to date. OK - I’ll mark it down to Google not being able to return the correct locale (just don’t understand why it’s random!)

If anyone else has this issue there is a workaround. Send 2 TTS messages but make the first one simply a space :

media_stream: alarm_stream_max
tts_text: ' '
ttl: 0
priority: high

That way the annoying voice says nothing and the second message uses the correct voice. Annoying but it works :slight_smile:

Sorry to highjack this thread, but could you give me a pointer to what I have to do, to get a more human voice?

I gave up on tts on Android a long time ago, because of this terrible voice.

I just checked:
In Android > settings > system > speech and input > text to speech > preferred module (speech services by Google) settings > install speech data > German…

(This is all translated from german and only fairly accurate)
I downloaded the one speach-file that does not sound like a sick terminator.

But it does not seem to be used with tts.

What am I missing?

Haha, forget it, found it!
For some reason the tone height in the voice-settings was turned up to almost max, which was responsible for the terrible voice. I turned it down and now it sounds normal.



I upgraded to a Pixel 6 and the same thing happens. Randomly it goes into robot mode and ignores the fact the phone is set to default to English (United Kingdom). It’s pretty annoying :frowning:

Android 12 and Android 13 both do this on this new phone.