ArduinoからApple Remoteの赤外線信号を送信

Apple Remote MC377J/A

ArduinoからApple Remoteの赤外線信号を送信するライブラリを作りました。


ライブラリのダウンロードはこちらから。


ダウンロード後、AppleRemoteIR フォルダを ~/Documents/Arduino/libraries に入れて下さい。


IDEを起動すると、簡単なサンプルスケッチが File > Examples > AppleRemoteIR > AppleRemoteIR から開けます。

AppleRemoteIR ar = AppleRemoteIR(3); // 赤外線LEDのポートを指定

void loop() {
  ar.play();
  delay(2000);
  ...

まず、AppleRemoteIR を作る際に、赤外線LEDを接続するポートを指定します。赤外線LEDは、HIで点灯するように接続します。
あとは、menu(), play(), up(), down(), right(), left() を呼び出せば、そのボタンを押した際の赤外線信号が送出されます。なお、ボタンを押しっぱなしにした時の動作(リピート信号)には対応していません。

ペアリングについて

Apple Remoteは個々にID(1〜255?)を持っており、特定のApple RemoteからしかMacを操作できないようにすることができます。このMacApple Remoteを対応づけをペアリングと呼びます。なお、ペアリングはしなくとも構いません。その場合は全てのApple Remoteから操作可能な状態になります。一方、Macが別のApple Remoteとペアリングされていると、全く反応しません。ペアリングを解除する際は、システム環境設定 > セキュリティ > 一般 > "登録解除" を押します(ロックされている場合は鍵アイコンをクリックして認証が必要です)。


pair() メソッドを呼び出すと、Macとのペアリングを行うことができます。

AppleRemoteIR ar = AppleRemoteIR(3, 0x97); // 赤外線LEDのポート、Apple RemoteのIDを指定

void setup() {
  ar.pair();
}

void loop() {
  ...


作成に当たって、信号のフォーマットについては、以下のページを参考にさせて頂きました。
http://www.ez0.net/2007/11/appleremote%e3%81%ae%e8%b5%a4%e5%a4%96%e7%b7%9a%e4%bf%a1%e5%8f%b7%e3%82%92%e8%a7%a3%e6%9e%90%e3%81%97%e3%81%a6%e3%81%bf%e3%81%9f/