問題タブ [hci]
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 デバイス (Raspberry Pi モデル A+) を取得して、Bluetooth 4.0 USB ドングルを「広告」状態に切り替えることに成功しました。
また
「LightBlue Explorer」アプリを実行している iPod を使用して、これを確認しました。
これまでのところすべて順調です。
Bluetooth 4.0ドングルも備えた別のLinuxボックス(別のPi)から; 次のコマンドを使用して、デバイスを表示することもできます。
次のようなものが返されます。
ただし、コマンドはデバイスのリストを常に更新するループを繰り返します。
したがって、私の主な質問は次のとおりです。実行できるコマンドのバリエーションはありますか、(たとえば)5秒間リッスンします。アドバタイズされていることが判明したデバイスのリストを返し、終了しますか?
定期的にウェイクアップし、広告トラフィックを (受動的に) 数秒間リッスンし、ソース デバイスのリストを返す単純なスクリプト (理想的には Python プログラム) を作成したいと考えています。
さらに、コマンドが検出したデバイスに対して「不明」と表示される理由がわかりません。(一方、LightBlue は名前を識別します)。
linux - hci_send_req API 実装でイベント パケット ヘッダーがどのように取得されますか?
こんにちは、hci.c ファイルで hci_send_req の実装を行っています。hci コマンドを controller に送信した後、この関数で . コントローラがイベント パケットを送信します。によってバッファ内のイベント パケットを読み取った後 read(dd, buf, sizeof(buf)) (dd is hci socket descriptor)
、イベント パケット ヘッダーが必要になり、イベント パケット ヘッダーを取得するために、buf が 1 バイトずつふるいにかけられます。どうして??
これについて教えてください。ありがとう。
raspberry-pi - HCI LE 接続 -- コマンドが許可されていません
Node.js経由でnobleとblenoを使用してRasbianからBLE周辺機器に接続していますが、何か問題が発生して接続できません。複数の異なる BLE ドングルを試しましたが、どれも同じように失敗します。現在、CSR 4.0 が添付されています。OS X、iOS、または Android から作成された場合、接続は正常に機能します。
HCI ダンプは次のとおりです。
経由で接続を試みると、接続hcitool lecc
がgatttool
確立されますが、特性値を書き込もうとすると で失敗しCharacteristic Write Request failed: Attribute requires authentication before read/write
ます。これは関連していますか?
私はオンですLinux raspberrypi 4.1.13+ #826 PREEMPT Fri Nov 13 20:13:22 GMT 2015 armv6l GNU/Linux
bluetooth - Bluetooth A2DP および RFCOMM
いくつかのアドオンを使用して、独自の Bluetooth スピーカーを作成しようとしています。私のソニーのアンドロイド電話はソースとして機能し、USB Bluetoothドングルを備えたラズベリーパイがシンクになっています。
A2DP プロファイルを使用して Bluetooth ドングルを既にセットアップしており、ループバック スクリプトを実行して着信オーディオを接続されたサウンドカードにリンクしています。
次に、変数の読み取り/書き込み機能を追加し、RFCOMM プロファイルと同じ Bluetooth 接続を介してコマンドをラズベリー パイに送信したいと考えています。
「sdptool add sp」に続いて「sudo rfcomm listen hci0」を使用してRFCOMM接続を開いて、Android Bluetoothエミュレーターで電話に接続しようとすると、エミュレーターは接続が開かれたと表示します。その後、エミュレーターはすぐに接続が閉じられたことを伝えます。ラズベリーパイは、接続が開いているか閉じていることにさえ気づきません。
私はすでにこの記事を読んでおり、私の目標は可能であると記されています。私にとって唯一の質問は、その方法です。
だから私の質問は:
A2DP と RFCOMM プロファイルの両方に既にペアリングされた Bluetooth 接続を使用できますか? また、HCI で設定を行うにはどうすればよいですか?
私のラズベリーパイへの接続のようなソケットを介してコマンドを送信する代替手段がある場合は、ぜひ試してみたいと思います。
- - 編集 - -
それで先週末、Bluetoothの問題を解決するためにもう一度試してみました。最初にコマンド ラインから RFCOMM 接続をセットアップしようとしましたが、期待どおりに機能しました。
次に切断し、Bluetooth プロファイルを 0x20041C (ポータブル オーディオ) に設定し、RRCOMM 接続を再度セットアップしました。前回試したときは何がうまくいかなかったのかよくわかりませんが、今回はうまくいきました。pulseaudioを使用して、AndroidフォンをオーディオソースとしてUSBサウンドカードにリンクすることさえできました。
それで、疑問は解決したと思います。
bluetooth - l2ping Bluetooth 接続の最大リンク数
Bluetooth ドングルを使用した最大同時接続数について質問があります。私のシステムは 10 台の Raspberry Pi-es 2 に基づいており、私が達成しようとしているのは、いくつかの研究プロジェクトのためにそれらの間で Bluetooth 低エネルギー接続を確立することです。私の Bluetooth ドングルは次のとおりです。Cambridge Silicon Radio, Ltd Bluetooth ドングル (HCI モード)。ブルートゥース モード (Bluez など) 用にラズベリーをセットアップすると、すべて正常に動作し、すべてのラズベリーが他のラズベリーをスキャンできます (hcitool スキャン)。 、残りのデバイスは「エラー: 接続エラー: リンクが多すぎます」と報告します。ピコネットを作成するときに Bluetooth が 8 つのデバイスしかサポートしないという記事をいくつか読んだことがあるので、このハードウェア関連の制限またはテクノロジの制限について疑問に思っています。
xml - エラー!使用した選択した XPath に関する提案はありますか?
HANA Cloud Integration を使用して統合フロー (iFlow) を構築しています。ただし、XML の経験があれば誰でも役立つ可能性があります。
私は、openweathermap API と対話し、「天気」データを取り込み、特定のデータ ポイントを電子メールで送信する、非常に単純な統合フローを構築しました。これは、私が以下で作業している XML です。
このためweather
には、current
ルート要素の要素を抽出する必要があり、value
フィールドが使用されます。これは XPath 文字列によって形成されます/current/weather/@value
。最終更新フィールドも統合の次のプロセスに渡す必要があり、同じ方法で抽出できます。
currentConditions
およびという名前の文字列である 2 つのヘッダー プロパティを作成しました。currentReport
これらは XPath 属性/current/weather/@value
およびを指します/current/lastupdate/@value
。XPath では@
、要素ではなく属性を参照します。また、外部サービス呼び出しに渡せるように、これらのヘッダー値を作成することも忘れないでください。それらがプロパティである場合、それらは外部プロセスに送信されません。ただし、次のエラーが表示されます。
org.apache.camel.builder.xml.InvalidXPathExpression: 無効な xpath: /current/weather/@value。理由: javax.xml.xpath.XPathExpressionException: クラス javax.xml.transform.sax.SAXSource のノードの変換に失敗しました: org.xml.sax.SAXParseException; 行番号: 1; 列番号: 1; プロローグではコンテンツは許可されません。原因: javax.xml.xpath.XPathExpressionException: クラス javax.xml.transform.sax.SAXSource のノードの変換に失敗しました: org.xml.sax.SAXParseException; 行番号: 1; 列番号: 1; コンテンツはプロローグで許可されていません。
助言がありますか?
pipe - grep hcitool lescan 出力
「hcitool lescan」の出力をgrepするにはどうすればよいですか、それとも何かにパイプしてください。「hcitool lescan」から何かをパイプすると、出力が得られないようです。