— Home Assistant, MQTT, Mac — 1 min read
對於 IOT 設備來講用 MQTT 協議來溝通省電又省頻寬,然後實作簡單、效果又好。
而我自己主要是想用 IOTLink 這個軟體讓 Home Assistant 能夠控制我的 Windows 電腦,所以就開始研究如何讓 Home Assistant 串接 MQTT。
Home Assistant 官網串接 MQTT 的文件裡提到的 Mosquitto broker add-on 其實只能給使用 Home Assistant OS 或是 Supervisor 的人安裝,而像我使用 Home Assistant Core 方式安裝的人就沒辦法使用 add-on,那串接 MQTT 就只能自己另外架設 broker 了。
所謂的 MQTT broker 就像是一個溝通的橋樑,各種裝置會把訊息丟到它上面,也會看上面有沒有給自己的訊息。
要架設 MQTT Broker 其實很簡單,在 macOS 的話其實一條指令就可以安裝 Mosquitto 這套 Broker :
1brew install mosquitto
安裝好之後可以用這條指令啟動它 :
1/usr/local/sbin/mosquitto -c /usr/local/etc/mosquitto/mosquitto.conf
服務預設是啟動在 1883 port,可以用 curl 確認一下 :
1curl localhost:1883
如果是顯示 "Connection reset by peer" 而不是 "Connection refused" 就代表成功囉 !
前往 Settings -> Intergrations → 點擊 “ADD INTERGRATION” → 搜尋 MQTT : 選擇第一個選像 "MQTT" : 輸入連接的資訊 : Broker : 填寫連接的位置,這裡我填 localhost 是因為我 broker 是啟動在跟 Home Assistant 同一台電腦下,如果你是啟動在不同電腦的話,應該要填 broker 的 ip 位置或是域名,例如 192.168.1.123 之類
Port : 如果你沒修改設定的話那應該是預設的 1883
Username 和 Password : 如果你有設定 Mosquitto 的帳號密碼的話就填上去,沒設定可以不填
然後按下 "Next" 應該就成功囉 !