@0tofuの備忘録...

プログラミングとか仕事の話とかFIT3 RS(GK5)のメンテナンス記録等の雑記

Nature Remo で始めるスマートホーム入門(家電をiPhoneから操作しよう〜)

IRKitの後継であるNature Remo(以下、Remo)が手元にやっと届きましたので簡単にインプレッション。

Nature Remo (日本語) — Nature Inc

外箱

f:id:move0tofu:20170527231226j:plain

シンプルにRemoが映っているだけのパッケージです。

本体

f:id:move0tofu:20170527232226j:plain

手のひらに収まるコンパクトサイズ
この機器から赤外線で各種家電を操作します。

付属品

f:id:move0tofu:20170527232240j:plain

各国に対応した電源プラグ(もちろん日本もあります)
micro USBケーブル、両面テープ

 初期設定

Nature Remo スマートエアコンで快適な生活を

Nature Remo スマートエアコンで快適な生活を

  • Nature, Inc.
  • ユーティリティ
  • 無料

初期設定は公式のNature Remoアプリから行います。

特に難しいことはなくアプリの指示に従うだけで完了します。

機器登録 

アプリの「+」ボタンを押すとRemo本体にリモコンの電源ボタンを押してくださいと出るので、指示に従って持っているリモコンの電源ボタンを押すとアプリ側で機器登録が出来ます。

その際、エアコンであれば自動でメーカーに合わせたエアコンの設定が行われ、設定温度の詳細も取得されます。(もちろん今の室温も)

私の家のエアコンは2台あるのですが、1台は登録できましたがもう1台はアプリ側が対応していない周波数のようで現状使えません…(ここはバージョンアップに期待)

f:id:move0tofu:20170530222809p:plain

エアコン以外にもテレビ、オーディオ、照明を登録した私の一覧は以下になります。

f:id:move0tofu:20170530222954p:plain

もちろん、ON/OFFだけではなくリモコンに設定されているボタンは割り当てることが出来ますので、TVは以下のような登録を行いました。

f:id:move0tofu:20170530223119p:plain

まとめ

様々な機器が登録できてiPhoneひとつで家電を操作できるのは非常に便利です。
また、家の中からではなく外からでも操作できるのでこれからの季節は帰宅前にエアコンのスイッチを入れる等有効活用できそうです。

今なら割引価格で購入できるようですので、気になる方は購入してみてはいかがでしょうか?

nature-jp.myshopify.com

無線LANルータ(ASUS RT-AC68U)をmackerel-agentで監視

この記事はMackerel Advent Calendar 2016 14日目の記事です。

qiita.com

 

今回は、私が自宅で使用している無線LANルータ(ASUS RT-AC68U)をmackerel-agentを利用しMackerelに監視させてみます。

Asuswrt-Merlinにファームウェアを書き換え

標準のファームウェアではmackerel-agentを導入できない為、Asuswrt-Merinファームウェアを書き換えます。

通常のファームウェアと同様に対象機器のファームウェアをダウンロードして更新するだけなので簡単です。

JFFSを有効化

この状態でmackerel-agentが使用可能になるのですが、再起動の度にmackerel-agentごと消えてしまうので、ユーザが書き換え可能なJFFS領域を確保します。

github.com

・ルータの設定画面 -> 管理よりJFFS partitionを有効化

f:id:move0tofu:20161209204553p:plain

また、以降の作業はルータへsshでログインし作業を行うのでsshを有効化しておきましょう。

f:id:move0tofu:20161212230541p:plain

mackerel-agentの導入

RT-AC68Uはarmなので、arm用のmackere-agentをダウンロードします。

また、mackerel-agentを動かすためにAPI keyが必要になりますので、事前に作成しておきます。

 

github.com

mackerel-agent install

mackerel-agentを起動

ルータ再起動時に自動起動すること及び実行時にx509のルート証明書エラーが出ないよう以下のシェルスクリプトを作成し、mackerel-agentが正常に動くようにします。

※証明書「ca-certificates.crt」はルータ内に見つけられなかった為、ubuntuサーバ等よりコピーしています。

/jffs/scripts/ 以下に作成し、再起動時に自動でスクリプトが動くようにします。

 

mackerel-agent start 

# 以下コマンドでバックグラウンドでmackerel-agentを起動
/jffs/scripts/mackerel-agent.sh &
mackereでグラフ確認

正しく動いていると、mackerelにグラフが作成され監視されていることが確認できます!

f:id:move0tofu:20161212233321p:plain

また、confファイルに以下を設定するとCPU、2.4GHz、5GHzWLANの温度も取得できるようになります。

RT-AC68U temp

Mackerelで見ると↓のような感じで出力されます。

f:id:move0tofu:20161214004305p:plain

ASUSのAsuswrt-merlinが導入可能なルーターであれば監視できると思いますので、気になる方は是非導入してみてください!

NVR510のポート開放(GUI)

3年ほど使っていたBuffaloのルーターが不調で新しいルーターに変えようと色々調べていると、過去に使用していたYAMAHAの新しいルーターが出たとのことなのでNVR510に買い替えました。

NVR510 - ルーター - ヤマハ株式会社

簡単な設定であればGUIからサクサクできるので、使い勝手は非常に良いです。

ただ、ポート開放の設定が少々分かりづらいので簡単な解説を…

 まずはルーターにログイン

「詳細設定」→「NAT」を選択

インターフェースの一覧の適用されているNATディスクプター番号と紐づくものがNATディスクリプタの一覧にいると思うので、それの「設定」をクリック

f:id:move0tofu:20161129091848p:plain

静的IPマスカレードの設定

すると下の画面が開くので「静的IPマスカレードの設定」をクリック

f:id:move0tofu:20161129092332p:plain

ポート開放している一覧が出るので、必要に応じて左下の「+」ボタンをクリックしポート開放を行うIPアドレスやポートを設定。

f:id:move0tofu:20161129092458p:plain

 確認ボタンを押すと以下のメッセージが表示される(ファイアーウォールの通過設定)ので、必要に応じて「はい・いいえ」を選択して保存します。

f:id:move0tofu:20161129092645p:plain

これでめでたくポート開放ができました!

Raspberry Pi 3 Model B環境構築 その3(WiFi設定)

前回の記事はこちら…
move0tofu.hatenablog.jp

今回はWiFiの設定を行います。
参考にするURLはここ(ただし、これをそのまま利用するとアクセスポイントのパスワードが丸見えなので暗号化します。)
www.raspberrypi.org

WiFiをスキャンして無線LANが正しく機能しているか確認
# 以下コマンドを打って、自分が接続したいアクセスポイントが表示されることを確認します。
$ sudo iwlist wlan0 scan
wlan0     Scan completed :
          Cell 01 - Address: 00:24:A5:29:xx:xx
                    Channel:2
                    Frequency:2.417 GHz (Channel 2)
                    Quality=46/70  Signal level=-64 dBm
                    Encryption key:on
                    ESSID:"xxxxxxxxxx-2"
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 9 Mb/s
                              18 Mb/s; 36 Mb/s; 54 Mb/s
                    Bit Rates:6 Mb/s; 12 Mb/s; 24 Mb/s; 48 Mb/s
                    Mode:Master
                    Extra:tsf=0000000000000000
                    Extra: Last beacon: 40ms ago
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : TKIP
                        Pairwise Ciphers (2) : TKIP CCMP
                        Authentication Suites (1) : PSK
          Cell 02 - Address: 80:EA:96:EE:xx:xx
アクセスポイントを設定
# zsh等を使用していると[wpa_supplicant.conf]へ書き込みできない為、bashを利用します。
$ sudo bash
# [wpa_supplicant.conf]の権限を変更
$ sudo chmod 660 /etc/wpa_supplicant/wpa_supplicant.conf
# 以下コマンドで[wpa_supplicant.conf]へアクセスポイントの情報を書き込む(この時、パスワードが暗号化される)
$ sudo wpa_passphrase "アクセスポイント名" "アクセスポイントのパスワード" >> /etc/wpa_supplicant/wpa_supplicant.conf
# [wpa_supplicant.conf]にアクセスポイントの情報が書き込まれたことを確認
$ cat /etc/wpa_supplicant/wpa_supplicant.conf
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
	ssid="0tofu_WiFi"
	#psk="先ほどのコマンドで入力したパスワード(不要であれば削除する)"
	psk=暗号化されたパスワード
}
無線LANアダプタを再起動し、アクセスポイントに接続可能なことを確認します。
# 無線LAN down
$ sudo ifdown wlan0
# 無線LAN up
$ sudo ifup wlan0
# 接続確認 (inet / inet6アドレスが表示されていることを確認)
$ sudo ifconfig wlan0
wlan0     Link encap:イーサネット  ハードウェアアドレス b8:27:eb:9a:f2:bf
          inetアドレス:192.168.0.99 ブロードキャスト:192.168.0.255  マスク:255.255.255.0
          inet6アドレス: fee0::dd01:512b:f241:fa2c/64 範囲:リンク
          UP BROADCAST RUNNING MULTICAST  MTU:1500  メトリック:1
          RXパケット:316 エラー:0 損失:259 オーバラン:0 フレーム:0
          TXパケット:30 エラー:0 損失:0 オーバラン:0 キャリア:0
      衝突(Collisions):0 TXキュー長:1000
          RXバイト:95681 (93.4 KiB)  TXバイト:5600 (5.4 KiB)

今日はここまで

Raspberry Pi 3 Model B (Element14)

Raspberry Pi 3 Model B (Element14)

Raspberry Pi 3 Model B環境構築(マウス、キーボード不要) その2(初期設定)

前回の記事でmicroSDへraspbianを導入し、raspberrypiへセットしraspbianが起動するまで確認しましたのでいよいよ本格的なセットアップです。
move0tofu.hatenablog.jp

raspbianの各種パッケージを最新にUPDATE

以下のコマンドでパッケージを最新化します。

# パッケージリストの更新
$ sudo apt-get update
# カーネル・パッケージの更新
$ sudo apt-get upgrade
raspbianのディスク容量アップ

素の状態だとこのような感じでmicroSDカードの全容量がマウントされていないので…全容量を使用可能に設定します。

pi@raspberrypi:~ $ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       1.2G  888M  218M  81% /
devtmpfs        459M     0  459M   0% /dev
tmpfs           463M     0  463M   0% /dev/shm
tmpfs           463M   12M  451M   3% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           463M     0  463M   0% /sys/fs/cgroup
/dev/mmcblk0p1   60M   20M   41M  34% /boot
pi@raspberrypi:~ $
pi@raspberrypi:~ $ sudo raspi-config

f:id:move0tofu:20160429232844p:plain
1. Expand Filesystemを選択します。

f:id:move0tofu:20160429233017p:plain
パーティション拡張したよ!次回起動時から有効だよ!と言われるので再起動
f:id:move0tofu:20160429233356p:plain

めでたくディスク容量が拡張されました。

pi@raspberrypi:~ $ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        29G  884M   27G   4% /
devtmpfs        459M     0  459M   0% /dev
tmpfs           463M     0  463M   0% /dev/shm
tmpfs           463M  6.2M  457M   2% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           463M     0  463M   0% /sys/fs/cgroup
/dev/mmcblk0p1   60M   20M   41M  34% /boot
pi@raspberrypi:~ $
raspbianの言語設定

ディスク容量の時と同じく[sudo raspi-config]で設定します。
f:id:move0tofu:20160429233812p:plain
5. Internationalisation を選択します。

f:id:move0tofu:20160429233928p:plain
I1 Change Locale を選択します。

選択した中からデフォルトの言語を選択します。(ja_JP.UTF-8を選択しました。)
f:id:move0tofu:20160429234307p:plain

タイムゾーンの設定

先ほどと同じくraspi-configの5. Internationalisationを選択します。

f:id:move0tofu:20160429234415p:plain
I2 Change Timezone を選択します。

Asia -> Tokyoの順にタイムゾーンを選択します。

vimエディタの導入

デフォルトでnanoエディタになっているので、vimを使います。

# vimをインストール
$ sudo apt-get install vim
# nanoとedを削除
$ sudo apt-get autoremove nano ed
raspberrypiのファームウェア更新

rpi-updateを使用してファームウェアを更新します。
github.com

# rpi-updateの導入
$ sudo apt-get install rpi-update
# ファームウェア更新
$ sudo rpi-update
# 更新前
$ uname -a
Linux raspberrypi 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l GNU/Linux
# 更新後
$uname -a
Linux raspberrypi 4.4.8-v7+ #880 SMP Fri Apr 22 21:55:04 BST 2016 armv7l GNU/Linux
リポジトリの変更

RaspbianMirrors - Raspbianを参考に日本のサーバへ変更

$ sudo vim /etc/apt/sources.list
deb http://ftp.jaist.ac.jp/raspbian jessie main contrib non-free rpi
#deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi

とりあえずここまで

Raspberry Pi 3 Model B (Element14)

Raspberry Pi 3 Model B (Element14)