LoginSignup
2
4

More than 5 years have passed since last update.

Amazon Echoから家電を制御 0 ~RMmini3 + python-broadlinkで学習~

Last updated at Posted at 2018-07-28

リモコンを学習

以前の投稿と重複しますが、

$ ./broadlink_cli --device @ROOM.device --learnfile ファイル名

必要なボタンの学習をします。
使わないだろうボタンは、この先も使わないと思います。

$ ./broadlink_cli --device @ROOM.device —send @(さっき学習させた)ファイル名

で送信テストをしてみます。
正常に送出できたら、長いのでシェルスクリプトを作ります。

$ cd
$ vi room.sh

#!/bin/sh
cd /home/hoge/python-broadlink/cli
./broadlink_cli --device @ROOM.device --send @$1

を書いて、保存して終了。

$ ./room.sh ファイル名

RMmini3+python-broadlinkで学習させたファイルたち

~/python-broadlink/の下に./AIRCON./LIGHT./TVの各ディレクトリに学習させて出来上がったファイルを家電毎に置いています。
学習させた時点では人間が判別しやすいように、ローマ字表記でファイルを作成していますが、switchノードとmsg.payloadで扱いやすいように数字のファイル名でシンボリックリンクを作成しました。いや、プロパティの扱いがよくわかんないだけなんですけどね。

alexaに「alexa、テレビを92にして」と言うと、HDMI2に切り替えてくれます。
もちろん、「alexa、テレビを6にして」と言うとTBSがみれます。
シーリングライトに至っては、「alexa、シーリングライトを10にして」と言うと常夜灯を点灯します。もはや意味がわかりません。

~/python-broadlink/cli/
├── AIRCON
│   ├── 22 -> cool22
│   ├── 25 -> warm25
│   ├── auto
│   ├── cool22
│   ├── off -> stop
│   ├── on -> auto
│   ├── stop
│   └── warm25
├── LIGHT
│   ├── 10 -> LIGHT.night
│   ├── 100 -> LIGHT.full
│   ├── LIGHT.full
│   ├── LIGHT.night
│   ├── LIGHT.off
│   ├── LIGHT.on
│   ├── off -> LIGHT.off
│   └── on -> LIGHT.on
├── ROOM.device
├── TV
│   ├── CH
│   │   ├── 1
│   │   ├── 10
│   │   ├── 11
│   │   ├── 12
│   │   ├── 2
│   │   ├── 20 -> ../twinview
│   │   ├── 3
│   │   ├── 4
│   │   ├── 5
│   │   ├── 6
│   │   ├── 7
│   │   ├── 8
│   │   ├── 9
│   │   ├── 90 -> ../chidegi
│   │   ├── 91 -> ../hdmi1
│   │   ├── 92 -> ../hdmi2
│   │   ├── 99 -> ../epg
│   │   ├── down
│   │   └── up
│   ├── back
│   ├── bs
│   ├── chidegi
│   ├── data
│   ├── epg
│   ├── hdmi1
│   ├── hdmi2
│   ├── input
│   ├── mute
│   ├── off -> poweroff
│   ├── ok
│   ├── on -> poweron
│   ├── power
│   ├── poweroff
│   ├── poweron
│   ├── rec
│   ├── tvsleep
│   ├── twinview
│   ├── v1down
│   ├── v1up
│   ├── voldown
│   └── volup
├── air.sh
├── broadlink_cli
├── broadlink_discovery
├── ch.sh
├── light.sh
├── room.sh
└── tv.sh

air.shch.shlight.shtv.shも中身は一緒です。
全部room.shと同じで、シェルスクリプトに渡す変数の前にディレクトリ名を入れてあるだけです。ものぐさなので可能な限りタイプする文字数を減らすためです。

tv.sh
#!/bin/bash
cd /home/hoge/python-broadlink/cli
./broadlink_cli --device @ROOM.device --send @TV/$1

こんな感じに。

Amazon Echoで遊ぼう

前提環境

大凡1.5hで構築するraspberry pi + node-red + samba

Amazon Echoから家電を制御シリーズ

Amazon Echoから家電を制御 0 ~RMmini3 + python-broadlinkで学習~
Amazon Echoから家電を制御 1 ~node-red-contrib-alexa-local~
Amazon Echoから家電を制御 1.25 ~node-red-contrib-alexa-localの日本語の情報が少ないのでもう少し調べてみる~
Amazon Echoから家電を制御 2 ~テレビを我が手中に収めてやった 基本操作編~
Amazon Echoから家電を制御 3 ~テレビを我が手中に収めてやった ch操作編~
node-red-dashboardでwebリモコンを作ってみた

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4