Google's decision to retire the Works with Nest platform without an immediate replacement caused significant concern among Home Assistant users. This change rendered the Nest integration in Home Assistant ineffective for those without an existing Works with Nest developer account.
Contents
Understanding the Works with Nest Platform
The Works with Nest (WWN) platform, developed by Nest Labs and later integrated into Google, allowed third-party devices and services to seamlessly interact with Nest products like thermostats, cameras, and smoke detectors. This platform enabled enhanced automation, event-based triggers, and broad integration with other smart home devices, providing users with a streamlined and convenient home automation experience. Developers could access Nest’s API to build upon its functionalities, fostering a robust ecosystem. Key features of the WWN platform included:
- Inter-device Communication: WWN enabled various smart devices to communicate and work together. For example, a smart lock could trigger the Nest thermostat to adjust the temperature when someone enters the home.
- Event-Based Triggers: The platform allowed users to set up event-based actions. For instance, the Nest Protect smoke detector could alert other devices in the home to turn off HVAC systems to prevent the spread of smoke.
- Automation and Scripting: WWN supported complex automation routines, which users could configure through their smart home systems or apps. This made it possible to create customized and efficient home automation experiences.
- Third-Party Integration: Many third-party devices and services, such as Philips Hue lights and IFTTT, could be integrated with Nest products, broadening the ecosystem of compatible smart home gadgets.
- Developer Access: Developers had access to Nest’s API, which allowed them to build and innovate upon the functionalities offered by Nest products, ensuring a robust and expanding range of uses.
In 2019, Google announced the discontinuation of WWN to transition Nest products to the Google Home ecosystem, aiming to improve privacy and security. This abrupt move disrupted users who relied on WWN for their smart home setups, leading to concerns over lost functionality and the impact on existing integrations. To fill the gap left by WWN, Google introduced the Smart Device Management (SDM) API, offering similar integration capabilities with a focus on better security and data privacy. Despite its potential, the SDM API has faced mixed reactions due to initial limitations, complexity, and costs.
The Smart Device Management (SDM) API: A New Solution
The Smart Device Management (SDM) API, provides a potential pathway for integrating Nest devices with Home Assistant. Digital Spring Media, a YouTuber, successfully integrated their Nest doorbell camera using the SDM API. The YouTuber discusses the setup process, highlighting the complexity involved, including the need for terminal commands and JSON file editing. They also address the requirement to refresh the access token every hour and mention a workaround using Node-RED.
Proceed with Caution: Current Limitations
Before diving into this new integration, it's crucial to understand several limitations and challenges:
- Access Cost: Using the Smart Device Management API requires a $5 fee, with no trial option available. This cost is a necessary step to gain access to the API and begin the integration process.
- Device Support: Not all Nest devices are supported by the SDM API. While cameras, displays, doorbells, and thermostats are included, the Nest Protect smoke and CO alarm is not.
- Setup Complexity: The integration process is complex, involving terminal commands and JSON file editing. Although Digital Spring Media's video provides a useful walkthrough, some users might prefer to wait for a more user-friendly solution.
- Token Refresh: The access token needs to be refreshed every hour. However, Reddit user /u/zoommicrowave shared a solution using Node-RED, which automates this process. Details of this fix are available in a Reddit thread.
Thanks for featuring my video on the blog! I also made another video on node-red following zoom-microwave’s reddit article
Thanks for the videos, I have used your NodeRed solution until Home Assistant made the integration available. It now does the same in a supported way using an automation like the one I set up with a separate datetime titled picture for each person event:
alias: Person Picture
description: ”
trigger:
– platform: device
device_id:
domain: nest
type: camera_person
condition: []
action:
– service: camera.snapshot
data:
entity_id: camera.frontdoor
filename: >-
/config/www/person/{{now().strftime(‘%Y, %-d %B –
%Hu%Mm%Ss’)}}.jpg
entity_id: camera.frontdoor
mode: single