bluetooth - How does BLE parameter negotiation work? -
i'm wondering how negotiation parameters work when "central" , "peripheral" have different parameters set.
i might mistaken, understanding peripheral makes update request when connecting have it's parameter set connection. , central decides whether or not approve them.
what don't understand how decided if parameters approved or not. , haven't found code it.
for example if have following settings(just picking random values):
central: interval 10ms, slave latency 0, supervisortimeout 500
peripheral: interval 50ms, slave latency 10, supervisortimeout 3000
how can know peripheral parameters used or criteras them approved ?
if out there give nice explaination thankful.
central wants, peripheral has abide parameters, or disconnect.
peripheral can kindly ask other parameters ones edicted central, nothing tells must approved.
acceptance criteria central mix of constraints:
- normative (these constant , global),
- implementation specific, of time, depend on peripheral type / implemented services (apple explicitly defines some, instance (see 3.6)),
- dynamic (if central managing multiple connections @ same time, may prefer schedule them in way respective intervals multiple of common base.
while developing peripheral, cannot tell whether connection parameters prefer used. have cope it. moreover, centrals connect fixed parameters, issue connection parameter update after connection, , enumerate services , take decision, cannot blindly disconnect when connection parameter update not fit needs.
Comments
Post a Comment