接入 Nest 是 Home Assistant 中步骤最繁琐的集成之一,需要科学上网,因为 Google 要求的安全认证非常严格。

请做好心理准备,整个过程大概需要 20-30 分钟,并且 Google 会收取 5 美元 的一次性开发者费用(这是 Google 收的,不是 HA 收的)。


✅ 准备工作(必读)

  • 账号:你需要一个 Google 账号(建议使用非 G-Suite 的个人 Gmail)。
  • 外网访问:你的 Home Assistant 必须能通过 HTTPS 访问(例如配置了 SSL 证书),或者你使用的是 Nabu Casa 云服务。
  • 信用卡:用于支付 Google Device Access 的 5 美元费用。
  • 电脑操作:请务必在电脑浏览器上操作,不要用手机。

第一步:创建 Google Cloud 项目 (GCP)

我们需要先向 Google 申请一个“云项目”来获取 API 权限。

  • 访问 并登录。
  • 点击左上角的项目下拉菜单,选择 “新建项目” (New Project)。
  • 项目名称:随便填,例如 HA-Nest。
  • 点击 创建 (Create)。

项目创建好后,确保左上角选中了你刚创建的 HA-Nest 项目。

启用 API:

  • 点击左侧菜单 “API 和服务” > “库” (Library)。
  • 搜索 Smart Device Management API,点击进入并 启用 (Enable)。
  • 再次搜索 Cloud Pub/Sub API,点击进入并 启用 (Enable)。

第二步:配置 OAuth 认证屏幕

  • 在 Google Cloud Console 左侧菜单,点击 “API 和服务” > “OAuth 同意屏幕” (OAuth consent screen)。
  • User Type 选择 “外部” (External),点击 创建。
  • 应用信息:
  • 应用名称:Home Assistant
  • 用户支持邮箱:选你的邮箱。
  • 开发者联系邮箱:填你的邮箱。
  • 其他留空,点击 保存并继续。

范围 (Scopes):直接点 保存并继续 跳过。

测试用户 (Test users):

  • 点击 添加用户 (Add Users)。
  • 一定要输入你自己的 Google 邮箱地址(就是你用来登录 Nest 的那个)。
  • 点击 保存并继续。

第三步:获取凭证 (Credentials)

  • 点击左侧菜单 “API 和服务” > “凭证” (Credentials)。
  • 点击上方 “创建凭证” (Create Credentials) >“OAuth 客户端 ID” (OAuth client ID)。
  • 应用类型:选择 “Web 应用” (Web application)。
  • 名称:HA Credentials。
  • 已获授权的重定向 URI (Authorized redirect URIs):
  • 点击 添加 URI。
  • 输入:https://my.home-assistant.io/redirect/oauth
  • 注意:这是官方推荐的最简单方式,避免你自己配置复杂的 URL。

点击 创建。

重要:屏幕上会弹出 客户端 ID (Client ID) 和 客户端密钥 (Client Secret)。

  • ⚠️ 请务必复制这两个字符串保存到记事本里,后面马上要用!

第四步:注册 Device Access Console (需付 $5)

  • 访问 。
  • 点击 Go to the Device Access Console。
  • 勾选同意条款,支付 5 美元 费用(如果以前付过就不用了)。
  • 支付完成后,点击 Create project。
  • Project Name:填 HA Nest。
  • OAuth client ID:填入你在 第三步 中获取的 客户端 ID (Client ID)。
  • 点击 Next。
  • Events:确保勾选 Enable Events,然后点击 Create project。
  • 重要:创建成功后,你会看到一个 Project ID(格式通常是长长的一串字符,类似 UUID)。
  • ⚠️ 复制这个 Project ID,保存到记事本,标记为“Device Access Project ID”。

第五步:在 Home Assistant 中接入

回到你的 Home Assistant 界面 (2025.12.2 版本)。

  • 点击左侧侧边栏的 配置 (Settings) >设备与服务 (Devices & services)。
  • 点击右下角的 添加集成 (Add Integration)。
  • 搜索 Google Nest 并点击。
  • 选择 Cloud (OAuth) 方式(通常是默认)。
  • 接下来会让你填写这几个关键信息(请从你的记事本里复制):
  • Cloud Project ID:这是你在 第一步 里创建的 Google Cloud 项目的 ID(不是 Device Access ID)。
  • 查找方法:在 Google Cloud Console 首页 Dashboard 的“项目信息”卡片里可以看到

Device Access Project ID:这是你在 第四步 结尾复制的那串 ID。

Client ID:第三步获取的。

Client Secret:第三步获取的。

点击 下一步 或 提交。

Home Assistant 会弹出一个新窗口引导你去 Google 登录授权。

  • 如果是“Google 未验证此应用”的警告,点击 高级 (Advanced) >转至…[。
  • 勾选所有权限(Nest Thermostat, Energy 等)。
  • 最后确认链接。

如果一切顺利,页面会跳转回 Home Assistant,并提示“成功”。

常见问题排查

  • 错误:Error 400: redirect_uri_mismatch
  • 原因:你在第三步填写的“重定向 URI”和 Home Assistant 实际使用的不一致。
  • 解决:确保 Google Cloud Console 里的重定向 URI 是 https://my.home-assistant.io/redirect/oauth。

找不到实体?

  • 集成添加成功后,可能需要几秒钟同步。去“开发者工具” > “状态”里搜索 climate.开头的实体。

Pub/Sub 错误

  • 通常 HA 会自动处理 Pub/Sub 订阅。如果报错,请检查你在第一步是否启用了 Cloud Pub/Sub API。

恭喜你!现在你应该能在 Home Assistant 面板里看到并控制你的 Nest 温控器了。

相关新闻

laitecn@gmail.com

QQ
微信