タイトル通りだけど,golang で irMagician のライブラリ go-irMagician を書いた.
irMagician とは
大宮技研 合同会社が販売している赤外線学習リモコンで,以下のような特徴がある.
- USB 経由で PC と接続(対応OS:Windows, Mac OS X, Linux 等)
- 超小型・低価格
- キット(2014/12/27 現在)
- irMagician 1,980円(送料:国内・税込み)
- 完成品(2014/12/27 現在)
- irMagician (Windows, Linux, MacOSX 10.9.5 以前) 3,980円(送料:国内・税込み)
- irMagician T(Windows, Linux, MacOSX 10.9.5 以前) 4,480円(送料:国内・税込み)
- キット(2014/12/27 現在)
- 家電の赤外線データをキャプチャして家電に向かって送信すれば良い
- キャプチャした家電の赤外線データをローカルに保存しておけば,そのデータを読みだして利用することが可能
詳しくは irMagician – 高機能/低価格赤外線リモコン からどうぞ.
go-irMagician
irMagicain はシリアル通信でコマンドを送信することにより制御する(コマンド一覧). 実際に使うときにはプログラムを組むと思うのだけれど,公式のサンプルは python で書かれている(プログラム例).
ただ,今回は golang で家電操作のプログラムを組もうと思っていた.さらに,オレオレ家電操作プログラムに埋め込むだけじゃなくて,せっかくなら使い回しができるようにライブラリを作ることにした.
できあがったものは github で公開してみた.tknhs/go-irMagician
(初めて golang のライブラリを書いたので,突っ込んでもらえると嬉しい.)
とりあえず,使いそうな機能は実装した.
- 室温を取得( t コマンド)
- リモコンから受信した赤外線データを irMagician 内部に保存( c コマンド)
- irMagician 内部に保存してある赤外線データを送信( p コマンド)
- irMagician 内部に保存してある赤外線データをローカルに保存
- ローカルに保存してある赤外線データを読み込んで送信
次回ぐらいに irMagician を使って今動いてるものを書くかもしれない.
ただ,あんまりスマートじゃないので再設計したものを実装し直してから書くかも.
2014/12/30 追記
書いた -> 家電を外出先から制御する俺得アプリを作った