問題タブ [bluetooth-mesh]

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 投票する
3 に答える
4771 参照

bluetooth - Raspberry Pi 用 Bluetooth メッシュ

問題

私は現在、Raspberry Pi 用の Bluetooth 通信ライブラリに取り組んでいます。単純なメッセージングをサポートするだけで済みます。主な要件は、分散化されていることです

したがって、Bluetooth メッシュが最適なソリューションになると考えました。このガイドに従ってLinux meshctl ツールをインストールしましたが、複数の Raspberry Pi 間でメッセージを送信する機能が見つかりませんでした。meshctl ツールは、Bluetooth メッシュ ネットワークのプロビジョニングと構成専用のようです。

これは正しいです?私が間違っている場合は訂正してください。

解決?

Zephyrは実行可能な代替手段ですか? Bluetoothメッシュに関しては、現在のところLinuxよりも進んでいるようです。

TLDR : Linux 用の meshctl ツールは、プロビジョニングと構成専用ですか? 代わりにZephyrを使用する必要がありますか?

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

c++ - Zephyr OS で BLE メッシュの長距離を有効にする方法

私は Bluetooth メッシュ ネットワーク ソリューションに取り組んでおり、範囲を広げる必要があります。

nrf52840 DK と nrf52840 ドングル、nrf5SDKforMeshv310 を使用しています。Nordic Devzone で、メッシュ用の NRF SDK で BLE 長距離モードを有効にするソリューションを見つけました。

ノート!ソリューションが Bluetooth Mesh 標準に準拠していないことは承知しています。

次の変更が nrf5 SDK for Mesh v310 に適用されました。

  1. Advertise.c では、set_default_broadcast_configuration() が radio_mode を変更して、RADIO_MODE_BLE_1MBIT の代わりに RADIO_MODE_NRF_62K5BIT を使用するようにしました。
  2. scanner.c で、scanner_config_reset() は、RADIO_MODE_BLE_1MBIT の代わりに RADIO_MODE_NRF_62K5BIT を使用するように scanner_config_radio_mode_set() を変更しました。
  3. radio_config.c では、radio_config_config() が最後に次のコードを追加しました。 /li>
  4. Broadcast.c では、time_required_to_send_us() が追加されました。

    同じファイルで RADIO_PREAMBLE_LENGTH_LR_EXTRA_BYTES = 9 を定義

    radio_mode_to_us_per_byte[] の 5 番目の要素を 128 から 64 に変更しました。

    ノート。長距離モードのラベルが間違っていること。ヘッダー ファイルでは RADIO_MODE_NRF_62K5BIT と呼ばれていますが、代わりに 125kbps BLE ロング レンジ モードに対応しています。

残念ながら、リレーに関しては、Zephyr を使用してフレンド機能をサポートするように求められており、NRF SDK に変更を適用した後、Zephyr はメッセージをリレーしていません。Zephyr 側で簡単な調査を行ったところ、上記の NRF SDK 用の BLE 長距離用のコード ビットが配置されており、次の Kconfig 設定を使用して有効にできることがわかりました。

しかし、Zephyr 側でメッセージが中継されていることはまだわかりません (J-Link RTT Viewer を使用)。また、Bluetooth とメッシュのログ レベルを DEBUG に上げようとしましたが、メッセージが不正な形式または拒否された兆候は見られません。

Zephyr側でどの方向に掘り下げる必要があるか、誰かがアイデアを持っているかもしれませんか?

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

floating-point - Bluetooth 浮動小数点表現

この Bluetooth メッシュの特性を実装しようとしています。

https://www.bluetooth.com/wp-content/uploads/Sitecore-Media-Library/Specifications/Mesh/Xml/Characteristics/org.bluetooth.characteristic.illuminance.xml . この特性は、ルクス値を 3 バイトで表します。

しかし、0x123456 のような値を実際の浮動小数点数に変換する方法がわかりません。標準の IEEE 754 規格は使用されていないようです。DecimalExponentまた、と の意味もわかりませんBinaryExponent

誰か助けてくれませんか?よろしく、ダーン