[心得] Home Assistant 使用Zigbee2MQTT
Hi, Guys
這次來分享把Zigbee 裝置加入至Home Assistant(HA),
而如何使用則是透過 Zigbee2MQTT 這套件來達成,
但是軟體準備好,硬體也要準備主節點(Zigbee Border-router).
為何使用它?
起因我覺得小米的Zigbee 裝置反應時間太慢了,
從HA 看Zigbee 裝置狀態是連線的,但是卻無法控制,隔一段時間則正常(Zigbee 失效,Wi
fi 皆正常)。
所以我才找找有無其他家的Zigbee 裝置可以走Local Network,
原本是想購買Sonoff 的裝置,又可串接HA 直接控制,但裝置又要重買,太貴惹。
反而看到了這解決方案,索性做點功課,直接下單,進行替換!
硬體採購來自蝦皮,關鍵字 zigbee cc2652
軟體需安裝 Zigbee2MQTT, Mosquitto broker
Zigbee2MQTT : 在Add-on Store 加入此Repository.
(https://github.com/zigbee2mqtt/hassio-zigbee2mqtt)
Mosquitto broker : 直接搜尋安裝即可。
https://i.imgur.com/h28XK1N.jpg
安裝完上述兩個套件,去Zigbee2MQTT 進行文件設定,
可參考:https://www.zigbee2mqtt.io/information/configuration.html
主要設定mqtt 底下的server: 輸入 mqtt://HA_IP_ADDR
advanced 的 channel 可以透過網路裝置查看家中的網路頻道使用圖,
填寫適合自己Zigbee 適合的頻道,在此就不進行科普,
簡單提起Zigbee IEEE 802.15.4e 走2.4GHz, 雖然支援跳頻,但此開源好像沒提到,
而我自己家裡較適合15,則替換之。
因為我使用USB 直接插的版本,所以searial: port: /dev/ttyUSB0
(如果不確定可以進Hardware 進行確認)
https://i.imgur.com/HGazYj6.png
然後就可以打開Zigbee2MQTT 了,
等候開機後,點進去可以看到乾淨的device list,
https://i.imgur.com/hedUFel.png
按下Permit Join 後,就可以去把小米的Zigbee 裝置重置,且讓它進入配對模式,
靜待片刻後,就可以看到裝置出現在list 中,然後就可以把家中的小米裝置全部加入至
其中
https://imgur.com/fDBY4S8.png
也支援牆壁開關的無線控制,但要從broker 那邊下指令去set state.
在此舉例雙鍵開關(https://www.zigbee2mqtt.io/devices/QBKG03LM.html)
有提到 Decoupled mode 的Topic and payload 如何塞,
所以!!
topic:
zigbee2mqtt/FRIENDLY_NAME/system/set
payload:
{
"operation_mode": {
"button": "left",
"state": "decoupled"
}
}
按下發佈後,可回到zigbee2mqtt 的裝置進行確認!
https://imgur.com/YKvuU07.png
在此就可以支援無線控制了。
然後就是寫自動化跟如何連動裝置,就看各位自由發揮了!
整體體驗一週後,所有裝置速度提升有感,彈性也又更高了。
畢竟Zigbee 裝置,查看支援表後,都可以無腦加入,沒支援的也可以自行手動增加。
有問題歡迎提出討論!
以上,謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.194.223.211 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/iOS/M.1626012733.A.148.html
推
07/11 22:30,
2年前
, 1F
07/11 22:30, 1F
→
07/11 22:59,
2年前
, 2F
07/11 22:59, 2F
→
07/11 22:59,
2年前
, 3F
07/11 22:59, 3F
補充一下,
這點我沒寫清楚,我Aqara 單火牆壁開關使用無線控制,剛好在Home Assistant 裡沒找到
可判斷的狀態,
光這點我就只好妥協在Mi Home 裡設置自動化,常常開關沒反應,很讓人惱怒。
※ 編輯: ho83leo (123.194.223.211 臺灣), 07/11/2021 23:22:02
推
07/12 00:05,
2年前
, 4F
07/12 00:05, 4F
→
07/12 00:05,
2年前
, 5F
07/12 00:05, 5F
有看過,但還沒做功課。
→
07/12 00:11,
2年前
, 6F
07/12 00:11, 6F
牆壁開關在小米網關這只有提供實體繼電器的狀態,沒有純按鍵的狀態(無線控制),
基於這點我就只好透過Mi Home處理,又偏偏時常開關斷線,要重開網關,很討厭。
推
07/12 01:58,
2年前
, 7F
07/12 01:58, 7F
是指MQTT 這協定,還是HA 的相關應用呢?
基本上Broker 打開,子裝置都設好Topic 就可以做到訂閱和發佈的事情。
想練習MQTT 用python 也可以實作簡單的程式做測試.
推
07/12 02:13,
2年前
, 8F
07/12 02:13, 8F
我也覺得是這樣,但我透過HA 控制小米Zigbee 裝置,很常失效。
我Proxy DNS 也清空,也有可能是我誤會它了。
推
07/12 07:30,
2年前
, 9F
07/12 07:30, 9F
※ 編輯: ho83leo (123.194.223.211 臺灣), 07/12/2021 07:54:44
推
07/12 09:54,
2年前
, 10F
07/12 09:54, 10F
應該說應用情境不同,較適合IoT 的RESTFul 可參考CoAP,支援RESTFul API, 但個人比較
傾向MQTT,因為比較好用。
推
07/12 09:57,
2年前
, 11F
07/12 09:57, 11F
→
07/12 10:13,
2年前
, 12F
07/12 10:13, 12F
→
07/12 10:13,
2年前
, 13F
07/12 10:13, 13F
→
07/12 10:35,
2年前
, 14F
07/12 10:35, 14F
真的,小時不懂事,都亂買東西 qq
※ 編輯: ho83leo (27.242.72.128 臺灣), 07/12/2021 12:25:13
推
07/12 13:15,
2年前
, 15F
07/12 13:15, 15F
推
07/12 14:04,
2年前
, 16F
07/12 14:04, 16F
推
07/12 14:37,
2年前
, 17F
07/12 14:37, 17F
→
07/12 14:38,
2年前
, 18F
07/12 14:38, 18F
→
07/12 14:38,
2年前
, 19F
07/12 14:38, 19F
我網關是中國版本第一代,難道…
推
07/12 15:49,
2年前
, 20F
07/12 15:49, 20F
→
07/12 15:49,
2年前
, 21F
07/12 15:49, 21F
→
07/12 15:50,
2年前
, 22F
07/12 15:50, 22F
→
07/12 15:50,
2年前
, 23F
07/12 15:50, 23F
感覺還不賴,可以設定更多裝置連動了。
噓
07/12 21:02,
2年前
, 24F
07/12 21:02, 24F
因為你視野只有繁體中文,而且連你都知道Home Assistant了,我更覺得這不小眾 哈哈
※ 編輯: ho83leo (123.194.223.211 臺灣), 07/12/2021 23:44:48
推
07/13 00:57,
2年前
, 25F
07/13 00:57, 25F
推
07/13 03:06,
2年前
, 26F
07/13 03:06, 26F
→
07/13 03:06,
2年前
, 27F
07/13 03:06, 27F
→
07/13 03:06,
2年前
, 28F
07/13 03:06, 28F
→
07/13 03:06,
2年前
, 29F
07/13 03:06, 29F
→
07/13 03:08,
2年前
, 30F
07/13 03:08, 30F
→
07/13 03:08,
2年前
, 31F
07/13 03:08, 31F
→
07/13 03:26,
2年前
, 32F
07/13 03:26, 32F
→
07/13 07:31,
2年前
, 33F
07/13 07:31, 33F
推
07/13 12:30,
2年前
, 34F
07/13 12:30, 34F
→
07/13 12:30,
2年前
, 35F
07/13 12:30, 35F
→
07/13 12:43,
2年前
, 36F
07/13 12:43, 36F
→
07/13 12:43,
2年前
, 37F
07/13 12:43, 37F
→
07/13 12:48,
2年前
, 38F
07/13 12:48, 38F
→
07/13 12:48,
2年前
, 39F
07/13 12:48, 39F
→
07/13 12:50,
2年前
, 40F
07/13 12:50, 40F
→
07/13 12:50,
2年前
, 41F
07/13 12:50, 41F
→
07/13 12:52,
2年前
, 42F
07/13 12:52, 42F
→
07/13 13:47,
2年前
, 43F
07/13 13:47, 43F
→
07/13 13:48,
2年前
, 44F
07/13 13:48, 44F
推
07/13 13:48,
2年前
, 45F
07/13 13:48, 45F
→
07/13 13:49,
2年前
, 46F
07/13 13:49, 46F
推
07/13 18:44,
2年前
, 47F
07/13 18:44, 47F
→
07/13 18:44,
2年前
, 48F
07/13 18:44, 48F
→
07/13 18:44,
2年前
, 49F
07/13 18:44, 49F
→
07/13 18:44,
2年前
, 50F
07/13 18:44, 50F
→
07/14 08:24,
2年前
, 51F
07/14 08:24, 51F
→
07/14 08:24,
2年前
, 52F
07/14 08:24, 52F
→
07/14 08:24,
2年前
, 53F
07/14 08:24, 53F
→
07/14 08:24,
2年前
, 54F
07/14 08:24, 54F
→
07/14 08:24,
2年前
, 55F
07/14 08:24, 55F
推
07/14 13:06,
2年前
, 56F
07/14 13:06, 56F
→
07/15 15:32,
2年前
, 57F
07/15 15:32, 57F
→
07/15 15:32,
2年前
, 58F
07/15 15:32, 58F
→
07/15 15:32,
2年前
, 59F
07/15 15:32, 59F
→
07/15 15:34,
2年前
, 60F
07/15 15:34, 60F
→
07/15 15:49,
2年前
, 61F
07/15 15:49, 61F