Help us understand the problem. What is going on with this article?

BlueZのAPI

More than 3 years have passed since last update.

BlueZのAPIについて調べてみた。

なんでこうなっているのか、よくわかりませんが、なるべくならD-BusのAPIを使うのが良さそうです。

APIの切り口として以下があるみたいです。
* lib
* src/shared
* attrib
* btio
* D-Bus
* Android Bluetooth HAL

# lib
* 場所:lib
* bluezの内部API
* bluezのプロトコルスタックの中で使用する共通処理を行う関数のあつまり

src/shared

  • 場所:src/shared
  • Bluezの内部API
  • ATT, GATT, GAP, HCI など色々

btio

  • 場所:btio
  • socket APIのwrapper
  • attribはbtioのAPIを使っている。
  • pygattlibが使っている

attrib

  • 場所:attrib
  • gattの読み書きをするAPI
  • gatttoolが使っている。
  • attribはbtioのAPIを使っている。
  • discovery/scanはできない

D-Bus

  • LinuxのIPC
  • APIのヘッダファイルはないので、docにあるドキュメントとsrc/のソースコードとサンプルのソースコードを読む。
  • サンプルのbluetoothctlはD-BusのAPIのみを使っている

Android Bluetooth HAL

  • 場所:android
  • Android Bluetooth HAL互換のAPI
  • BTとBLEに対応、l2cap, rfcommのsocketもある。
  • 最近、メンテする人がいなくAndroid 5.0までしか対応していない。
eggman
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away