GNU/Linux >> Linux の 問題 >  >> Linux

BlueZ C ライブラリを介して Bluetooth Low Energy スキャンを実行する方法

他の回答の例は私にはうまくいきません。スキャンで停止します...

次のリンクは C 言語で機能しますが、de rssi シグナルに関する情報を含むバイトをキャストするときにエラーが発生します。https://github.com/glock45/intel-edison-playground/blob/master/scan.c

この行 121:

printf("%s - RSSI %d\n", addr, (**char**)info->data[info->length]);

printf("%s - RSSI %d\n", addr, (**int8_t**)info->data[info->length]);

bluez-version/monitor/*.c の中を調べて見つけました 、ここで btmon プログラムです。データ型と構造体 hcidump.c を見ることができます とても便利で packets.c 、および main.c もそうですが、hci ソケットについて学ぶことはたくさんあります


Galileo または Edison での BlueZ を使用した BLE プログラミングは、他の x86 プラットフォームと同様です。

Edison (および Galileo) には通常、BlueZ ライブラリがプリインストールされています。 C コードでそれらをリンクし、他の x86 プラットフォームと同様にプログラムするだけです。

BlueZ を使用した完全な C コードの Bluetooth スキャンの例については、このリンクを参照してください。

BLEスキャンについてはこちらの例をご覧ください

HCI API はこちらです。


Linux
  1. Makefile にスタティック ライブラリを含める方法

  2. BlueZ 用 Bluetooth ライブラリ (Windows)

  3. 追加の ssh コマンドなしで SSH Config を使用して jumphost 経由でターゲットに直接 SSH 接続する方法

  1. LinuxにNcursesライブラリをインストールする方法

  2. 中間マシンを介してScpする方法は??

  3. Bluetoothを介してiPhoneをマウスとして作成するにはどうすればよいですか?

  1. C サンプル コードで Libpcap を使用してパケット スニッフィングを実行する方法

  2. Linux で共有ライブラリを初期化する方法

  3. ライブラリがインストールされているかどうかを確認する方法は?