ガジェットと写真とランニングのblog

管理人が日々の生活で感じたことやガジェットのレビューをつらつらと

IRKitのLEDを消してみる

以前にIRKitを購入してIFTTTを設定した記事を書いてみた 

kossie0o0.hatenablog.com

 

IRKitは自宅のリモコン家電の操作に大活躍している。

特に電気のオンオフ、寝るときにスマホで操作できるのはかなり便利。

その後、私は睡眠アプリを使っているので一連がスマホだけでできるのは良いのです。

Sleep Meister - 睡眠サイクルアラーム Lite

Sleep Meister - 睡眠サイクルアラーム Lite

  • Naoya Araki
  • ヘルスケア/フィットネス
  • 無料

ただひとつ難点なのが利用時の青いLEDが待機中ずっと点滅しているところ。

これ寝室だと非常に気になる。

そこで、今回はLEDを消してみることにする

参考にしたのは以下の記事です。 

学習リモコンIRKitを買ったけど、待機LEDが眩しいので消してみた|よしのブログ

さて、はじめに用意するのは以下のもの

ARDUINO IDE 1.0.6

IRKitの最新ソース

パソコン(Mac or PC) 私はMac

ソースは公式のものを利用。Arduinoは最新は1.8系があるけど、バージョン違いで問題を起こしたくないのでリンク先の通り1.6系を利用することに。

    1. PCとIRKitを接続する。接続はMicro-USBで接続
      ダウンロードしたFirmWareから以下の箇所を修正
      device-master\firmware\src\IRKit\GSwifi.cpp
      Wifiの接続パスワードを設定するところなので、任意の文字列で変更
      char* GSwifi::password() {
      (省略)
      //char *ret = PB("XXXX,XXXXXXXXXX", 0);
      char *ret = PB("XXXX,0123456789", 0); //パスワードは任意でOK。IRKitのセットアップ時に必要に
    2. device-master\firmware\src\IRKit\version.c
      IRKitのアプリでファームウェアが変わったことを確認するために、バージョン情報を変更する
      //const char version = "3.0.0.0.g85190b1";
      const char version
      = "3.0.0.0.g85190b1+1";
    3. device-master\firmware\src\IRKit\IRKit.ino
      待機時のLEDを消灯に変更
      void on_irkit_ready() {
      //color.setLedColor( 0, 0, 1, false );
      color.setLedColor( 0, 0, 0, false ); // ready時 blue->offに変更
    4. device-master\firmware\src\IRKit\FullColorLed.cpp
      リモコン利用時など、LEDが点滅した後に消灯してあげないとそのまま点灯したままになるので消灯を実施
      void FullColorLed::onTimer() {
      (省略)
      TIMER_TICK(blink_timer_);
      if (TIMER_FIRED(blink_timer_)) {
      TIMER_STOP(blink_timer_);
      isBlinking_ = false;
      off(); //off()を追加することで消灯する
      }
    5. ファームウェアのビルド
      arduino IDEを起動して
      [ファイル]→[開く]でIRKit.inoを開く。
      [スケッチ]→[検証・コンパイル]でエラーが発生しないことを確認
      ここで私は[ポート]-[Arduino Leonardo]を選択していなくコンパイルが通らなくて焦った。。。
      [ツール]→[シリアルポート]から接続されたシリアルポート"COM5"を選択
      [ファイル]→[マイコンボードに書き込む]

 無事にIRKitが消灯してくれました。

これでますます便利になるIRKitであるとともに、Firmwareで色々カスタマイズできる余地を作ってくれている作者に感謝です。