11月08, 2025

将HomePod mini的温湿度传感器数据添加到Home Assistant

概要

  1. 通过Home Assistant在HomeKit中新增一开关
  2. 在苹果家庭中为这个开关设置一自动化快捷方式
    • 当开关打开时,将HomePod的传感器数据POST到Home Assistant的API
  3. Home Assistant中设置自动化,定时打开开关

Home Assistant中设置

添加开关

首先在Home Assistant的 configuration.yaml 中新增:

automation: !include_dir_list automations/

input_boolean:
  homekit_sensors_update:
    name: HomeKit Sensors Collector
    initial: off

homekit:
  - filter:
      include_entities:
        - input_boolean.homekit_sensors_update

设置自动化

然后在 automations/homekit_sensor.yaml 中新增:

alias: Homekit - Sensor Collector
description: Get temperature and humidity data from HomePod mini
trigger:
  - platform: time_pattern
    minutes: /2
    id: time
action:
  - service: input_boolean.turn_on
    target:
      entity_id: input_boolean.homekit_sensors_update
  - delay: '00:00:05'
  - service: input_boolean.turn_off
    target:
      entity_id: input_boolean.homekit_sensors_update
mode: single

创建

依次点击左下角用户 - 安全 - 长期访问令牌 - 创建令牌,将生成的令牌复制

苹果家庭中设置

点击新增的开关,加入自动化操作,设置快捷方式如下:

获取温/湿度传感器的数据,然后POST https://ha_domain/api/states/sensor.homepodmini_temperature (sensor.后面的是自定义的名称,湿度可以换成homepodmini_humidity)

其中headers设置为:

{
    "Authorization": "Bearer <刚才复制的令牌>"
}

body设置为:

{
    "state": 温度数据(注意类型要选择数值), // 湿度就填湿度数据
    "device_class": "measurement",
    "state_class": "temperature", // 湿度就是 humidity
    "attributes": {
        "unit_of_measurement": "°C" // 湿度就是 %
    }
}

至此设置完成,可以在Home Assistant将 sensor.homepodmini_temperature 数据以及 sensor.homepodmini_humidity 数据添加到首页,并且每两分钟自动更新。

本文链接:http://blog.zireaels.com/post/homepod_sensors.html

-- EOF --

Comments