找回密碼
 立即註冊
    查看: 194|回覆: 0

    哪些 Home Assistant 實體進得了「家庭」App:完整對照表與五種轉換做法

    [複製鏈接]

    !lvup!   100%

    386

    主題

    27

    回帖

    2200萬

    積分

    管理員

    積分
    22006063
    發表於 2026-9-21 11:07:24 | 顯示全部樓層 |閱讀模式
    把實體丟進 HomeKit Bridge 之後,結果通常是三種之一:
    出現而且正常、出現但變成奇怪的東西、完全沒出現。

    這一篇把三種情況各自的原因、怎麼判斷、怎麼修,一次講完。
    讀完你會知道手上任何一個實體會變成什麼,以及不滿意的話怎麼改。

    哪些 Home Assistant 實體進得了「家庭」App:完整對照表與五種轉換做法

    先建立正確的心智模型:HomeKit 看的是網域和 device_class

    Home Assistant 的 HomeKit 整合在啟動時,會對每一個要橋接的實體做兩件事:


    • 看它的網域(entity_id 的第一段,light / switch / sensor / binary_sensor…)決定大方向
    • 看它的device_class 與單位決定變成哪一種 HomeKit 配件


    兩件事都對,才會變成你想要的東西。
    很多人只改了其中一個,然後對著「怎麼還是不對」發呆。

    對照表一:開關類(這些都支援,而且很多人以為不支援)

    下面這些網域全部以「開關」的形式出現在「家庭」App:


    • switch —— 一般開關
    • input_boolean —— 輔助元件的開關,支援
    • input_button、button —— 按鈕,按下去執行然後自己彈回,支援
    • script —— 腳本,按下去執行,支援
    • scene —— 場景,支援
    • automation —— 自動化,變成一個可以開關的開關(開關的是「啟用/停用」)
    • vacuum —— 掃地機,變成一個開關(只能開始/停止,看不到狀態)
    • lawn_mower —— 割草機
    • remote —— 遙控器(不支援「活動」的那種)


    網路上很多教學說 input_boolean 和 input_button 不能橋接,那是舊資訊。
    現在直接收進 filter 就會出現,不需要用 template switch 包一層。

    input_select 和 select 也支援,不過型態特別:它會變成一個
    延長線型的配件(power strip),每一個選項是上面的一個插座按鈕。
    按下「看電影」那個按鈕就等於把 input_select 切到「看電影」。

    對照表二:感測器類

    binary_sensor(只有開/關兩種狀態的),支援這十種 device_class:


    • door、window、garage_door、opening —— 門窗接觸
    • motion —— 動作偵測
    • occupancy —— 佔用偵測
    • smoke —— 煙霧
    • gas —— 可燃氣體
    • co2 —— 二氧化碳
    • moisture —— 漏水


    這裡有一個很關鍵、而且跟直覺相反的行為:
    不在清單裡的 device_class,不會被跳過,而是會被當成 occupancy(佔用偵測)。

    所以一個 device_class: running 的 binary_sensor,送過去之後
    會出現,只是「家庭」App 裡顯示成「偵測到/未偵測到」。

    這件事的實務意義是:binary_sensor 沒出現的話,原因絕對不是 device_class,
    去查 filter 有沒有把它收進來、實體當下是不是 unavailable。
    很多人在這裡浪費一整個晚上去改 device_class。

    數值型 sensor,只有六種對得上,而且每一種都有明確的判定條件:


    • 溫度 —— device_class 是 temperature而且單位是 °C 或 °F
    • 濕度 —— device_class 是 humidity而且單位是 %
    • 光照 —— 單位是 lx 或 lm,或者 device_class 是 illuminance
    • 空氣品質 —— device_class 是 gas / pm10 / pm25 / nitrogen_dioxide / volatile_organic_compounds,或者 entity_id 裡含有 gas / pm10 / pm25 字樣
    • 二氧化碳 —— device_class 是 carbon_dioxide,或者 entity_id 裡含有 co2
    • 一氧化碳 —— device_class 是 carbon_monoxide


    溫度和濕度是「兩個條件都要成立」,這是最常中的坑:
    device_class 設對了但單位寫成 "C" 而不是 "°C",它就不會出現,而且日誌不會特別講。

    空氣品質和二氧化碳則寬鬆很多,連 entity_id 裡有那幾個字都算。
    所以一個叫 sensor.bedroom_pm25_raw 的東西就算沒設 device_class 也會被當成空氣品質感測器 ——
    這也解釋了某些「我明明沒設定它為什麼跑出來」的情況。

    以下還有約 82% 的內容
    登入後即可閱讀完整教學

    登入繼續閱讀使用 Google 登入
    您需要登入後纔可以回帖 登入 | 立即註冊

    本版積分規則

    延伸閱讀

    加入惟家 LINE 群 QR Code加入惟家 LINE 群

    Archiver|手機版|惟家的智能論壇

    GMT+8, 2026-11-10 00:45 , Processed in 0.118694 second(s), 25 queries .

    快速回覆 返回頂部 返回列表