[RELEASE] cast-web v1.2.1 - Chromecast Integration (EDGE Driver discussion begins in post 1668)

I’m making available an initial Edge driver for anyone willing to suffer through a beta-level version :slight_smile: .

This driver still requires cast-web-api running on a local computer, as with the legacy driver, but no longer requires a SmartApp.

What IS working:

  • Discovery and creation of devices
  • Play/pause/stop/volume control of media
  • Define and use presets
  • ‘hidden’ switch and track controls with same config options as legacy driver
  • Devices are recognized by SmartThings as smart speakers, so can be used in SmartThings automation routines (Notify someone > Play message on speaker)
  • After notification is issued, the driver will attempt to resume prior preset media, similar to the legacy driver, however this has limitations.

Limitations:

  • Google Assistant integration not working, and probably never will unless/until someone wants to rewrite one of the cast-web-api modules to comply with the new Google oauth flows.
  • Google TTS not working; don’t know why this is, but SmartThings Notifications work ok
  • SmartThings’ mediaPlayback and mediaTrackControl capabilities are still in ‘Proposed’ state and they are flakey. On iOS, the GUI pause/play button is not working. Let me know if you find otherwise on Andriod. Because of this, I’ve included an ‘alternate controls’ button to select pause/play/stop.
  • Resumed media is limited to media configured in presets; can’t resume media initiated outside the driver (via Google app or directly on device)
  • Chromecast media will not resume after notifications; this may be a real nuisance for some of you; I may have to consider disabling this for Chromecast devices
  • Cannot control volume on Chromecast devices
  • I’ve not implemented any connection monitoring or retry cycles, but this may be needed for a more robust driver

Limited Testing has been done:

  • Only with cast-web-api version 1.2.1 (the most recent)
  • Only with Nest mini 2nd gen and Chromecast HD devices
  • So far, I’ve done little testing with automations other than notifications
  • Minimal experimentation with various presets
  • No testing with Groups
  • No testing with parallel use of the legacy SmartApp and DTH devices

Some observations as I’ve developed this:

  • the cast-web-api is a bit flakey at times. As mentioned earlier, I see fairly frequent disconnects with the actual devices, but it does eventually restore connection
  • ability to control Chromecast devices is pretty limited without access to Assistant commands
  • If you want better integration and control of a TV media controller, I’d recommend Roku - I have a driver that provides much more control and it does not require an intermediate app running on another computer.

Some points about getting it up and running and configured:

  • You do not use the legacy SmartApp with this driver
  • The first time you do an Add device / Scan for nearby devices, a ‘Manager’ device is created in your ‘No room assigned’ room. You need to then configure the network address of your cast-web-api app in device settings. Status field on Controls screen will show success or failure. Info field on Controls screen will show all Cast devices found and configured, once you complete the second discovery step below
  • If you want to, you can also configure your 6 presets on this manager device. Note that title - subtitle are provided in one field (just separate with a - character), and I’ve omitted the image URL for now. (Not sure how important that is for anyone)
  • Assuming you are now connected to cast-web-api, you can do another Add device / Scan for nearby devices and now your Cast devices reported by cast-web-api will be created and found in your ‘No room assigned’ room.
  • Configure your switch and track control options in each device; ignore the Google TTS language selection for now since it’s not working
  • Although not normally needed, you can use the ‘pull-down’ gesture on a device Controls screen to force a refresh with the device; the Refresh button on the Manager device will reset the connection with the cast-web-api.

That’s essentially it. Let me know your feedback and I’ll get things fixed as we find them.


Channel: SmartThings. Add a little smartness to your things.
Driver: Google Cast V0.1
Version: 2022-12-27T03:54:45.711448614

7 Likes