GPSマルチユニットSORACOM Edition 使ってみた(開封の儀)

ソラコムさんの出すデバイスはどうしても買ってしまう人です（S+ CAMERAは流石に無理ですが）。

---

そのデバイスは唐突に登場しました。

ソラコムのテクノロジーエバンジェリスト松下(@ma2shita )さんこのツイートでした。
[初登場のツィート](https://twitter.com/ma2shita/status/1227403353732182016)

それが、
[GPSマルチユニットSORACOM Edition](https://soracom.jp/products/kit/gps_multiunit/)
です。

GPS搭載、センサーも気温、湿度、加速度の3つ搭載だと。。。これは買いだーという感じで。すぐにポチってしまいました。

そして、

昨日届きましたー。
![IoTボタンとの比較](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/1c612780-31d1-a94d-2ad7-0f9f9b41fd9f.jpeg)

早速開けて、設定してみます。

## 設定編

編といいつつ、手順の詳細は以下を参照してください。
[GPS マルチユニット SORACOM Edition とは](https://dev.soracom.io/jp/gps_multiunit/what-is-gps_multiunit/)

まず、SIMを入れます。
![SIM挿入](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/bd766ca0-5f6b-48b9-c7b1-7fbd8fe027f7.jpeg)


そのあと、コンソール画面で、受け取り確認（これしないと、SIMが登録されないw）して、SIMとデバイスを紐づけて、SIMグループを登録。
ここで、既存のSIMグループを指定したところ、嵌りました（後述）。
<img width="1588" alt="グループ設定" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/6487457f-60d6-16c4-498c-91722176390c.png">
※しかも指定しようとしたものじゃないってことにあとであとで気づく。

送信するセンサーデータは初期値は加速度にはチェックはなかったので、ついでに追加（これの使い方は謎wちゃんと勉強します。）
<img width="763" alt="送信内容初期値" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/60a54d45-2bf9-c9ea-6243-3a81d40dd496.png">
<img width="540" alt="送信内容 変更後" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/6dd6c611-3ddd-f1cb-1aad-c5ae9d56caf0.png">

送信先はHarvest（Lagoon）が標準で、SIMグループのUnified Endpointの送信先に設定されているところにチェックが入るようです。このグループはSORACOM Funkにデータ送信するようになっていたので、Funkにチェックが入っています。
<img width="769" alt="送信先" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/39138ecc-8dc8-7be0-4bf8-17a084f914c7.png">

新規で作った場合は、どれにもチェック入ってません（あとで確認）

送信間隔は、手順に乗っ取り、定期送信で、送信間隔30分にしてます。
送信間隔の長短で、電池の消耗度が変わると思うので、この辺は用途と相談ですね。
期間とか、送る曜日、時刻を決められるのは面白いですね。
<img width="1566" alt="送信モード1" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/73de0ea4-e5b6-d70e-59a3-c42bb420ed70.png">
<img width="739" alt="送信モード2" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/139d8862-f583-ca9a-3429-974f3ff78634.png">

加速度割り込みの設定がありましたが、よくわからなかったwので、そのままにしてます。
<img width="821" alt="加速度割り込み" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/98e2a0ec-81a2-73d5-0f7f-7304a554c27d.png">
mGってマイクロG？とかそんなレベルなので。この辺は別途調べておきます。

で、保存すればOKなのですが、
その際、設定を反映させるために、手動実行させる必要があるようです。

## 使ってみた。
家の中で試してみたのですが、何回か失敗したので、寒空の中、外で試したところ、ようやく送信成功。

で、Harvestで確認！と思ったら、なんとエラー。。。泣
<img width="1577" alt="エラー" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/8347373d-abc0-05c8-fe21-dd8c59c0c7e5.png">

うーむ。既存に入れたのが、いけなかったんだな。っと思って、別途SIMグループを作成し、そっちに紐づけたところ、送信に成功しました。

何が悪いんだろうと、SIMグループをみたところ、違いは、

- メタデータサービス設定に、設定らしきJSON文字列がセットされている。
- バイナリパーサーOFF

メタデータサービスは、マルチユニットのデータ保存時に、入るっぽいので、
バイナリパーサーがOFFになっているSIMグループじゃないとダメなんだなという結論になりました。

**既存のSIMグループに設定する場合は、バイナリパーサーがOFFになってないとダメ**です。

データはこんな感じ。あー、バイナリデータじゃないんだから、そりゃ当然だな。。。と反省しました。
<img width="1602" alt="データ受信状況" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/86b7c2cf-a45d-18e6-1bde-6bd94ed6e54e.png">

そしてbase64エンコードデータと書いてあるので、そりゃバイナリパーサー不要ですね。はい。
<img width="823" alt="ちゃんと書いてありました。" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/376dafa8-ba27-8c7c-456a-9f93c35e43d1.png">

表示されているデータだと、位置情報としての、latとLonがnullですが、おそらく室内だったので、ちゃんと取れなかったんでしょう。
取れてるデータでHarvestで位置情報表示させたら、ほぼ誤差なかったので、さすがと言うべきです。

Harvestでグラフにしてみると、こんな感じ。
最初は室内、途中から、外に置いたので、気温（緑）が一気に低下(室内21度、外8度前後)しました。
精度は良さそうです。WioLTEで使えるセンサーデータとかどう違うか比べてもいいかもなーとか思ってみたりしました。

<img width="1589" alt="気温と湿度" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/241bcb5d-1d20-201e-723d-a858d5a2b177.png">

![いきなり外に置くと言う所業](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/363d4571-99e9-1ffd-f897-69885a7905a7.jpeg)

ただ、送信自体は外だったのに、21度というのデータもあったので、送信ボタン押した時のデータが送られるのかなーと推測してます。
（この辺はソラコムさんに詳しく聞きたいところ）

## とりあえず使ってみた感想
温度湿度、加速度取れるのはいいですが、何より、高精度の位置情報が取れるので、見守り用途にも使えそうですね。
SORACOM LTE-M Button for Enterpriseにも、簡易位置情報取得（基地局位置ベース）はできますが、若干の誤差はあるので、
GPSはやっぱりあるといいですね。
また、コンソールでポチポチやるだけで、可視化までいけちゃうので、ばら撒く際にも楽そうですね。
追加する場合は、設定同じであれば、SIMグループに紐づけて設定反映させればOKなんじゃないかと思うので。

電波掴むまでに時間がかかるのか、結構待たせれた感ありますね。
アンテナ多いであろう、東京都内だと変わるのか、また、ケチって速度クラス変えたので、元に戻すと変わるとかあるかなー。というもの調べたいところ。

晴れたので、そのまま外におきましたが、
筐体は防水等には対応していないそうなので、
小さいので、百円ショップで売ってるタッパーとかでも良さげかなと思いました。（センサーの精度が落ちるかもしれませんが）
持ち運びについては、このぐらいのガジェットポーチ的なのに入れるといいかも。ってことで、家にあったやつに入れることにします。
![家にあったガジェットポーチ](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/fbef1c68-7c61-c604-93e8-d4b64001c0bc.jpeg)

電池残量や電波強度も取れるので、電池残量少なくなったら、通知するとかもできそうですね。

加速度はそもそも値が何を意味するのか調べる必要がありそう。。。

そういえば、電源入ってるかどうか確かめるには、データ送信するしかないんですかね。軽く１回チョイ押ししたら、起きてるかどうかわかると便利だけど、流石に無理か。。。w

今日のところはこんな感じ

## （余談その1）コンソール画面が変わってる！
いつからかわからないのですが、速度クラス変更ダイアログとかが変わってて、びっくりしました。
<img width="786" alt="速度クラス変更ダイアログ" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/1236f563-fe55-097d-9e3c-4f4e5e09fe13.png">

ちなみに[FAQ](https://dev.soracom.io/jp/gps_multiunit/faqs/)では、s1.standardでの費用感が書いてありましたが、そんなデータ量でもないのでs1.minimumに変えましたが、この辺はどれを使うのがおすすめなのかなーとか思ってみたりしてます。

あと、SORACOM LTE-M Button powered by AWS用の設定項目だったガジェット（管理）に、今回ついに、GPSマルチユニットが登場！w
<img width="289" alt="ガジェット管理" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/72752/93c40732-16ff-ab92-8a00-015b65568f2d.png">

## （余談その2）京セラさんのHPにて

そういえば、製造元の京セラさんのページの[製品ページ](https://www.kyocera.co.jp/prdct/telecom/office/iot/products/gps_multiunit.html)に行くと、
あと、[IoTユニット](https://www.kyocera.co.jp/prdct/telecom/office/iot/products/index.html)と[LTE-Mボタン](https://www.kyocera.co.jp/prdct/telecom/office/iot/products/iot_button.html)があり、
LTE-Mボタンは[ボタンシリーズ](https://soracom.jp/products/gadgets/)として、SORACOM Editionがすでに発売されているので、
IoTユニットのSORACOM Editionに期待が高まりますね。そして出たら買うんでしょう。

## 次回

次回はSORACOM FunkとLambda大好きなので、SORACOM Funk経由でLambdaに送ってみます。