設定手順
今回はラズパイにLINE beacon機能を持たせます。
設定はこちらの記事(この方法を真似るだけで設定できます。一部現状に合わせて修正しています。)
他のデバイスは以下リンク参照
概要
ビーコンとは近距離圏内で無線通信できる位置特定技術およびその機能を利用したデバイスのことで、LINEではBluetoothの機能を使ってビーコンを設定できます。
ラズパイ側設定
まずこちらのリンクの「LINE Simple BeaconのハードウェアIDを発行」をクリックし、アカウントリストを表示させます。※引用記事だとLINE OFFCIAL ACCOUNT MANAGERにリンクされますが、現在OFFCIAL ACCOUNT MANAGERは廃止され、LINE DEVELOPERSに統合されています。
アカウント一覧が表示されるので、Beaconを設定したいアカウントを選択します
そうしますと、ハードウェアIDの発行が出ますので、「ハードウェアIDを発行」をクリックしてください。(この数字IDはフェイクです)
スクリーンショット 2019-11-24 9.38.52.png
次にRaspberry Pi Zero Wをセットアップします
Linux向けのBluetoothのプロトコルスタックであるbluezおよび関連するパッケージをインストールします。
pi@raspberrypi.local $ sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev
最初のコマンドのHWIDを適宜変える以外、全てコピペです
(ここではHWIDが01234g6s89の場合)
# 発行されたHWIDを2桁ごとにスペースで区切ったものを指定
HWID='01 23 4g 6s 89'
ADVERTISE_DATA="13 02 01 06 03 03 6F FE 0B 16 6F FE 02 ${HWID} 7F 00"
# Bluetooth HCIを有効にし、初期化します
sudo hciconfig hci0 up
# LE Controller Commands(OGF: 0x08), HCI_LE_Set_Advertising_Data(OCF: 0x0008) を実行し、
# 出力データを設定します
sudo hcitool -i hci0 cmd 0x08 0x0008 ${ADVERTISE_DATA}
# Non connectable undirected advertising(3)で、Bluetooth LEのアドバタイズを有効にします
sudo hciconfig hci0 leadv 3