前回IRの受信でソニーテレビの信号を確認したので、送信してみる。
IRGCSendDemoで簡単にできることが分かったので、
M5AtomS3ではG4がIRに繋がっていて、例の通りで動作できる。
必要な箇所のみにしたらこんなに簡単になった。
NECの場合をコメントにしている。
#include <Arduino.h> #include <IRremoteESP8266.h> #include <IRsend.h> #include <M5Unified.h> const uint16_t kIrLed = 4; IRsend irsend(kIrLed); void setup() { M5.begin(); USBSerial.begin(115200); irsend.begin(); } void loop() { M5.update(); if (M5.BtnA.wasClicked()) { USBSerial.println("Power off"); irsend.sendSony(0xa90, 12, 3); // 12 bits & 3 repeats //irsend.sendNEC(0x00FFE01FUL); delay(2000); } }
sendSony()で与えている0xa90は電源コードで、このコードを変えることで他のボタンに適用できる。
ビット数は12でいい様だが、ファンクショナルなキーは増える様だ。
ビット数はこちらが参考になると思う。
これでちゃんとM5AtomS3からTVの電源ON/OFFができた。
でも届く距離は1mくらいまでかな。
今回はここまで。
M5AtomS3でソニーテレビの赤外線リモコン信号を送信 · GitHub
追記:
クリックで送信コードを選択して長押しで送信する様にした。