外出先からでもぴょんぴょんできるようにしたよ

# 紹介文
家のうさぎが大人しく留守番しているか、外から確認できるようにしたお話です。
（RaspberryPiで監視カメラを作った）

# プロローグ
以前1週間ほど家を空ける用事があり、大手うさぎ専門店のペットホテルを利用した事があった。
しかし迎えに行くと普段より落ち着いていて、リラックスできたのかな？と思ったがそうではなかったようだ。
帰りのケージの中でおしっこしたり、家に帰ってからもしばらく様子がおかしくなってしまった。
うさぎはこんなにもデリケートなのかと再認識し、今まで以上に大事にしようと誓ったのだった。
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/01438370-36a5-281e-007d-b9ed4f136e83.png)

話は変わってRaspberryPiを安く入手できたので、1日家をあける時や帰りが遅い時にちゃんと一人で留守番できているか監視システムを用意することにした。
そしてその手順を記事に残すことにしたのだった。

# 用意したもの
- Mac
- RaspberryPi3B
  - ヒートシンク（気休め程度に）
  - microSD（32GB）
  - キーボード
  - マウス（使いませんでした）
- Webカメラ

MacはOSインストールするために使用します。
Windowsでもやれないことはないと思います。

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/f6e874fb-26fd-1a56-316c-e5a32733663d.jpeg)

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/bb42fe4d-6307-bd19-8a69-4d65e415e8c5.jpeg)

# OSイメージを焼く
RaspberryPiのimage焼きと言ったらEtcherですね。
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/244f5aed-fd61-542d-3317-81a779b7f172.png)
しばらく触ってなかったのでバージョン上げろと言われました。言われるままにバージョンアップしてあげました。
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/e4fafb4e-b6af-12ff-3bb9-036a1c046d05.png)


imageをダウンロードしてきます。
https://github.com/ccrisan/motioneyeos/wiki/Supported-Devices
今回使用するのはRaspberryPi3Bなので、以下の`latest version`のリンクからイメージをダウンロードします。
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/9f3da65b-50f1-24ec-3f6a-5196ec030b60.png)

イメージのダウンロードとSDカード挿したらUIに従って選択していきます。
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/dba95d98-90f9-4a30-1192-496abc32a5fd.png)
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/d80cb4b5-0c50-8866-eb3e-dd2354a149d8.png)

あとは`Flash!`を押して待つだけ。
待つ。
待つ・・・

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/db23be1d-240d-9e0f-113c-e99ae58142ba.png)

終わり。

# RaspberryPi、起動
キーボード、マウス、モニタ、webカメラを接続。
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/45eb429d-77fb-aec5-c19a-d70e2af94abd.jpeg)

汚い…

全部つなげたら、最後に電源をつなげます。

しかし、再起動を繰り返す。
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/e34ea6bd-43a2-ccf3-b419-8d845a89f624.jpeg)

どうやら初回の起動は有線でネットに繋ぐ必要があるようです。
(直にwpa_supplicant.confを置くやり方もあるみたいですが、今回はやりませんでした。)

近くにルータもなかったので、こいつを使用しました。
Wi-Fiを有線に変換する事ができます。（他にも中継させたりいろいろやれる）
https://www.tp-link.com/jp/products/details/cat-9_TL-WR802N.html
![img](https://qiita-image-store.s3.amazonaws.com/0/58330/705ff91d-81d9-832d-c416-01001f5091b2.png)
以前Amazonのセールで安くなっていたのを興奮して買ったものの、全く使い所がなかったのにこんなところで日の目を見るとは。。。

RaspberryPiやモニタを持ってルータまで移動するか、こういった機器を使うかは個人の好き好きですね。
では、改めて起動です。

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/cc14dd85-f19f-83a3-e7fe-131ec1261dc8.jpeg)

`Welcome to meye-74f1ad32!` と言われたので、起動成功でしょう。
ログインします。
ID、PASSはpiのraspberryかと思いきや、adminのパスなしでログインできました。

`ip a` でプライベートIPを確認します。
確認したIPをMACに打ち込むと・・・

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/5c2fa82c-1f14-e503-77ef-632522104ca7.png)

どうでしょう。うさぎさんがこちらを見ていますね。
大成功です。
ですが、すごいラグがあります。webカメラの性能なのか本体設定なのかわかりませんが、いろいろいじってみます。

# 設定しだしたらキリがないよ
よくあるいつもの`apt-get -y update`あたりが実行できませんでした。
さらに`raspi-config`もない・・・調べたら「Raspbianじゃないんだから当たり前だろ！」とのことです。
基本的にはWebにアクセスしてGUI設定のようです。

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/ea9c8bbd-ade3-06f5-4aca-c5024d5ade35.png)
左上のアイコンをクリックしていろいろ設定できます。
まずはgeneralSettingsでユーザーのパスワードとタイムゾーンの設定をしました。

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/0418dc61-a29b-f920-069e-e63236151814.png)
次にネットワークです。まだ有線だったので、自宅のWi-Fiとつなぎます。
RaspberryPi3Bは5GHzに対応してないので2.4GHzの方につなぎましょう。
これでどこに設置してもよくなりました。本物のうさぎの前まで移動します。

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/f130c54a-484a-d658-c9fc-2e8a67f9787a.png)
まだまだ設定はあります。FTPとSambaは今の所使う予定がないのでOFFにします。

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/51759886-0a63-c7d7-d764-98fb8b7fd365.png)
ビデオに関する設定です。このあたりがラグに影響しそうですね。
VideoResolutionが解像度、FrameRateがFPSです。
が、解像度を上げるとFPSが10くらいになります。なぜだ。
そして解像度を最低にしてもFPSが20前半でした。このあたりはお好みで調整ですね。

他にもモーション設定で、動きを認識したら録画するとかいろいろできるようです。
しかしいくら探してもあの設定がない・・・

# 外出先からでもぴょんぴょんできるよ
いままではローカルネットワークからアクセスしてましたが、
外出先で元気にしているかを確認するのが最終目的です。
外部からアクセスする設定を探してみたら、そんな設定無いみたいです。
無いんですね。もう自力でやれと。ルータのポート開放しろということらしいです。

ルータはいじりたくないので、[ngrok](https://ngrok.com)でアクセスするかと思った矢先・・・
motionEyeOSはapt-getはおろか、wgetも使えませんでした。
Raspbianの上にmotionEye(OSではない)入れたほうが良かったのだろうか。
もはやここまで来て後戻りはしたくない・・・

仕方ないので、他のマシンでngrokを起動することに。

`ngrok http -region=ap xxx.xxx.xxx.xxx:80`
（IPは起動直後に確認したIPを入れてください）
ngrokはローカルマシン以外でも繋げるようだ。

やっぱりネットワークの問題でfpsは低くなっているもよう。仕方ない。

![img](https://qiita-image-store.s3.amazonaws.com/0/58330/6903a94e-0665-7588-8648-87fe8207d5f0.png)
ぴょーん

# 最後に言いたいこと

本当はAdventCalender用に別のネタがあったんですが、難航してこの記事を書きました。
それ故に投稿も遅れてしまいました。申し訳ないです。別に機会に書けたらと思います。

そして、
__監視システムを作りましたが、面倒なので市販の監視カメラ買ったほうが楽だし安価だと思います。__

# 参考記事
https://rabb-it-days.tokyo/post-3/
https://qiita.com/mt08/items/96207abfba91954b50d4
https://github.com/ccrisan/motioneyeos/wiki/FAQ#what-are-the-default-web-ui-credentials
http://denor.daa.jp/raspberry-pi%E3%81%ABmotioneyeos%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB