Skip to content
esp10mm
TwitterGitHubEmail

Home Assistant Core 串接 MQTT

Home Assistant, MQTT, Mac1 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 就像是一個溝通的橋樑,各種裝置會把訊息丟到它上面,也會看上面有沒有給自己的訊息。

macOS 架設 Mosquitto 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" 就代表成功囉 !

Home Assistant 連接 Mosquitto MQTT Broker

前往 Settings -> Intergrations → 點擊 “ADD INTERGRATION” → 搜尋 MQTT : 0.png 選擇第一個選像 "MQTT" : 1.png 輸入連接的資訊 : 2.png Broker : 填寫連接的位置,這裡我填 localhost 是因為我 broker 是啟動在跟 Home Assistant 同一台電腦下,如果你是啟動在不同電腦的話,應該要填 broker 的 ip 位置或是域名,例如 192.168.1.123 之類

Port : 如果你沒修改設定的話那應該是預設的 1883

Username 和 Password : 如果你有設定 Mosquitto 的帳號密碼的話就填上去,沒設定可以不填

然後按下 "Next" 應該就成功囉 !