[amazonechocontrol v5.x.x] - lastVoiceCommand vs. TTS (both never working together)

I have upgraded from OH 4.3.8 stepped all the way through the OH 5.x versions and I’m currently on the latest 5.1.0.m3.

What I’m experiencing is either lastVoiceCommand or TTS isn’t working based on when I log into the AmazonEchoControl binding.

  • If I do a clean OH start, then TTS works fine and lastVoiceCommand does NOT.

  • If I logout/login via AmazonEchoControl binding, then lastVoiceCommand does and TTS does NOT.

I have Logout and Re-register via the AmazonEchoControl binding.

I have cleared the cache/tmp areas.

I have blown away the bridge and ALL 17 Echo’s device and re-added them.

The same thing keeps happening on every version of OH 5.x.x so far.

Best, Jay

Did you already try to reset your account?

Just did, same results. It logs you out and once I log in again, I get lastvoicecommand but TTS doesn’t work.

Best, Jay

Are you using the Thing Channel sendMessage?
That one does not work for me, too (openHAB 5.1.0.M3).
But all individual textToSpeech Channels are working fine.

Are you still using the workaround with refreshAcitivity? It is not needed anymore.

Apart from that I have no ideas. Since the fix from lsiepel the binding is working for me, then another api change from Amazon broke it again, then the fix from digitaldan and lsiepel worked again.

Nope.

Only reason I can come up with is, maybe so many Echo’s ranging from v2 - v5?

I do have 1 offline that I can’t get to until Friday, different location. Can’t image that would be the issue.

I’m still getting these in the log, which means their is a rouge URL still needing to be migrated to v3 of the API.

2025-12-08 08:26:52.128 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2025-12-08 08:27:08.694 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2025-12-08 08:30:10.290 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2025-12-08 08:30:26.936 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2025-12-08 08:32:34.032 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2025-12-08 08:32:52.426 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2025-12-08 08:42:34.254 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2025-12-08 08:42:51.282 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request

Best, Jay

I don’t think that is the reason, because I am seeing similar messages a couple of times a day, too (but today only once):

2025-12-08 10:31:33.334 [WARN ] [zonechocontrol.internal.connection.Connection] - Failed to get notifications: https://eu-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request

Maybe: I only use two of my eight echos for tts.

I posted this before somewhere (GitHub or OH Community), these API calls need to be replaced with the new ones.

All I did was Grok the error and it says:

The error “Failed to get notifications: https://eu-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request” indicates that the request to Amazon’s legacy Alexa notifications endpoint is being rejected. This endpoint (eu-api-alexa.amazon.com) appears to be part of an unofficial or older API structure, commonly used in integrations like Home Assistant’s Alexa Media Player (AMP) component. As of late 2024 and into 2025.

Migrate to Official APIs: For production, switch to Alexa Smart Home Skill API v3 (endpoint: https://api.eu.amazonalexa.com/v3/…). Migration guide available in Amazon docs (Nov 2025 update).

I wish someone could address this URL swap out in the binding.

Best, Jay

Github is your friend, but you already did :+1:

My Echo Control worked until monday.
The first sign was a hick-up where i had to tell Alexa the command a second time.
The next morning (tuesday) openHAB was able to receive the last voice command but couldn´t send TTS messages.
I already did the reset through openhab console, but that didn´t change the behavior.

I wonder why it worked until monday, when the change was already in October.

I’m currently experiencing quite a few 429-errors from the Amazon binding too. Apparently Amazon is changing their limits. I’m currently increasing the polling values to check if this reduces or eliminates the errors.

Even with the binding in log level DEBUG i don´t see any errors.
It´ll add the TTS command to the queue but the Echos never play it.
Other features like textCommand are also affected and doesn´t work.

16:48:58.931	INFO	openhab.event.ItemCommandEvent	Item 'echoArbeit_TTS' received command The wife is on the way. (source: org.openhab.core.automation.module.script)
16:48:59.436	DEBUG	org.openhab.binding.amazonechocontrol.internal.connection.Connection	Added 166836725 device(s) [XYZ1234] to queue
16:48:59.936	DEBUG	org.openhab.binding.amazonechocontrol.internal.util.HttpRequestBuilder	> GET: https://eu-api-alexa.amazon.com/api/np/player?deviceSerialNumber=XYZ1234&deviceType=A2U21SRK4QGSE1&screenWidth=1440 (available: 2)
16:49:00.018	DEBUG	org.openhab.binding.amazonechocontrol.internal.util.HttpRequestBuilder$HttpResponseListener	< GET to https://eu-api-alexa.amazon.com/api/np/player?deviceSerialNumber=XYZ1234&deviceType=A2U21SRK4QGSE1&screenWidth=1440: 200

Meanwhile I am on 5.2.0.M1, but since Dan and Leo fixed the binding, it worked for me, apart from some INFO messages in the log with code 503: Service Temporarily Unavailable

I don’t use that feature but tested it now, and asking for the correct time worked fine.

2026-02-28 17:50:03.087 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'Alexa_EchoSmarthub_text' received command Alexa, wie spät ist es (source: org.openhab.core.automation.module.script)

As you already resetted your account

I already did the reset through openhab console

I have no idea why it does work for some users and not for others.
Do you have 2FA enabled? IIRC the binding does not work correctly without …

Yes, it´s enabled and login works.
I´m on 5.1.0

Should work:

:man_shrugging:

RPI5 installation with 5.1.3 works without a problem….

it does NOT with 15 echos with 21 smarthome alexa devices and 8 tile trackers.

Multiply tickets opened on this since Nov 2025.

Either TTS works or lastvoicecomnand and 2 new tiles never come online with unknown status.

I’m 99% sure i have the largest echo integration on OH. Both originally owners of the code since OH 2.x use to use my platform for testing. Both of these developers no longer code for OH anymore.

Now that there is no code owner, its only working for small device implementation of the binding.

i actually offered 2 pay someone 2 fix it the bugs, no takers.

Best, Jay

I got 8 echos running and TTS and lastVoiceCommand run fine. Have you tried disabling some echos to check if that’s the problem? What are your polling rates? I currently use 120/360/120. I had the impression that you get banned for a certain time if polling happens to often. The symptom was that TTS stopped working. After a restart everything went back to normal.

I remember those days with too many requests issues. Mine has been set 15/120/10 since everything was working on version 4.3.6.

When starting OH from scratch, TTS works fine. If I change the account thing which recycles the connection then TTS stops and lastvoicecommand works.

I believe it’s the Tile integration which isn’t working anymore (lat/long stuff) which was originally put in, working with one of the last code owners

OR

The JSON is getting corrupted/incompatible/etc causing my issues.

We also have this issue which is a ticking time bomb.

They have centralized the end points and the binding is still point to geo locations (na-api-alexa) which Grok says is EOL endpoints as of Dec 2025.

2026-02-28 08:29:43.996 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2026-02-28 08:34:34.361 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2026-02-28 08:34:50.897 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2026-02-28 09:08:55.963 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2026-02-28 10:08:57.704 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2026-02-28 11:08:57.456 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2026-02-28 12:08:58.072 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2026-02-28 13:08:58.483 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request
2026-02-28 13:45:58.863 [WARN ] [g.amazonechocontrol.internal.connection.Connection] - Failed to get notifications: https://na-api-alexa.amazon.com/api/notifications failed with code 400: Bad Request

I have tried everything; all my things use to be THINGS defined. Blew everything away and had it discovered. Disabled stuff, like all Tiles, same issue. Disabled Echo’s, same issue. I just have a very large implementation, and the new authentication method changed the processing of the JSON parsing in my opinion.

Even upgrade from OH 4.3.x all the way up to OH 5.1.3, same issues.

Best, Jay

Here I have 30/120/10 with 7 Echos and 2 smarthome devices.
Only minor problems on 5.2.0.M1.
Works around 98% in time.

How can i “reset” the requests counter?
Stop the binding for a day?

Currently lastVoiceCommand works while TTS doesn´t.
I´m only using 5 Echos.