IRKitのLEDを消してみる

こんにちわ。ふぉとらだです。

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

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

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

ただひとつ困るのがIRKitの青いLED。
待機の間、ずっと点滅しているんですよね。

これが寝室だと非常に気になってしまいます。

今回はLEDを消してみるためのおまじないとなります。

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

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

用意するもの

はじめに用意するはこれらとなります。

ソースは公式のものを利用します。Arduinoは最新は1.8系ですが、バージョン違いの問題を起こさないように1.6系を利用することにします。

設定方法

必要なものが準備できたところで設定をしていきます。

PCとIRKitを接続する。

ダウンロードした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のセットアップ時に必要に

バージョン情報の変更

IRKitのアプリでファームウェアが変わったことを確認するために、バージョン情報を変更します。

device-master\firmware\src\IRKit\version.c

//const char version = 3.0.0.0.g85190b1;
const char version = 3.0.0.0.g85190b1+1;

待機時のLEDを消灯に変更

LEDの消灯をOFFにします。

device-master\src\IRKit\IRKit.ino

void [on_](http://d.hatena.ne.jp/keyword/on_)irkit_ready() {
  //color.setLedColor( 0, 0, 1, false );
  color.setLedColor( 0, 0, 0, false ); // ready時 blue->offに変更

LED点灯後に消灯する

リモコン利用時にLEDが点滅しますが、デフォルトだと点灯したままになるので消灯するように変更します。

device-master\firmware\src\IRKit\FullColorLed.cpp

void FullColorLed::onTimer() {
(省略)
TIMER_TICK(blink_timer_);
if (TIMER_FIRED(blink_timer_)) {
TIMER_STOP(blink_timer_);
isBlinking_ = false;
off(); //off()を追加することで消灯する
}

ファームウェアのビルド

変更したファイルを元にファームウェアをビルドします。

  1. arduino IDEを起動して[ファイル]→[開く]でIRKit.inoを開く

  2. [スケッチ]→[検証・コンパイルでエラーが発生しないことを確認
    ここで私は[ポート]-[Arduino Leonardo]を選択していなくコンパイルが通らなくて焦りました。。。

  3. [ツール]→[シリアルポート]から接続されたシリアルポートCOM5を選択する。
    [ファイル]→[マイコンボードに書き込む]

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

最後に

ファームウェアを書き換えることで設定を変更することができました。

カスタマイズできる余地を作ってくれている作者に感謝です。

これで寝室でも家族に文句をれずIRKitを利用することができるようになりました。

2020/5/17 更新
今は後継機のNatureRemoが発売されてます。
さらに使いやすく、スタイリッシュとなっており今ならこちらをおすすめます。

スポンサードリンク

シェアしてね!!