:::

在Home Assistant使用紅外線遙控器Moes UFO-R11 / Using Infrared Remote Control Moes UFO-R11 in Home Assistant

2025-0122-012555.png

紅外線遙控器Moes UFO-R11可以透過Zigbee2MQTT跟Home Assistant整合在一起,讓我們能夠在Home Assistant裡面直接控制冷氣、電風扇等紅外線遙控的裝置。但是UFO-R11的設定可是出乎意料之外的複雜,讓我們用這篇來記錄一下做法吧。

The Moes UFO-R11 infrared remote control can be integrated with Home Assistant via Zigbee2MQTT, allowing us to directly control infrared-controlled devices like air conditioners and fans within Home Assistant. However, setting up the UFO-R11 is unexpectedly complex. Let's use this post to document the process.


Home Assistant與Zigbee2MQTT的關係 / The relationship between Home Assistant and Zigbee2MQTT

2025-0122-003502.png

Home Assistant (HA) 是一款開源的居家自動化平台,它內建了多種連結方式,能夠與各種智慧裝置連接。舉例來說,我們可以透過WIFI連接Tuya或Broadlink的設備,或是透過藍芽連線到SwitchBot的手指機器人。那如果我們要連上Zigbee設備的話,一般來說我們都會透過Zigbee2MQTT來居中協調。

2025-0122-003743.png

Zigbee2MQTT,簡稱z2m,是一個將 Zigbee 裝置橋接到 MQTT 的橋接器,然後z2m會將各式各樣的 Zigbee 裝置整合到 Home Assistant 中。Zigbee2MQTT 就像一座橋樑,連線 Zigbee 裝置和 MQTT 伺服器。它將 Zigbee 裝置的資料轉換成 MQTT 訊息,讓 Home Assistant 可以讀取和控制這些裝置。透過 Zigbee2MQTT,使用者可以擺脫廠商專屬的閘道器或應用程式,自由選擇和組合不同品牌的 Zigbee 裝置,打造更彈性、客製化的智慧家庭環境。

Zigbee紅外線遙控器Moes UFO-R11 / Zigbee infrared remote control Moes UFO-R11

2025-0122-003826.png

Moes UFO-R11是一款透過Zigbee通訊的智慧型紅外線萬用遙控器,旨在取代家中眾多的紅外線遙控器。它可以學習並發送各種紅外線訊號,控制家中例如冷氣、電視、風扇等支援紅外線遙控的電器。透過連線Zigbee閘道器(Gateway),你可以將Moes UFO-R11整合到智慧家庭系統中,包括Home Assistant,進而使用智慧型手機App或語音助理來控制家電,提升居家生活的便利性。

20250122_004004.jpg

Moes UFO-R11最特別的地方在於能用兩顆AAA電池來進行供電。我用過許多智慧家電的紅外線遙控器,大多數都是用WIFI連接。WIFI的高耗電量註定了這些裝置必須一直接著電線,這讓我在佈置智慧家電的時候受到了很大的限制。Moes UFO-R11使用的Zigbee協定都相當節能,因此Zigbee裝置大多都可以用電池就能獨立運作。這讓我能將Moes UFO-R11輕鬆放置在家中任何角落。

這下子萬能遙控器總算像是遙控器了,不然一直接著線非常不方便啊。


將UFO-R11加入到Zigbee2MQTT / Add UFO-R11 to Zigbee2MQTT

在使用UFO-R11之前,我們要先將UFO-R11加入z2m。

2025-0122-004853.png

我們在z2m開啟允許讓裝置加入。

20250116_BLOG_HA_UFO-R11.note-cropped.png

我們打開UFO-R11底下的電池蓋板,然後長按Reset按鈕。

2025-0122-005019.png

接著Moes UFO-R11應該就能順利加入。

由於UFO-R11本身沒有指示燈,我們很難判斷UFO-R11有沒有正常啟動。如果一直沒能順利加入的話,有時候是電池的問題。我裝充電電池的時候無法順利啟動UFO-R11,但換成鹼性電池就可以運作了。

2025-0122-005316.png

讓我們進入UFO-R11設備,把它設定一個自己容易記憶的名稱後,切換Exposes頁面。以下的操作大多都會在Exposes頁面這裡進行。


學習紅外線指令 / Learning IR Code

像是Moes UFO-R11這種學習型紅外線遙控器的操作,我們需要關注兩個重點:學習與發送。學習是學習原始紅外線遙控器發出的訊號,將它保存到設備裡面;發送則是將學習到的訊號發送給冷氣或電風扇等裝置。

2025-0122-005451.png

開啟Zigbee2MQTT中UFO-R11的Expose。我們可以看到learn_ir_code跟learned_ir_code的資訊。前者是開啟學習功能的開關,後者是記錄學習到的訊號。我們先把這個頁面開好,然後來準備硬體的設定。

20250122_005702.jpg

接下來拿出你的UFO-R11跟原本的紅外線遙控器。

20250116_BLOG_HA_UFO-R11.note_1_-cropped.png

假如我們現在要學習的是「開機」按鈕。

2025-0122-010032.png

回到Zigbee2MQTT裡,按下learn_ir_code的「ON」。

20250122_010057.jpg

對UFO-U11按下紅外線遙控器的按鈕。

2025-0122-010228.png

回到Zigbee2MQTT,此時learned_ir_code應該會出現一長串文字,這就是紅外線指令訊號。紅外線訊號的文字大概會像是這樣:

B4EgphE7AqEGgAPgCwFAG0ABQAdAA+APAUAbQAPgEwHgCx/gCxPgJwEDgSA7AuATR8AbwAdAAQJmAjvggAHAl0AHQANAAcAHwAFAD8ADQAFAC8ABQAtBA+AXAUAn4AcBQQdAA+AHAcAT4AcH4BsBQDNAa0AHwAFAC8ADQAFAC0ABQAfAA0AzQAFAD+ADCwdmAjsCOwI7Ag==

2025-0122-010329.png

UFO-R11不會保存訊號內容,所以這個紅外線訊號,我是另外用Google Sheet表格來記錄。這個紅外線訊號會在後面發送的時候用到,請好好記下來吧。如果要學習其他訊號,請依樣畫葫蘆地取得紅外線遙控器上面每個按鈕的指令訊號。


發送紅外線指令訊號 / Send infrared command signal

2025-0122-010703.png

相較於學習指令的容易理解,UFO-R11要發送指令就困難得多。從原理來看,我們要在UFO-R11的ir_code_to_send欄位裡填上紅外線訊號,這樣就能讓它發送訊號。但如果我們要在Home Assistant裡面操作的話,因為紅外線訊號的長度超過了Home Assistant的限制,所以我們得用MQTT發佈的方式將紅外線訊號設定到ir_code_to_send。

2025-0122-010520.png

腳本內容的YAML如下:

action: mqtt.publish
metadata: {}
data:
  evaluate_payload: false
  qos: "2"
  retain: false
  topic: zigbee2mqtt/紅外線遙控器 電池 Zigbee UFO-R11 {Drosera heliamphora}/set
  payload: >-
    {"ir_code_to_send":
    "B8Ug6BEuArUGgANAAQJmAi7gAgEBZgJAG0ABQAdAA8ABAmYCLuAAAUAXwAPAAeAHH4APgAXAK0AHwAGAGQEuAsAH4CMBA8UgLgJAAeADT8ALQE/AC8AHwAHgAw9AJ+ABAeATDeAFAeALKUAT4CMDQIdAA8AzQAtAA8APQAdAD+AHA8AXQAdBA0AHQANAJ0AHQAFAB8ADwBfAD+AvB0AB4Bc74CtrwDNAB0AD4ARjAgIuAg=="}

其中紅字的「紅外線遙控器 電池 Zigbee UFO-R11 {Drosera heliamphora}」是UFO-R11在Home Assistant的名稱,不是Entity ID。而藍字的部分就是紅外線訊號。

這個腳本就能讓紅外線訊號設定到UFO-R11的ir_code_to_send欄位,然後UFO-R11就會發送紅外線訊號。接著UFO-R11會自動清空ir_code_to_send,並等待下一個要發送的訊號,因此我們不需要手動重置ir_code_to_send,不用擔心UFO-R11會重複發送訊號。

2025-0122-011409.png

值得注意的是,在UFO-R11設定ir_code_to_send、實際發送、清空ir_code_to_send的整個動作大概要3秒鐘。因此我們在Home Assistant發送紅外線訊號的時候,如果要發送多個紅外線指令,指令之間必須加上「delay」3秒以上的設定。這樣才能確保UFO-R11確實發送每一條紅外線指令。


結語 / Conclusion

在使用Home Assistant的這段經驗中,我用過了非常多種「萬能遙控器」。奇怪的是,每種萬能遙控器的學習指令與發送指令的方式都大不相同。本篇介紹的Moes UFO-R11要用z2m學習指令、用MQTT發佈來發送指令;Broadlink RM4 Pro要用Home Assistant的Learn Command學習指令、用Send Command發送指令;塗鴉系列的萬能遙控器則是在塗鴉自己的APP裡面學習指令,然後用「場景」來發送指令。目前看來,塗鴉的邏輯最容易理解,也非常好操作。但一定要用WIFI跟遠端伺服器連線才能運作的這點,還是讓我決定逐步替換塗鴉的WIFI設備。

雖然UFO-R11的學習跟發送都有點麻煩,但設定好之後,運作起來倒是意外地穩定。即時稍微被物品遮擋,紅外線訊號也能順利發送給冷氣。最後就是不知道這2顆AAA電池可以使用多久就是了。沒關係,兵來將擋、水來土掩,到時候冷氣開不起來我就知道了。


那這篇關於Moes UFO-R11跟Home Assistant的整合就介紹到這裡了。文章的最後要來問大家的是,你會想用萬能遙控器跟智慧家居整合嗎?

  • 1. 會:回家自動開冷氣、離家自動關冷氣,幸福感UPUP。
  • 2. 不會:這麼懶幹嘛,不過就是按個按鈕而已啊。
  • 3. 再想想:如果遙控器沒電了怎麼辦? (A:就...換電池而已)
  • 4. 好恐怖:這樣駭客不就可以遠端操控我們家的冷氣嗎?太危險了!
  • 5. 其他:歡迎在下面留言,分享你的看法吧!

總共5 則留言 ( 我要發問 , 隱藏留言 顯示留言 )

  1. 您好,請問 您使用 UFO-R11 時,搭配哪一款 zigbee coordinator 呢? 謝謝...

    回覆刪除
    回覆
    1. To Epson Guo,

      Zigbee Dongle CC2652P7
      在Home Assistant搭配Zigbee2MQTT使用

      刪除
    2. 謝謝您抽空回覆。
      再請教您兩個問題:
      1. Zigbee Dongle CC2652P7 是哪個牌子和型號?
      2. 我看您有使用 Tuya WSD500A,請問也是用 Zigbee Dongle CC2652P7 在 Home Assistant 搭配 Zigbee2MQTT 使用嗎?

      先謝謝您。

      刪除
    3. To Epson Guo,

      Zigbee Dongle CC2652P7是從蝦皮的「HA小玩家」買來的:
      https://shopee.tw/CC2652P7-zigbee2mqtt%E7%B6%B2%E9%97%9C%E3%80%8Eusb%E7%89%88%E3%80%8FHomeassistant-Z2M-%E6%A8%B9%E8%8B%BA%E6%B4%BE-ha-green-i.55902523.26504654917

      Tuya的溫溼度感應器也是這樣子搭配Z2M使用沒錯。
      不過我這邊看到的型號不是 WSD500A ,而是TS0201。
      https://blogger.googleusercontent.com/img/a/AVvXsEiLc5sTUVzu_r9T-a2AsB9wDw_rXpKnmxTNg9KmBYO-Yd_xlcS_vFzODfQrGLhlvNC3gqA7CIdUfdRc5cZBfsoBzLIkJUSRQ_EY0LOmGDUDNZ6zfON4LCc1FOWejKQBus-GCq30gdIRMNeFalOQRU6Zp-e9cZhdZjFSnjtaPqtYQ1JgeOcvCFoyxQ

      刪除