tweet

ESP32, Gatt Server (+BLE Gateway)




esp32で、BLE試してみました。
カンタンなBLE通信と、wifi-http転送機能も追加した仕組みも検証できました。
*) ESP-IDFで開発してます。

# 概要、2種類
[1] BLE通信
Gatt Server : esp32
Gatt Client : android(アプリ Nordic/nRF connect )

[2] BLE通信 +WIFIブリッジ的な BLE Gateway


[1] Gatt Server - Client(android)
ESP-IDFの、 examples/bluetooth/gatt_server 、参考してます。
https://github.com/espressif/esp-idf/tree/master/examples/bluetooth/gatt_server

#Client (ホスト側) データ送信 /アプリの操作例 (TEXT 形式)
Gatt Serverを起動し ,
アプリ起動すると、server検証が実行され、一覧に追加されます。
NAME = ESP_GATTS_DEMO (* 修正しない場合。
データ送信する場合、接続先の [connect] おします。



タブが追加されて、下の Serviceを押します



[↑] みたいな送信押して、
送信画面が開きます。
種類= TEXT
値= 123 (Write value の下)
[SEND] 押すと、送信されます


# Log , Gatt Server


[0;32mI (52334) GATTS_DEMO: GATT_WRITE_EVT, value len 3, value 00333231
の行が、受信した行で。 value が値(16進)

# gatts_demo.c
gatts_profile_a_event_handler()
 case ESP_GATTS_WRITE_EVT
あたりが実行されているようです。




[2] BLE通信 +WIFIブリッジ的な BLE Gateway



1 の、Gatt serverが受信した、値をWIFI経由で
クラウド転送します。

追加した処理は、
http の別Taskを追加し、値を転送している程度です

# 送信した値。




# 参考
https://ja.wikipedia.org/wiki/Bluetooth_Low_Energy

https://learn.adafruit.com/introduction-to-bluetooth-low-energy/gatt

https://learn.adafruit.com/introduction-to-bluetooth-low-energy/gap

https://github.com/espressif/esp-idf/tree/master/examples/bluetooth/



# まとめ
今回はClient(子機)は、アプリで手動送信でしたが、
次回は 自作デバイスで、自動実行 -送信とか検討したいと思います。


# 関連の esp32まとめ
http://kuc-arc-f.com/make/?p=1288




コメント

FACEBOOK

人気の投稿