"中央"と "周辺"に異なるパラメータが設定されている場合、パラメータのネゴシエーションがどのように機能するのか疑問に思っています。BLEパラメータネゴシエーションはどのように機能しますか?
私は間違いかもしれませんが、私の理解から、周辺機器は、接続のために接続する際にパラメータを設定するように要求します。そして中央はそれを承認するかどうかを決めます。
私が理解していないのは、これらのパラメータが承認されているかどうかがどのように決定されるかです。そして、私はそれのためのコードを発見していない。
例えば私は(単にランダムな値を選ぶ)次のように設定している場合:間隔50ミリ秒、スレーブ待ち時間10、supervisortimeout 3000
:500周辺をsupervisortimeout間隔10msで、スレーブ待ち時間0:
セントラル
私の周辺機器のパラメータが使用されるかどうか、あるいはそれらが承認される基準は何ですか?
誰かが素敵な説明をすることができたら、私はとても感謝しています。
"Centralは必要なものを実行し、周辺機器はパラメータを保持しなければなりません。"それは完全に正しいわけではありません: "更新された接続パラメータが周辺機器に受け入れられない場合は、エラーコード" Unacceptable Connection Interval "»で接続を切断する可能性があります。 (Core Spec V4、Vol.3、Part C、9.3.9.2を参照) – Nebr
もちろん、私は「Centralはそれが正しいものであれば何でもいい」という意味で、仕様通りです。 – Nipo
これは第2です「周辺機器はパラメータを保持しなければならない」という問題の文章の一部。いいえ、それはまた、それが適切であると思われる何らかの理由でそれらを拒否することを選ぶこともできます。それは守る必要はありません。 (ちょうど記録のために:私は答えをdownvoteしなかった) – Nebr