5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

LINE Simple BeaconをGenuino 101で使うには

Last updated at Posted at 2017-02-19

LINE Beaconのビーコン部分のみを自前で実装できるLINE Simple Beaconの仕様が公開されました。Raspberry PiやNode.jsでblenoを使ったサンプルコードも合わせて公開されておりますが、いずれもビーコンとして動かすには重量級なデバイスかなと思い、BLEを扱えるマイコンで動作させてみました。

使ったデバイス

  • Arduino (Genuino) 101

手元にあったBLEの電波を出せるものがこれだったので使っています。

実装内容

  • LINEのUUIDでAdvertisingが飛んでいる
  • Advertisingに適切なデータが含まれている

これらが揃っていればLINEのアプリ側が反応し、サーバに通知します。

Arduinoのコード

こちらのEddystoneを実装するためのコードを参考にしました。Arduinoのリファレンスには、まだAdvertisingに関する機能の詳細が載っていないのですが、コードは実装されているという状態です。

BLEService lineService("FE6F"); // LINEの16bit UUIDをサービスに設定
BLEPeripheral ble;
void setup() {
  ble.setAdvertisedServiceUuid(lineService.uuid()); 
  ble.setAdvertisedServiceData(lineService.uuid(), data, 8); // Advertisingの際のデータを設定
  ble.begin(); // Advertiseの開始
}

どんなデータを入れるのか

最低限必要なのは

  • frameTypeData
  • hwidData
  • measuredTxPowerData

の3点で、8バイトになります。これらが入ると、LINEアプリはビーコンの存在を認識します。

コード

実際のコードはこちらを参照ください。HWIDのみご自身のものに書き換えると、利用できます。

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?