2016-05-02 24 views
0

BLEが処理できる間隔のパケット数を正確に知る必要があります。ペリフェラルは、そのデータシートに従って、1つのインターバルで6パケットを処理しますが、セントラルが処理できるパケットの数を知ることができませんでした。セントラルデバイスは、Android 5.0.2を実行するMotorola Moto G(第2世代)です。BLE Wiresharkの接続間隔あたりのパケット数

彼はbtsnoop_hci.logファイルを調べることで、接続間隔(私の場合は7.5ms)などの複数の接続パラメータを識別することができました。私の質問は、Wiresharkのネゴシエーションパケットを調べることによって、単一のcoonection間隔で交換できるパッケージの数を決定することが可能です。

答えて

0

この仕様では、接続イベント内のパケットの最大数に関する否定はありません。接続事象は、せいぜい(ConnectionInterval - 150μs)続くことができます(6.B.4.5.1参照)。

制限があれば、両方のPHYにあります。ほとんどのHCIファームウェアは、接続イベントごとに1方向につき4-5パケットに制限されています。

0

マスタ側のコントローラは、接続イベントをどのくらい長く開くべきかを決定する必要があります(どちらの側からパケットが多くても長い間)。スレーブはこれについて何も言わない。

中央ホストの場合、接続の作成時および接続パラメータの更新時には、2つのHCIパラメータMinimum_CE_LengthとMaximum_CE_Lengthがあります。これらは、接続イベントをどのくらい開いておくべきかを示す情報パラメータです。これらが高い数値に設定されている場合、コントローラーは可能な限り長い接続イベントをオープンします。

悲しいことに、Androidはこれらのパラメータを両方とも0に設定しているため、ほとんどのコントローラは接続イベントを3または4パケットに制限します。

関連する問題