問題タブ [gatt]
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.
linux - Bluetooth Low Energy:Linuxで通知/表示をリッスンする
Linuxマシンを介してBLEモジュールと通信しようとしています(モジュールは心拍数プロファイルを実行しています)。これまでのところ、通知と表示をリッスンする以外に必要なすべてのことを実行できました(たとえば、心拍数測定通知をリッスンする)。カーネルバージョン3.5とbluez-5.3を使用しています。
これまでに使用された成功したコマンド:
失敗したコマンド:
どんな助けでも大歓迎です。
bluetooth-lowenergy - LEDのON/OFFを切り替えるBLEデバイス(サーバー)のGATTプロファイル
これをSOに投稿するかどうかはわかりません。
私はかなり単純なBLEデバイスを見ています。オンまたはオフに切り替えることができる2つのLED(単純化するため)があります。
GATTプロファイルを参照しているときに、使用すべきプロファイルが見つかりません。それらのほとんどは、(要求に応じて) 何か (温度など) をクライアントに送り返します。
反対のことが必要です: BLE デシブ (サーバー) のオン/オフを切り替える必要があります。私の場合、クライアント (iPhone) は、LED-1 または LED-2 のオン/オフを切り替えるコマンドを送信します。
どのサービス プロファイルを使用すればよいですか?
ありがとう。
サービスの作成には nRF8001 開発キットと nRF Studio を使用しています。
android - Android BLE API: GATT 通知が受信されない
テストに使用したデバイス: Nexus 4、Android 4.3
接続は正常に機能onCharacteristicChanged
していますが、コールバックのメソッドが呼び出されません。setCharacteristicNotification(char, true)
ただし、内部を使用して通知を登録しonServicesDiscovered
ていますが、その関数は true を返します。
デバイス ログ (実際には、通知が表示されるべきか、Bluetooth デバイス経由で送信されるときに、メッセージはまったくありません):
GATT 通知は iOS を使用して正常に動作し、アプリは基本的に Android と同じように動作します (通知の登録など)。
他の誰かが可能な解決策でこれを経験しましたか?
bluetooth-lowenergy - Android API 18 ble writeCharacteristicが機能しない
Android 4.3 の新しい ble API を使用しています。LE デバイスからスキャン、接続、特性の発見などを行うことができます。
特性値を読み取る場合、一部の特性では応答が得られますが、他の特性では応答が得られません。// デバイスの障害であると推測します
問題は書き込み操作にあります。デバイスには、書き込みプロパティを持つ 2 つの特性があります。それらを書き込もうとすると、2つのケースがランダムに発生します-
- onWriteCharacteristicは呼び出されず、値はデバイスに変更されません。
- WriteTypeがWRITE_TYPE_NO_RESPONSEに設定されているにもかかわらず、 onWriteCharacteristic が成功ステータスで呼び出されていますが、値は変更されていません。
一部の非 4.3 アプリは、特性値を正常に変更しています。したがって、デバイスの障害ではないと思います。
洞察や助けをいただければ幸いです。
編集 1: これは、デバイスに特性を書き込もうとしているときのログのスニペットです。
WriteType は WRITE_TYPE_NO_RESPONSE に設定されていますが、まだ onWriteCharacteristic 呼び出しを取得していますが、値はデバイスに変更されていません。
誰でも助けてもらえますか?
編集 2: nexus-4 でアプリをテストしていましたが、この電話でも同じ問題が発生しますが、コードは Samsung S4 で正常に動作し、LE デバイスに特性値を書き込むことができます。それはNexus-4の問題ですか?しかし 、ここにいるこの男は、Nexus-4 で書くことができたと言っています。
android - 特性通知を有効にすると、Android BLE 4.3 onDescriptorWrite がステータス 128 を返す
新しい android BLE 4.3 を使用して特性を有効にすることに関する質問:
キューを使用して非同期で特性の通知を 1 つずつ有効にしていますが、BLE デバイスからの通知はありません。
また、ENABLE_NOTIFICATION_VALUE を使用して、UUID「00002902-0000-1000-8000-00805f9b34fb」の記述子を書き込みます。
Google sdk doc の推奨事項と、さまざまなフォーラムからの提案に従いました。
ちなみに「onDescriptorWrite」でstatus=128となります。このステータスが何を意味するかについて何か考えはありますか?
Googleコードを調べましたが、これに関する情報はありませんでした。ソースコードでさえ、このステータスがどのように設定されているかについては何も明らかにしていません。
ボディ メディア デバイスの通知を有効にしたときにこの問題が発生したことがある場合はお知らせください。また、ディスクリプタの書き込み時にステータス 133 を取得することもあります。テストには最新の Nexus 7 を使用しています。
java - Java SE 用 Bluetooth LE
Bluetooth LE 接続、特に GATT と、運が良ければ Apple の新しい iBeacon プロトコルをサポートする Java ライブラリを探しています。それ自体をブロードキャストできる必要があり、可能であれば接続を開始できる必要があります。
私は BlueCove を見て、Bluetooth LE をサポートするように BlueCove を拡張しようと試みましたが、うまく動作しませんでした。Android や Java ME ではなく、Java SE で動作するサポートされている Bluetooth ライブラリを知っている人はいますか?
何か案は?