問題タブ [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.
bluetooth - 属性は、読み取り/書き込みの前に認証が必要です
bluez バージョン 4.101 の Linux コンピューターを使用しています。スレーブ モードで BLE デバイスと通信しています。BLE デバイスからデータを読み込もうとしています。しかし、それを行うと、「属性は読み取り/書き込みの前に認証が必要です」というエラーで読み取りが失敗します。他の多くの特性からデータを読み取ることができますが、これには失敗します。私が使用しているコマンドは
-gatttool -b 11:22:33:44:55:66 --char-read
このデータを読み取るにはどうすればよいですか?
注: このデータは iPhone から読み取ることができます。でもペアリングする必要があるので、ペアリングの問題かもしれません。
c# - Bluetooth Low Energy 接続パラメーターの更新 - HRESULT を引き起こすデバイスまたはウィンドウ: 0x80070005 (E_ACCESSDENIED))?
GAP サービス (0x180) の特性と 0x2A04 に書き込もうとしています
0x2A04 (接続パラメーター) または 0x0200 (デバイス名) に書き込もうとすると、
そしてWriteValueAsync()を呼び出すと、プログラムはその行で中断し、私の例外は
タイプ 'System.UnauthorizedAccessException' の例外が mscorlib.dll で発生しましたが、ユーザー コードで処理されませんでした
追加情報: アクセスが拒否されました。(HRESULT からの例外: 0x80070005 (E_ACCESSDENIED))
パラメータが拒否されているスタックのレベルがよくわかりません-パラメータがBLEデバイスに到達しているかどうかさえわかりません。ただ、他のGATTサービスへの書き込みやGAP特性からの読み込みはできるので、デバイスだと思います。
この問題がどこから来ているかを発見するための絶対確実な方法を誰でも見ることができますか?
ありがとうトーマス
android - 光センサーからの BluetoothGatt 値の解釈
BLE デバイスの光センサーから値を受け取るアプリを作成しています。私は自分が何を受け取っているのかを判断しようとしています。センサーが提供するルクス値を取得しようとしていますが、変換が必要なことが懸念されます。このセンサーの測定単位がわかりません。たとえば、Android フォンの単位は SI ルクスです。簡単なはずですが、このセンサーの仕様は明記されていません。
出力を提供しているコードは次のとおりです。
簡単です。センサーを読み取り、読み取り時にそのセンサーからのさまざまな出力を教えてください。次に、出力は次のとおりです。
これの測定値はRawValues 1と2であると解釈していますが、保存されているものをログに記録しています. 問題は、StoredValue が [B@431d30b0 であり、私を超えていることです。メーカーの説明によると、最初のバイトはアドレス 00x03 の HILUX であり、2 番目のバイトはアドレス 00x04 の LOLUX であり、デフォルト値は 00:00 です。
私はここで何を見ていますか、どこが間違っていますか? 私が傷ついているのは、私が読んでいるものに対する私の理解です。それについて学ぶための良い検索コンテキストを取得できないようです。
ありがとう
bluetooth-lowenergy - Bluetooth LE では、接続が確立される前に GATT サーバーと GATT クライアントの両方がアドバタイズしますか?
私は Bluetooth LE を初めて使用し、CSR のデバイスで作業しています。
- GATT クライアントと GATT サーバーを作成する予定です。
- GATT サーバーが通知を使用して GATT クライアントにデータを送信できる場所。
- ただし、ここでは、サーバーとクライアントの両方をマイクロコントローラーベースの BT LE デバイスにしたいと考えています。
また、もう1つの疑問は、GATTサーバーにデータがある場合、通知を作成して送信するのはプログラマーの責任なのか、それとも属性の更新時に通知が自動的に送信される方法があるのかということです.
これに使用できるサンプルコードがあれば提供してください。
android - Bluetooth 低エネルギー プッシュ モード
Android L のリリースに伴い、両方のモードで BLE を使用するアプリケーションを作成しています。一部の電話はペリフェラル モード (つまり GATT サーバー) になり、他の電話は中央モード (つまり GATT クライアント) になります。各電話がクライアントになるかサーバーになるかを正確にどのように決定するかは関係ありません。
私が遭遇した問題は、ある時点で、GATT サーバーが GATT クライアントへの情報のプッシュを開始し、GATT クライアントに応答させる必要があるということです。仕様を確認したところ、通信は双方向であると書かれていますが、これがサポートされている通信モードかどうかはわかりません。明らかな選択は、サーバーとクライアントの役割を逆にすることですが、残念ながら、アプリケーションの要件により、それを行うことができません (GATT クライアント モードを使用する役割は、一度に複数のデバイスへの接続を維持する必要があるため)。
GATT サーバーがデータを GATT クライアントに「プッシュ」する明確な方法はありますか? または、別のオプション (おそらく、従来の Bluetooth 接続を確立するために何らかのフラグを使用する) があり、それはより良いオプションになりますか?
android - Android、BLEデバイスをペアリングデバイス(ボンディング)にするにはどうすればよいですか
GATT の前に、createRfcommSocketToServiceRecord、createInsecureRfcommSocketToServiceRecord
メソッドはペアリングされたデバイスを作ることができます、
ただし、GATT にはペアリングされたデバイスに関するオプションはなく、BluetoothDevice.connectGatt(...) のみを使用してください。
すでに接続されている場合はペアリングしたい。
どうも。
android - GATT Android で BLE 特性の値を取得する
次のコードを使用して、特性を読み取り、その値を取得しようとしています
アプリがクラッシュし、「アプリケーションがメイン スレッドで処理しすぎている可能性があります」というエラーが表示されます。
私も試してみました
しかし、エラーは同じです
コードをデバッグして、値が取得されているかどうかを確認しました
これは正しい値を表示しますが、Android アプリとしてコードを実行すると表示されます。同じエラーが発生します。
android - 特徴的なBLEアンドロイドを送信するヌルポインタ例外エラー
私は新しい Android 開発者で、BLE 4.3
Gatt Android サンプル プロジェクトに基づいて を使用してデータを送信しようとしています。
特性を利用して、送信したいデータを入れます。
送信しようとするとDeviceControlActivity
、プロジェクトのリストの 3 番目のサービスを使用し、テキストを紹介するテキスト ダイアログが表示されます。OKを押すと、送信が開始されるという考えですが、NullPointerException
エラーが発生します。
このエラーが表示される理由と、これを解決する方法がわかりません。
これが役立つ場合、これは私の完全なコードです
}
誰かが私が間違っていることを教えてもらえますか?
前もってありがとう