[RELEASE] Echo Speaks V4

I believe we were all under the impression, due to announcements from Heroku, that what previously was available for free, including the types of accounts that echo speaks relied on for cookie refresh, would require some monthly payment.

Maybe it’s possible to use Heroku in a way that stays below a threshold and avoids actually getting charged for usage?

I switched to a local cookie server last November when Heroku’s announced pricing changes went into effect, so I’m not sure.

2 Likes

Just looked at my Heroku account and my deployment date was June 30, 2022. Maybe I'm on a grandfathered free account? :man_shrugging:

My Echo Speaks is also still working with the free Heroku account.

1 Like

Well, my Echo Speaks server is just gone. So I recreated it on a raspberry pi. I must be doing something wrong because while I did get a cookie this IP address shown below is WRONG. I don't even have a 10.x network at home. How do I set this to the correct IP address? I can't find that... The port is correct, but the IP is wrong. Should be 192.168.4.129 Thanks folks. Feel like an idiot here lately.
image

It's correct on the server itself though.

Stumped.

Guessing you deployed with docker? Docker uses its own internal bridge networking which messes with the IP detection. My guide shows how to override the IP detection and set it. [GUIDE] Echo Speaks Server on Docker (and alternates)

2 Likes

Heroku may have been up-selling when asked by users if some free apps could continue to work?

I am paying the $5 monthly fee to Heroku. It seems that I need to investigate.

Actually no, I followed the instructions at

Echo Speaks Local Cookie Authorization Server - ScottiByte's Discussion Forum
ALTERNATE INSTALLATION OF ECHO SPEAKS AUTHORIZATION SERVER WITHOUT DOCKER

On your target server, install the dependencies:

sudo apt install nodejs
sudo apt install npm

Now get and install the Echo Speaks Server application.

npm i https://github.com/tonesto7/echo-speaks-server
sudo npm install -g pm2
cd node_modules/echo-speaks-server
sudo pm2 start index.js
sudo pm2 list
sudo pm2 save
sudo pm2 startup
sudo pm2 save

I just reinstalled it and it still has the 10.x address. Ugh...

very interesting. If I do an "ifconfig -a" on my RPi eth0 is 192.168.4.129. BUT wg0 is 10.110.227.1. I need to get the Echo Speaks server to return the IP of eth0 not wg0. I am also running a WireGuard server on this pi. Anyone know how to get it to use the first IP (eth0) not some other random one?

@wiegout I cover this way up above as well, here you go.

EDIT: Added link to my GUIDE to the about fixing the IP on pm2 for future reference.

1 Like

This worked!
$ cd node_modules/echo-speaks-server/
sudo ipAddress=192.168.4.129 pm2 restart index.js --update-env
sudo pm2 save

Thank you so much!

1 Like

In case its not obvious, make sure you have a DHCP reservation set for that device so the IP does not change, or it will break it and you have to figure it out all over again.

please share the changes, or post a pull request so we can get this into the code

Yep. IPs of all my servers and anything smart home related are reserved. I appreciate you mentioning this though. Thanks again for helping an old retired IT guy here. Too much Pickleball and not enough Linux. Cheers!

"A11QM4H9HGV71H" : [ c: [ "a", "t" ], i: "echo_show_5", n: "Echo Show 5 (Gen3)" ],

I already posted a pull request.

2 Likes

I recently moved from C-5 to C-8 hub and I've just noticed that my Echo Speaks is not working anymore and checking the log, I see this error.

Also, when I checked the cookie refresh, the last time it did it was 232 days ago.

What's strange is that I can play my music fine on Sharptools hence it took me this long to notice this.

Can someone help me diagnose this? TIA.

If you changed hubs you needed to redeploy the server. Did you do that?

2 Likes

New to the Hubitat world; finally ditching SmartThings. I followed the steps on the documentation on installing and setting up the app. All good until I try to use the Amazon login page. When I click that step, I just get a new window with a Heroku error saying there's nothing there. Same issue on PC and iOS. Any suggestions?

Did you deply the Heroku server?

1 Like