SORACOMのあのボタンで位置情報が取れるようになったとのことで試してみた（＋おまけ）

SORACOMさんの「あのボタン」こと[LTE-M Button](https://soracom.jp/products/gadgets/)。
このボタンに[簡易位置測位機能が追加された](https://blog.soracom.jp/blog/2019/08/01/location-function-release/)ということで試してみました。


# 前提
ボタンを購入して、初期設定が済んでいること。

# とりあえずハーベストで可視化
特にむつかしいことはなく、対象のボタン(SIM)に紐づけているSIMグループのHarvestをONにするだけ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/66963cca-c55b-60a4-45a2-86254ef3e21f.png)

あとはボタンをポチポチしてHarvestのログで確認してみればこんな感じ。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/47d4e0e0-4f02-b74c-6ad0-b78bbf5bf6a4.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/71509303-485f-711c-745c-b6f8f968f940.png)

結構ずれているような気もするが、あくまで「簡易測位機能」なのでこんなものかなと。
この辺にいるってのが雰囲気でわかればいいというレベルであれば、使える・・・のかな。
※通信の際の基地局の位置を使っているみたいなことをDiscoveryの時に言っていたような気がする

# Funnel 経由でArcGIS Onlineで可視化

せっかくの位置情報なので、Funnel 経由でArcGIS Onlineで可視化してみる。

[この辺](https://community.esri.com/docs/DOC-12703-iot%E9%80%9A%E4%BF%A1%E3%83%97%E3%83%A9%E3%83%83%E3%83%88%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0-soracom-%E3%81%A8%E3%82%AF%E3%83%A9%E3%82%A6%E3%83%89gis%E3%83%97%E3%83%A9%E3%83%83%E3%83%88%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0-arcgis-online-%E3%81%AE%E9%80%A3%E6%90%BA-%E7%AC%AC2%E5%9B%9E-arcgis-online-%E3%81%AE%E8%A8%AD%E5%AE%9A)を参考にArcGIS Online側にデータの保存先を用意。


SORACOM Funnel側の設定としてはこんな感じ

```
{
  "sendType": "json",
  "delimiter": "",
  "encode": "",
  "d_id": "#IMSI",
  "lat": "location",
  "lng": "Location",
  "D_TIME": "",
  "v_dbl_1": "batteryLevel",
  "v_dbl_2": "",
  "v_dbl_3": "",
  "v_dbl_4": "",
  "v_int_1": "clickType",
  "v_int_2": "",
  "v_str_1": "clickTypeName",
  "v_str_2": "#locationQueryResult"
}
```
https://github.com/RyoNakamae/funnel_to_agol/blob/master/Config_LTM-Button.json

lat/lngのところにlocationを指定することで、LTMボタンから渡されるLocationタグの情報を使用することができる

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/6d392c01-d797-07bc-be00-d982d12c87bf.png)


紹介の都合上、順番前後してしまっているが、Harvestのポチポチ時には既に設定していたので、同じ位置情報が送信/登録されている。
ダッシュボード機能をつかうとこんな感じに見ることができる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/cf5512da-3dd8-4c0e-a1b1-ad86e22d406b.png)



# 実際におでかけしてみる
先日、[Maker Faire Tokyo 2019に行ってきた](http://www.riosnest.co.uk/2019/08/mft2019/)ので、せっかくなのでその際にボタンをポチポチしながら行ってきました。

## 新橋駅周辺
移動ルート的には地下の横須賀線ホームからゆりかもめに乗ってちょい移動したぐらいの範囲。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/09a5b92c-5c1f-1160-6f81-0eaaf88a2b98.png)

## お台場あたり
ゆりかもめでお台場を移動して、ビッグサイトへ移動しているのがなんとなくわかる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/6d8c9e37-608a-9f7b-9abc-1c82df0b68bd.png)

## 展示場中あたりから
ビッグサイトの駅についてから向いながら(もしくは内部で)ポチポチ。
少なくとも西展示場にいるのはわかる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/edd823dd-2846-3e1f-9b0b-ecff6bd32375.png)


# ついでに
ArcGISの新しいアプリである[QuickCapture](https://www.esri.com/en-us/arcgis/products/arcgis-quickcapture/overview)もせっかくなので試してみた。
※単なるアプリケーションなので使う分には特に問題はないと思いますが、一応β版っぽいです。

設定としてはプロジェクトを作成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/ed20b972-f429-e3d3-9a9a-5fcd7e0a3075.png)

Dataとして、格納先となる項目に対して、端末から取得できる項目を紐づけてあげればOK
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/c062dfe3-9976-7879-606d-6aa99d4f9188.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/0e63b055-a427-4a11-1119-f176efeb10a0.png)

あとはスマホで作成したプロジェクトをDLして、設定したボタンをポチれば端末で測位した位置でデータを登録してくれるっぽい。簡単。
※要ArcGIS Onlineアカウント

よくもわるくも端末のGPSの精度に依存するので、ちゃんと取れるかどうかは端末次第

## GPSなので、地下に入ると弱い
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/eea5e9c9-2620-8ec3-3e3a-415e31305267.png)

## レインボーブリッジ上でも平気
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/a2a8e080-95f1-3c79-a37c-11b69175dd71.png)


## 建物に入らなかったらほぼ想定通りの位置にはなる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/106639/b9adf9e6-0c80-7730-3add-3b9f90be6033.png)

# まとめ
ボタンでGPSモジュールがなくても簡単に位置情報が取得できるようになったことで、あとは見せ方次第になってくるのかなという気がした。
SORACOMのHarvest,Lagoon、ArcGIS Online、AWSIoTなどを経由して自分で保存したうえでLeafletなどなど。。
デザインスキルが欲しい。


あと、本題である簡易測位機能だが、思ってたよりもブレる/ズレるという印象。
期待してたほどいい感じには落ちないような気がする
あくまで「簡易」だから、こんなもんなんだろうけど、期待しすぎたのかもしれない。
変な話だけど、このあたり(エリア)にいるというぐらいの指標なのかなと。

GPSモジュールを使わないでこれだけの精度で取れればいいじゃんという気もするが、じゃあこれでどう使う？となると精度が中途半端で使いにくいかもしれない。

位置情報がファジーであることを利用して、これでかくれんぼ？とか鬼ごっことかをやらせたら面白いのかな。