M5StickCは赤外線のLEDを内蔵している。となれば、家電リモコンを作るしかないのです。
1年くらい前からESP8266でリモコン作りをしているので、カンタン。と思ったものの、ESP32搭載のM5StickCはいろいろ違うのでした。そうこうしているうちにまず試したのがこんな感じ。
M5StickC IR Remote
M5StickCのサンプルにIRを使ったものがあり、一見よく知ってるライブラリっぽいと思ったのですが、どうやってもうまくいかず(使用するリモコンコードの並びが違うっぽい)。そこで、今まで使ったことがあるライブラリから物色。
Arduino用の赤外線ライブラリはいくつかあり、ESP32に対応してる、というのもあったけど、試してみると受信しかできなかったり。あと、ピンを指定できないと意味ないし。とかいろいろあってたどり着いたのがこれ。
これを使って作ったのが、動画のやつ。とりあえず、日本メーカー各社のTVの音量を増減できるように。
linclip/IRsend-test: IRsend for M5StickC
ドキュメントを書いてないけど。とりあえず、コメント見て試してもらえる感じで。
最初は使用ライブラリを間違って書いてたのだけど、ツイッターでのやりとりでそれに気づき本日修正(助かりました)。
ESP32で使える、ピン変更ができるライブラリを見つけたのは、以下の記事から。
Slack から Windows, ESP-WROOM-32 を経由して自宅のエアコンをつける – Qiita
使用してるリモコンコードは、FUTABAというサイトで勉強しました。
iRemo2 リモコン・データベース – FUTABA HOME
使用してるライブラリにそのままつっこめる形で書かれてあります。
同種の情報はいろいろあるのだけど、形というかフォーマットが違ってたり。書いてる人の使っているデバイスによるんですかね。
あと、上記サイトの情報はTVがメイン。ブルーレイレコーダーなんかは書かれてない。ウチのレコーダーはPanasonic DIGA。これについては以前調べたデータがあったので、最後にここに書いておきます。作成中のプログラムに使っているコードをそのまま貼り付け。JSONで。
{“name”:”Panasonic”, “format”:”aeha”, “data”:{
“custom”:”4004″ //メーカーコード的なやつ
,”pow”:[“0D00BCB1″] // 電源
,”ch”:[“0D000805″,”0D008885″,”0D004845″,”0D00C8C5″,”0D002825″,”0D00A8A5″,”0D006865″,”0D00E8E5″,”0D001815″,”0D009895″,”0D00C1CC”,”0D00D8D5″]
,”cn”:[“0D002C21″,”0D00ACA1″] // チャンネル+ / –
,”arrow”:[“0D00A1AC”,”0D00111C”,”0D00616C”,”0D00E1EC”] // 矢印ボタン
,”list”: [“0D00D9D4″] // 録画一覧
,”epg”: [“0D00060B”] // 番組表
,”disp”: [“0D00FAF7″] // 表示
,”enter”:[“0D00414C”] // 決定 ENTER
,”smenu”:[“0D00010C”] // Sメニュー (汎用) 0x40 04 0D 00 010C;
,”back”: [“0D00818C”] // 戻る
,”color”:[“0D80028F”,”0D80820F”,”0D8042CF”,”0D80C24F”] // 色ボタン 青赤緑黄
}
}
これを使ってブラウザからコントロールするやつがほぼ完成したところ。どう公開しようか考え中。
あとでなんか思い出したら追加します。
コメント