M5StickCで赤外線リモコンの続き。ほぼ同じコードをM5Stackで動かそうとする。そこで気づいた話。Panasonicで使われる家製協(AEHA)フォーマットがうまく動かないという話だ。
前回もなんかおかしいとは思っていた。東芝のTV、REGZAは問題なく動く。しかし、PanasonicのブルーレイレコーダーDIGAがうまくいかない。JavaScriptでRawDataを作ってM5Stackに送るのは問題ないのだが、カスタムコード+コマンドデータを送る方法だとだめなのだ。
ライブラリはこれ。前回紹介したやつ。
SensorsIot/Arduino-IRremote: Infrared remote library for Arduino: send and receive infrared signals with multiple protocols
これの sendPanasonic を使うのだけど、うまくいかない。
数回送って、たまに反応する、みたいな感じだ。10回中9回は空振りする感じ。
わからないなりにソースを読むと、Set IR carrier frequency というコメントがあり
enableIROut(35);
とある。キャリア周波数を35kHzにしてあるっぽい。これがおかしい。
家電リモコンの解説ページなどを見ると、ほとんどの家電は38kHzだということになってる。
試しにこうしてみた。
enableIROut(38);
コンパイルして動かす。その結果。
うまくいった。
空振りすることもなくなった。
というわけで、上記ライブラリでAEHAフォーマットを使う時はこれ試すのがよさそう。というメモ。
M5StickC change TV channel
コメント