問題タブ [bluetooth-peripheral]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
7431 参照

bluetooth-lowenergy - HCITool を使用して Bluetooth LE サービスをアドバタイズする

Linux コンピューターで Bluetooth Low Energy Peripheral を作成する実験を行っています (目標は、iPhone から Bluetooth 経由でデータを送信することです)。私は現在ツールhciconfighcitoolおよびを使用していますhcidump

私の現在の実験は、iOS CoreBluetooth ライブラリが取得する特定の UUID を持つサービスを宣伝することです。(注: iBeacon を作成しようとしているわけではありません)。

現在、私を悩ませているのは、実際には 1 つのコマンドと同じくらい簡単です。

私がすべきだと思うことは次のとおりです。

  • 0x08: グループを BLE に設定
  • 0x0008: コマンドを HCI_LE_Set_Advertising_Data に設定

  • 0x15: ヘッダーの有効バイトの長さを 21 に設定します。 (フラグ パケットに 3 バイト、サービス構造に 18 バイト)
  • 0x02: Flags 構造体の長さを 2 バイトに設定
  • 0x01: 構造体の Type を AD Flags に設定
  • 0x1a: フラグ値:

    /li>

(旗の終わり)

  • 0x11 サービス構造の長さを 17 バイトに設定
  • 0x07 構造タイプを 128 ビットに設定 完全なサービス UUID リスト
  • 0x41 ... 0x50 テスト サービスの UUID を ABCDEFGHIJKLMNOP に設定

で見る限り、hcidump適切に実行され、希望どおりに見えます。しかし、それはエラーで拒否されました:

そして、私はそれを正しくするために丸一日を費やしました. 熟練した誰かが私が間違ったことを見ていますか? そして、これはサービスを宣伝する正しい方法ですか?

(興味のある読者へのコンテキスト: NodeJs で Bleno ライブラリを使用してやりたいことを成功裏に達成しました。しかし、これはシステムの全体像には当てはまりません。広告のために HCITool を直接使用することは、実験のためだけであり、記述されます。後で Python で)

0 投票する
1 に答える
707 参照

bluetooth-lowenergy - Android 5 BLE ペリフェラル モードをサポートするスマートウォッチ

次のチェックで true を返す Android Wear スマートウォッチはどれですか。

?

stackoverflow ( Android 5 BLE ペリフェラル モードをサポートするチップセット/デバイス) には、Android スマートフォンとタブレットのリストしかありません。

編集: ASUS ZenWatch 2 は false を返します。

0 投票する
1 に答える
176 参照

ios - 再起動後に Bluetooth 周辺機器に接続する

電話を再起動した後、周辺機器を再接続しようとしています。

位置更新コールバックを使用して、バックグラウンドで BLE 接続プロセスを開始しています。BLE スタックはバックグラウンドで正しく初期化されます (CBCentralManagerStatePoweredOn イベントが送信されます)。

周辺機器の「接続」が開始されますが、接続が確立されません...

再起動後にデバイスを再接続するアイデアはありますか?

0 投票する
0 に答える
1165 参照

android - BLE ペリフェラルとしての Android は、セントラルがアドバタイズされているサービス、特性、および記述子を検出したときに、CCCD 記述子を表示しません。

セントラル デバイスがサービス、特性、およびその記述子を検出しようとすると、すべて正常に検出されますが、通知プロパティを持つ特性のクライアント構成特性記述子を検索しようとすると、検出されません。

これが私の特徴を説明した方法です:

私の記述子:

特性への記述子の追加

その後応答がないため、中央デバイスがタイプ「0x2902」の記述子を検索しようとしていることを示すスニファーからのこの画像を参照してください。

スニファーのスクリーンショット

他の特性とサービスはうまく発見されていますが、

サービスと特性スニファーのスクリーンショット

なぜこれが起こっているのか誰か教えてください。Nexus5X を BLE ペリフェラルとして使用しているときに、そのような問題に遭遇した人はいますか?

0 投票する
1 に答える
248 参照

ios - BLE サービスとして機能する iOS アプリを実装できますか?

Bluetooth Low Energy サービスとして機能する iOS アプリを実装できますか?

プログラムで次を定義できる必要があります。

  • サービス UUID
  • サービスの特徴
  • これらの値を更新する方法
  • 特性のユーザー許可を定義する方法: 読み取り / 書き込み / 通知
  • サービスの送信 (TX) 電力を定義する方法

iOS のドキュメントの一部になるように、開始するための優れたデモ/例を指摘したり、コード スニペットを共有したりしていただければ幸いです。