Using CATT

Same 30s timeout issue here on nest hub (1st gen) on firmware 1.52.260996.
Not experiencing same issue on nest hub max on firmware 1.54.250320.

Such a pain!
How do I stop the hub max from updating! I literally just got it to a place where I’m super happy with my screen for that.

What I don’t understand is what it is about CATT that causes the timeout? Casting sites from other things as usual doesn’t appear to timeout Not even static webpages, so why does this? There must be something that can be done to fix it!
Is it the cast_site option instead of just cast? Or the hub’s web browser?

def cast_site(settings, url):
    cst = setup_cast(
        settings["selected_device"],
        controller="dashcast",
        action="load_url",
        prep="app",

As mentioned above touching the screen keeps it online. Interested if there’s a way to simulate this too.
Is there a way to send controls through dashcast. I know you can send pause commands etc to videos, but if you try that after casting site it says “action not supported by the dashcast controller”

1 Like

It was also mentioned on the Home Assistant Cast discussion that perhaps there’s a way to set disableIdleTimeout to true when casting webpages?

Or perhaps maxInactivity?

1 Like

Totally agree with you, previous 10 mins is already annoying, this 30 seconds timeout just make nest hub useless…

is there a way to downgrade the firmware of google hub? or a solution to bypass 30 seconds timeout?

having the same issue on 2 of my 3 nesthubs… guess the 3rd will get there soon also.

Been trying to figure out a resolution, following this

1 Like

Hi,

I’ve opened a feature request on GitHub a short time ago for disableIdleTimeout being added to pychromecast.

Unfortunately I can not test things at the moment, but it would be helpful if any of you would join the issue and would give a hand to @emontnemery.

Tagging those people who would be interested in a fix for the 30 seconds timeout:

@Daniel_Cook, @NeilsOnWheels, @mjm8975, @Gergo.io, @ysoudy, @erikkt, @lacko, @sh00t2kill, @jonaseymour

6 Likes

Did anyone find a workaround yet?

If this issue cannot be resolved from the casting apps side, but has to be solved from the Nest Hub side, then it might worth to start a topic on the new Google Nest Community Forum:

https://www.googlenestcommunity.com/

Maybe the developers would pick up the issue to resolve on their side.

Did you create a topic with them? Ive seen topics before about things there, never to be resolved.

1 Like

I take it back, it was working for 1 hour or 2 and stopped again

1.52.26.

Blockquote

It seems it is working now, photo mode did not kick in after 30 secs…

Blockquote

OS Version of the hub?

I am also struggling to get my Lovelace on my Google hub.

I’ve the following in my config regarding auth profiders:

 auth_providers:
    - type: trusted_networks
      trusted_networks:
        - 192.168.1.249/32
      trusted_users:
        192.168.1.249: fc3575bfb47b4c....
      allow_bypass_login: true
    - type: homeassistant

The ip address is the address of the HUB.

I’ve setup duckdns so I can access my home assistant from outside my network.

If i try to cast to the google hub the following way I get a login screen:
catt -d 192.168.1.249 cast_site https://xxx.duckdns.org:8123/lovelace/default_view

If I try with my internal IP i see the cast loading screen and the shuts down. Home Assistant isn’t shown at all.
catt -d 192.168.1.249 cast_site https://192.168.1.100:8123/lovelace/default_view

If I try to cast it to my TV using the internal IP it freezes on de cast loading screen

What’s the name of the google hub? i.e. “Living Room Display”
Try using that instead of the IP address in the shell command.

re: trusted_networks. Try using 192.168.1.0/24 instead. I don’t use trusted_users so can’t comment on that bit.

I anyone able to help with some shell comment syntax? I currently have the code below (from john2014) to only cast when the hub is not playing anything. But the hub is also linked to an audio group that I would also like to put in the conditional.

if ! catt -d "Kitchen display" status | grep 'PLAYING'; then 
    catt -d "Kitchen display" volume 0
    catt -d "Kitchen display" cast_site http://192.168.xx.xx:8123/lovelace/nest_max
    catt -d "Kitchen display" volume 5
fi

How do I change that first line to be if either ‘Kitchen display’ OR ‘Kitchen speakers’ is not ‘PLAYING’, then run the code?

Is your “auth_providers:” configured inside the configuration.yaml? Are you missing the “homeassistant:” part?

homeassistant:
  auth_providers:
    - type: trusted_networks
      trusted_networks:
        - 192.168.1.249/32
      trusted_users:
        192.168.1.249: fc3575bfb47b4c....
      allow_bypass_login: true
    - type: homeassistant

I disabled the SSL part and now it works. So it is the duckdns that I am using.
When opening my home assistant with Https://192.168.1.100:8123 I get the message it isn’t secure.
I am now trying to use nginex proxy manager so I can access it through reverse proxy. But up until now no luck.
Local IP still works but I can’t get connect it from https://xxx.duckdns.org:8123. I get the message “400: bad request”

Searching the internet a little more I found the solution.
You will need to add:

http:
  use_x_forwarded_for: true
  trusted_proxies:
  - 172.30.33.0/24

Now it works :tada:
I can access my internal ip and external url without any issues and CATT is now working.
I can cast my lovelace to my google hub.

I was so focused on getting CATT to work with DuckDNS and reverse proxy I didn’t notice the 30 sec issue. This is a big setback. Now that it works it only works for 30 sec.
Hopefully it someone will find a solution I will keep an eye on this thread

Hello All, looking for advise here. I’ve been looking to use CATT for a while now but going through the threads, there’s an issue with it at the moment.
I have a google HUB i got as a wedding gift last December, it’s been in my attic since, but I’m afraid if I turn it on, I’ll be forced to run a software update.
Any ideas?

When I got mine out of the box a couple of weeks ago it updated until it was finished.
No way to interrupt this.