python , BLE gateway Server の設置

IMGP6817-top

nano Pi NEO にセットアップする手順を、記載しております。

*1) 子機デバイス対象は、public address を採用している機種となります。
それ以外の random addres 機種は対象外となります。

*2) 動作確認機種は、Nano Pi NEO 512BM, raspBery Pi 2 となります。

*3) rasPi版設定は下記に、関連リンクを記載しています。

 


# 部品 (参考URL等)
Nano Pi NEO 512MB
http://akizukidenshi.com/catalog/g/gM-12301/

Nano Pi NEOシリーズ用ヒートシンク
http://akizukidenshi.com/catalog/g/gP-12303/

ACアダプタ/ micro USBケーブル/  有線LAN ケーブル

Bluetooth子機(ドングル)
*) 例として下記機種を選択しました。
PRINCETON / Bluetooth USBアダプター PTM-UBT7

*1) OS は、Ubuntu-core を選択した例となります。
*2) SDカードは、16GBを選択した場合となります。

 


# セットアップ手順 – ライブラリ
下記の version で設定行いました。
> uname -a
Linux NanoPi-NEO 4.11.2 #266 SMP Thu Jun 29 17:46:10 CST 2017 armv7l armv7l armv7l GNU/Linux

# bluez (*インストール済みでした。 )
sudo apt-get install bluez

# bluepy
$ sudo apt-get install python-pip libglib2.0-dev
$ sudo pip install bluepy

#requests (http 関連です。 )
sudo pip install requests

 

# セットアップ手順 – python Server
コードの修正が一部必要になります。

githubから、download /解凍 します。
https://github.com/kuc-arc-f/ble_gateway_sv2

下記 ble_gateway_sv2 、下ファイル関連です。
*)子機BDアドレス(public address)を指定する方法となります。
調査方法は下記を参考下さい。

config.json –対象デバイス名 ,public address を指定します。 (Json 形式)
設定の例: config-sample.json
デバイス名は、キー項目となります、重複名は入力できません。

ss-config-821

http_func.py — 送信先 server設定, HTTP GETで送信
ble_gateway_sv.py send_http() — request パラメータ設定、
BLEデータ配列から、データを取り出し、HTTP GET requestに設定します。
例に沿って、設定下さい
*) 取り出し時は、デバイス名/ フィールド番号(1-5)
の指定が必要です。

server 起動します:

sudo python ble_gateway_sv2.py

 


# 子機 /BDアドレス (public adress )の調査方法
子機デバイスをセットアップ後、電源ONにした状態で調査可能です。

scan用の python file を実行します。
sudo python scan5-checkAddr.py

https://github.com/kuc-arc-f/ble_gateway_sv2/blob/master/ble_gateway_sv2/scan5-checkAddr.py

(参考) 簡易的にスマホアプリ等でも、調査可能です。
大文字/小文字が逆転する場合がありましたので、上記の調査方法の補足となります。
下記は、nordic /nRF Connect の画面です。

N/A の下に、public address (48 bit )が表示されます。

Screenshot_2017-08-04-11-19-58

 

# 送信先を指定して、BLEから送信されたセンサー値などを
クラウド保存可能です。

ss-tihngS

 


# 参考の記事

NANOPI NEO 512MB 初期設定編
http://knaka0209.blogspot.jp/2017/07/nanoPi-1.html

# rasberyPi版 、設定参考
http://knaka0209.blogspot.jp/2017/07/raspi-5-BLE.html