BroadLink製の[RM]シリーズをスマホアプリなどを使用せずにPythonコードから赤外線コードを取得・送信する手順を忘録的に投稿しておきます。
BroadLink RM4 mini
現在でもAmazonで購入可能な[Broadlink RM4 ミニスマートリモコン 赤外線ブラスターハブ スマートホームオートメーション テレビ/エアコン/赤外線リモコン交換用 Alexa/GoogleAssistant/IFTTTに対応]です。
通常は、スマホアプリで Wi-Fi を使ってローカルネットワークに追加できますが、Pythonで利用できる[python-broadlink]を使ってセットアップも可能です。
詳しい内容は、別記事をご覧ください。
Pythonで赤外線リモコンのコードを取得
準備作業として pip でライブラリをインストールしておきます。
pip3 install broadlink
インストールが終わったら、次のコードで赤外線リモコンが送信しているコードが取得できます。
import broadlink
import time
device = broadlink.discover()[0]
device.auth()
print("学習モードで実行します")
device.enter_learning()
time.sleep(5) # ←これ重要
print("リモコンのボタンを押してください")
while True:
try:
data = device.check_data()
if data:
print("入力されたコードは:", data.hex())
break
except:
pass
time.sleep(1)
実行して[リモコンのボタンを押してください]まで待ち、BroadLinkデバイスに向けて赤外線リモコンのボタンを押すと、受信されたコードが表示されます。
まとめ
Pythonでコードを送信
取得したコードを、デバイスから送信もできます。
import broadlink
device = broadlink.discover()[0]
device.auth()
ir = bytes.fromhex("取得したコード")
device.send_data(ir)
BroadLinkデバイスをリモコンで動作する機器に向けてから実行すると赤外線コードが送信されます。
まとめ
今回は短い記事ですが、BroadLink製の[RM]シリーズの赤外線リモコンの機能をPythonから操作する手順について書きました。
赤外線リモコンのボタンを押した時に送信されるコードを取得しておいて、送信を行うとリモコンを使わずにBroadLinkデバイスから機器を操作できます。
BroadLink製の[RM]シリーズの赤外線リモコン機能をPythonから制御したい人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。

