Using CATT

I think this might be due to the fact that you have to reinstall CATT every time you restart the container. This is done in step 2 of this description: Using CATT - #127 by john2014

By “Ambient Mode” I mean whichever of the 4 available choices is configured on the Hub under “Photo Frame”, aka “Choose what you see on your screen when it’s not in use.”

It appears that this is no longer opt-in (or opt-out for that matter); one must choose from among:

  • Google Photos
  • Art gallery
  • Fullscreen clock
  • Experimental

Ah ok, I have that set to Art Gallery. I do wonder how you managed to get that 1.52.260996 firmware. On this page Google Nest or Home device firmware versions - Android - Google Nest Help I dont see it yet.

Do you have preview program On (under device information). Perhaps its a beta you have.

Preview Program is set to “off”. And to the best of my knowledge I’m not in a beta program.

I didn’t overtly elect to take a firmware update (beta or otherwise); it just started downloading and then installing after I moved the hub to a new location.

you are not alone

Same 30 second timeout for me too. I subscribed to the beta program.
I guess it was only a matter of time before this integration became ineffective due to a Google update.

I have an observation that might be a work-around for someone to look into. . .

The timeout is reset if you interact with the touchscreen, ie. press a button on your dashboard.
You have to keep pressing buttons to stop the timeout.
30 secs after the last button press, the display will revert to Ambient mode.
Maybe there is a way to inject a fake button press?

Catt is not working after update of SSH & Web Terminal to version 9.0. Returns this error:

➜  ~ catt status
Traceback (most recent call last):
  File "/usr/bin/catt", line 8, in <module>
    sys.exit(main())
  File "/usr/lib/python3.9/site-packages/catt/cli.py", line 644, in main
    return cli(obj=get_config_as_dict())
  File "/usr/lib/python3.9/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python3.9/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python3.9/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python3.9/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python3.9/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/lib/python3.9/site-packages/click/decorators.py", line 33, in new_func
    return f(get_current_context().obj, *args, **kwargs)
  File "/usr/lib/python3.9/site-packages/catt/cli.py", line 453, in status
    cst = setup_cast(settings["selected_device"], prep="info")
  File "/usr/lib/python3.9/site-packages/catt/controllers.py", line 78, in setup_cast
    cast_device = get_cast_device(device_desc)
  File "/usr/lib/python3.9/site-packages/catt/discovery.py", line 135, in get_cast_device
    cast_device = get_cast_device_with_name(device_desc)
  File "/usr/lib/python3.9/site-packages/catt/discovery.py", line 80, in get_cast_device_with_name
    devices = get_cast_devices([device_name]) if device_name else get_cast_devices()
  File "/usr/lib/python3.9/site-packages/catt/discovery.py", line 50, in get_cast_devices
    devices = [
  File "/usr/lib/python3.9/site-packages/catt/discovery.py", line 51, in <listcomp>
    CastDevice(pychromecast.get_chromecast_from_cast_info(c, browser.zc), c.host, c.port) for c in cast_infos
  File "/usr/lib/python3.9/site-packages/pychromecast/__init__.py", line 86, in get_chromecast_from_cast_info
    return Chromecast(
  File "/usr/lib/python3.9/site-packages/pychromecast/__init__.py", line 311, in __init__
    dev_status = get_device_status(host, services, zconf)
  File "/usr/lib/python3.9/site-packages/pychromecast/dial.py", line 109, in get_device_status
    status = _get_status(
  File "/usr/lib/python3.9/site-packages/pychromecast/dial.py", line 71, in _get_status
    host, _, _ = get_host_from_service(service, zconf)
  File "/usr/lib/python3.9/site-packages/pychromecast/dial.py", line 32, in get_host_from_service
    service_info = zconf.get_service_info("_googlecast._tcp.local.", service.data)
  File "/usr/lib/python3.9/site-packages/zeroconf/_core.py", line 452, in get_service_info
    if info.request(self, timeout, question_type):
  File "/usr/lib/python3.9/site-packages/zeroconf/_services/info.py", line 426, in request
    assert zc.loop is not None and zc.loop.is_running()
AssertionError

Anybody any advice? Thank you…

I have the same problem. Following.

1 Like

Just adding that I’ve had similar issues to the previous few comments. Just downgrading SSH & Web Terminal from 9.0.0 to 8.2.4 seems to have fixed things for now. Mine still seems to be casting for up to the full 10mins before Google takes the screen back.

I’m having the same problem. How did you downgrade to 8.2.4?

Downgrading to 8.2.4 worked for me also. I downgraded by restoring the SSL component from a recent backup file.

Strange, downgrading to 8.2.4 hasn’t helped me. Still stops after 30 seconds.

In my case I’m not sure it is ssh & web terminal causing casting to stop after 30 seconds. I have two nest hubs, one on the beta 1.52.260996 and the other just one the normal 1.52.249798.

After reading above about v9 of ssh maybe causing it, I rolled back to v8.2.4. The nest hub on beta still stops casting but the one on normal firmware works fine. So in my case it the nest hub firmware is the issue. Shame you can’t roll that back!

I downgraded via a recent backup too. It seems that the 30s timeout is to do with the hub software like you said. It’s gonna be a shame if that’s the case going forwards. With the time it takes to recast, doing it every 30s won’t really be an option

Yes, same here. 9.0.0 was causing the errors as prezervos mentioned.

Restoring 8.2.4 from snapshot fixed it.

Same issue for me… after 30sec, the cast is stopped
I tried to install catt directly from my raspberry pi and use catt cast_site => 30sec too :frowning:
I tried to leave the “preview program” to off, reset the google nest hub, but i’M still in 1.52.260996 and always the same issue :frowning:

I try to simulate scroll with setInterval,but it’s not working
Do you know a jquery (or other) stuff to simulate human interaction ?

2 Likes

An other idea… Videos are’nt stopped by catt !
So, can we create a video stream from html content ?
I didnt find any service to do that

I would like to upgrade from 1.52.26xxxx to a more recent version, just out of curiosity about what happens to catt calls from HA.

The current public-facing firmware for my Google Nest Hub = 1.52.24xxxx. That’s slightly behind me and I don’t see a path to force an upgrade (or a downgrade for that matter).

However, the latest for the Nest Hub Max is 1.54.xxxx. Does anybody out there in catt/HA-land have the Hub Max on 1.54.x and if so what is the experience?