ESP-WROOM-02を赤外線リモコンに

今回はESP-WROOM-02で赤外線通信をする方法について書きます。

ESP-WROOM-02の基本的な使い方についてはこちらをご覧ください。
taltalp.hatenablog.jp

1.今回の目標

ESP-WROOM-02で赤外線通信を出来るようにする。
時間があればスマホなどからブラウザで操作できる「IoTリモコン」的なものを作りたい。(そのうち作ります)

2.ライブラリの用意

Arduinoの赤外線ライブラリはKen Shirriff氏が作成したArduino-IRremoteが有名ですが、これをそのままESP-WROOM-02で動かそうとしてもうまく行きません。
ESP8266用に書き換えられたライブラリがあるのでそちらを使います。
github.com
こちらからリポジトリをダウンロードして展開してください。
展開したディレクトリの名前を「IRremoteESP8266」に変更して、(Arduinoがあるディレクトリ)/librariesにそのディレクトリを移動します。

3.実際に使ってみる

ArduinoIDEを開いてファイル > スケッチブックの例 > IRremoteESP8266 にデモがいくつかあります。
これを編集していけば良さそうです。

4.今後の予定

次回はこのライブラリを使ってIoTリモコンを作ってみようかと思います。
今回は赤外線受光モジュールが手元に無かったためサボリ気味な記事になってしまいましたので、次回はちゃんと作例を紹介しようかと思います(笑)

4.余談

・ESP-WROOM-02で赤外線通信をする際、delayなどを用いて信号を生成しようとするとWDTによって本体にリセットがかかりうまく行きませんでした。
どうやらdelayは長過ぎるとダメなようで、定期的に何かしら命令を実行してあげないとリセットされてしまうようです。
・ESP-WROOM-02に載っているESP8266EXにはIrDAインターフェースが載っているらしいのですが、そこにどうやってデータを送ればいいのか、SDKのソースを見てもそれらしいものが見つかりませんでした。
最初、IrDAインターフェースが載っているから簡単に赤外線通信が出来るだろうと思って買ったのですが、結局よくわからないままライブラリを使うことにしました。