会社の留守電を自動的にセットする方法を考えていました。

ちょっと調べたら、MicroBot Push というものを発見。

MicroBot Push 2nd Generation

用途の割に $49.99 は高価ですが、興味もあり購入しました。

iOS アプリ MicroBot を使い、Bluetooth 経由でボタンを押すことが出来
ました。

この方法だと連携した iPhone を常に会社に置く必要がありますが、
Prota S というハブがあればそれを回避できるとのこと。

Prota S

しかし、$89.99 はいくらなんでもこの用途にはお高い…。

ここで登場するのが Raspberry Pi。公式の情報 によると、Raspberry Pi
B, B+, 2, 3 を使って、Prota S 相当の Prota Pi を作れるらしい。

私が Raspberry Pi を買ったのははるか昔の 2013 年 11 月。
[2013-12-05-1] という記事も書いていました。Wikipedia の情報も照ら
し合わせると、どうやら Model B のようです。ただし、Prota OS デフォ
ルトで使える Wifi と Bluetooth のドングルが必要。

心が折れそうになりましたが、たまたま職場の同僚が Zero W を貸してく
れたため、これでチャレンジすることに。Zero W は $10 とお安い上に、
Wifi と Bluetooth も搭載されている、嘘みたいな機種です。

Raspberry Pi Zero W

Zero W で Prota OS 動くよーという公式の記事を見つけました。もうや
るしかない。

Prota OS is now available for Raspberry Pi Zero W! – Naran – Medium

1. microSD カードに Prota OS を焼く

こちらの記事を参考にしました。

Raspberry PiにProta Piをインストールしてボタンを押下する度にSlackに通知を送る。|ガジェシス

ハマリポイント
・4GB の microSD カードでは Prota OS は起動しなかった。16GB なら起動出来た。この記事make sure to use a 16GB card と書いてあったことで気づけた。次に書くように Prota はヘッドレス OS なので、そもそも「起動した」という判断が難しい…
・Prota はヘッドレス OS なので、HDMI に繋げても意味がない。キーボードも使えない。全ての操作はアプリ Prota Space から行う。セットアップ時にロゴが出てくるので騙された。何時間も待っていたよ…
・Prota Pi をネットワークに接続する時 AP モードになるそうだが、Zero W の LED は赤青に点滅しない。Prota S の話らしい

ハマっている様子。


SD カードアダプタの書込禁止のツメは UnLock しておきます。久しぶり
に使ったので、ツメがあること自体忘れていた…。

Raspberry Pi 公式サイトに microSD カードへの焼き方が書かれている
で、参考にします。

macOS の場合は diskutil コマンドで microSD のデバイス情報が分かり
ます。以下の例だと /dev/disk2 です。これを間違えると、システム領域
や外付け HDD 等のデータを破壊することになるため、絶対に間違えては
いけません。

$ diskutil list
(snip)
/dev/disk2 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *15.5 GB    disk2
   1:             Windows_FAT_32 boot                    58.7 MB    disk2s1
   2:                      Linux                         15.4 GB    disk2s2

microSD カードに Prota OS を焼くために、マウントを外します。{N} は
上記の場合、2 です。

$ sudo diskutil unmountDisk /dev/disk{N}

dd コマンドで焼いていきます。bs オプションはこの記事 を参考にして、
最適値をセットすると良いかもしれません。私の環境では 64MB が最適値
みたいでした。

protapi_official_0_21_17112817.img は公式サイト からダウンロードし
た prota_pi.zip を解凍したものです。

$ sudo dd bs=64m if=protapi_official_0_21_17112817.img of=/dev/disk{N} conv=sync

dd が終わるとまたマウントされていました。取り外すために、マウント
を外します。

$ sudo diskutil unmountDisk /dev/disk{N}

Raspberry Pi Zero W に microSD カードを装着し、microUSB 経由で通電
すると、Prota Space アプリに Prota Pi を追加できます。

Prota Space

4GB の microSD カードでは、ここにどうしても進めず、大いに悩みまし
た。microSD カードは 16GB を使って下さい。

Wi-Fi に Prota-XXXX が見えて接続しても、追加完了までに 5 分程度か
かります。応答がないと思わずに、辛抱して待つ必要があります。

2. Prota Pi に MicroBot Push を追加

ハマリポイント
・前述の MicroBot アプリに MicroBot Push を登録していたら解除すること。解除しないと Prota Pi からの認証に失敗し、MicroBot Push を追加できない

ハマりました…。

無事成功!!

IFTTT をトリガーとして、Prota Pi 経由で Microbot Push を動かすこと
が出来ました。

この他に、ボタンが押されたら Slack にポストや、その逆も出来ました。
他にも Alexa や Hue、Slack、Webhook などと連携できる みたいです。
ネットに繋げると出来ることが増えますね。

Naran マイクロボットプッシュ(2nd Generation) - ボタンを押してくれる超小型指ロボット amazon.co.jp