TTS Notifications don't work on Samsung mobiles

Maybe anyone could help, because I have no idea, what else could I check…
Home Assistant, latest sw, mobile Samsung S21, Home Assistant Companion installed.
App works fine, notifications also work fine, but only as a simple text messages, TTS notifications doesn’t work at all.
I’m testing both examples from this manual called via Developer tools/Services:

service: notify.mobile_app_s21_jarek
data:
  message: TTS
  title: "Motion has been detected"
  data:
    channel: "alarm_stream"

but after run it gives nothing. And more funny fact is that according to app log, everything works fine, only I’m deaf:

04-22 19:08:53.890 27767 4474 D MessagingService: Sending notification title to TTS
04-22 19:08:53.928 27767 4523 E SchedPolicy: Failed to find cgroup for tid 27767
04-22 19:08:53.958 27767 4474 I TextToSpeech: Sucessfully bound to com.samsung.SMT
04-22 19:08:53.983 27767 28495 I TextToSpeech: Connected to TTS engine
04-22 19:08:54.000 27767 27937 I TextToSpeech: Setting up the connection to TTS engine…
04-22 19:08:54.003 27767 27767 D[u][u] MessagingService: speaking notification

And yes, I checked volume level, tried with unlocked phone, etc. Google speech service is installed on my phone (but I don’t know, how to check version, it is not visible in the list of applications, only after finding it in google play shop I see notification “already installed”, my google assistant works fine and talks to me.
[update] I checked also on other devices within my family and it seems that issue is connected to Samsung mobiles only. The same notification doesn’t work on any Samsung device (tested with S21, S20, A40 and really old tablet) and works without any problem on Xiaomi Redmi.

And other issue with notifications, not as annoying, but maybe somehow connected: text notifications work, but ony as simple messages, without possibility to use e.g. color. For example: this action:

service: notify.mobile_app_s21_jarek
data:
  title: "Motion Detected in Backyard"
  message: "Someone might be in the backyard."
  data:
    color: "#2DF56D" # or "red"

should give me notification in red, yes?
So, look:
image

1 Like

some Samsung devices simply don’t support using the alarm stream, try removing that parameter.

Just like this?

service: notify.mobile_app_s21_jarek
data:
  message: TTS
  title: "Motion has been detected"

unfortunately no changes.

check the volume of the media/music stream. Also go to device settings and play the TTS sample and make sure it can play properly.

Also this is not right, try to change the text to speech default engine to the Google one instead of samsung. Typically part of language/keyboard or accessibility settings. Every device is different.

1 Like

Problem solved!
I found in settings of my phone “speech synthesizer” and you have a right, it is samsung, not google. And because I was not using it before, my language was not installed at all. I added it and voilla, HA notifications also started to work.
Also I found finally, where to set “google synthesizer”, but anyway it speaks with other voice than standard google assistant.
Thanks for suggesting good way!

3 Likes

Found this thread helpful! Tip for finnish users, search for “Teksti puheeksi” and change it to google.

1 Like

Its also now 2024 that I’m having issues!

I’d also need help on this as I’m now thinking of going over to iPads rather than using Samsungs as none of mine work medically for me as they should.

I do have an iPad with no issues!

I see useless technologies wasted with Android at the way things are going!
And I’m getting very frustrated keep buying their mobiles! I have the worst mobile going S24 Ultra! And Ialso find Samsung to be not at all helpful on this matter they have caused!

I’m hoping someone can help me on this so I can then get to medically keeping alive safely rather than having to change all the software and computers over to a IMac I seem to have always been on an Android but I’m really now being put off Android with these changes.

I’m hoping someone can help me get it to not be a Black Screen, please

Or Will Pixels also be the same? I’m not sure if it’s Samsung doing this or Google so would also be helpful so I can make changes to know if its Android at fault or Samsung
!

I’m using Notifications: Send a notification via mobile_app_sm_s928b
but I have also tried TTS too.

I do get the messages but the screen does not open up so I can see anything! So if I was to open and close the windows 10 times Id hear it repeat it self ten times when I touch the screen which is a little useless really, and annoying!

this made no difference with me on a s24 ultra!

When I was looking on my I picked Google and still not getting notifications, so how can I check it again to see i fits changed over to Google rather than Samsungs?

are you able to play the TTS sample file in your device settings? some libraries may not play well but the google speech engine works the best in our experience. You set it as default in teh same place you adjust things like speed and pitch in TTS settings

Yes it plays after I HAVE to TOUCHED the screen which is no good for me! I need it to wake the mobile too!
And me having that also in mt setup its not waking the mobile up! I have no issues with ipads!

then you need to also follow the critical format to speed up delivery of the notification

https://companion.home-assistant.io/docs/notifications/critical-notifications#android

1 Like

On my ancient Samsung phone (running Android 11) I did the following:

  • Ensured that Google is used for TTS instead of Samsung (which is the default).

  • Chose a language (i.e. I did not use the default which is “system language”).

  • Clicked the Play button to test it.

After confirming it played the stock message, I went to Home Assistant and in Developer Tools → Services and entered the following action (change notify.mobile_app_foo to whatever represents your phone. I see from a post below that it’s probably notify.mobile_app_sm_s928b).

action: notify.mobile_app_foo
data:
  message: TTS
  data:
    tts_text: Hello world!
    media_stream: alarm_stream

I clicked Perform Action and, after a pause of about 3 seconds, my phone announced “Hello world!”

At the time of the test, the phone’s screen was off.


Your Samsung phone is probably running the latest version of Android so your phone’s menu commands are likely to be different to mine. I searched for Text to Speech and it listed the appropriate location.


FWIW, I tested it again and it took at least 10 seconds before the message was announced (other tests took even longer > 20 seconds). All this to say that the response time can vary a fair bit.

this is not going to wake it up though! Its not just TTS it also Notifications: Send a notification via mobile_app_sm_s928b

yes it is, please read the entire page from the link that was sent. this applies to both TTS and notifications as shown by the examples on the same page

However, in some cases (such as phone being stationary or when screen has been turned off for prolonged period of time), default notifications will not ring the phone until screen is turned on.

To override that behavior, set priority: high and ttl: 0.

I need it to wake like this! https://www.youtube.com/shorts/RW-Le4x6NJo

so you wnat the screen to turn on and display a dashboard? look into notification commands we have both of those cases covered

https://companion.home-assistant.io/docs/notifications/notification-commands

will take a look thanks! I have many setups for notifications I was going to do a new post and just did a search and found this post! So I may have jumped in on the wrong thing! I’m just struggling with this Samsung S24 waking up with notifications!

one other note on samsung, tey add a lot of extra battery saving techniques to dig through device settings and turn off feature like power saving and data saving etc… add the HA app to the allow list on any feature that may disallow the app to run freely in the background