BLE

इस मॉड्यूल में BLE होस्ट कम्यूनिकेशन के लिए प्लैटफ़ॉर्म ऐब्स्ट्रैक्शन शामिल है.

खास जानकारी

प्लैटफ़ॉर्म पर ब्लूटूथ LE 4.2 या इसके बाद का वर्शन इंस्टॉल होना चाहिए.

टाइपडीफ़

otBleRadioPacket typedef
यह बीएलई पैकेट के बारे में बताता है.

फ़ंक्शन

otPlatBleDisable(otInstance *aInstance)
ब्लूटूथ स्मार्ट रेडियो बंद करें.
otPlatBleEnable(otInstance *aInstance)
ब्लूटूथ स्मार्ट रेडियो चालू करें.
otPlatBleGapAdvStart(otInstance *aInstance, uint16_t aInterval)
BLE विज्ञापन प्रक्रिया शुरू की जाती है.
otPlatBleGapAdvStop(otInstance *aInstance)
BLE विज्ञापन प्रक्रिया को रोकता है.
otPlatBleGapDisconnect(otInstance *aInstance)
इससे बीएलई कनेक्शन डिसकनेक्ट हो जाता है.
otPlatBleGapOnConnected(otInstance *aInstance, uint16_t aConnectionId)
void
BLE ड्राइवर इस तरीके को कॉल करके, OpenThread को सूचना देता है कि BLE सेंट्रल डिवाइस कनेक्ट कर दिया गया है.
otPlatBleGapOnDisconnected(otInstance *aInstance, uint16_t aConnectionId)
void
BLE ड्राइवर इस तरीके को कॉल करके, OpenThread को सूचना देता है कि BLE सेंट्रल डिवाइस डिसकनेक्ट कर दिया गया है.
otPlatBleGattMtuGet(otInstance *aInstance, uint16_t *aMtu)
रीड में फ़िलहाल ATT_MTU की वैल्यू का इस्तेमाल किया जा रहा है.
otPlatBleGattOnMtuUpdate(otInstance *aInstance, uint16_t aMtu)
void
BLE ड्राइवर इस तरीके को कॉल करके, OpenThread को सूचना देता है कि ATT_MTU अपडेट कर दिया गया है.
otPlatBleGattServerIndicate(otInstance *aInstance, uint16_t aHandle, const otBleRadioPacket *aPacket)
ATT हैंडल की वैल्यू का संकेत भेजता है.
otPlatBleGattServerOnWriteRequest(otInstance *aInstance, uint16_t aHandle, const otBleRadioPacket *aPacket)
void
BLE ड्राइवर इस तरीके को कॉल करके, OpenThread को सूचना देता है कि ATT लिखने के अनुरोध का पैकेट मिला है.

संरचना

otBleRadioPacket

यह बीएलई पैकेट के बारे में बताता है.

टाइपडीफ़

otBleRadioPacket

struct otBleRadioPacket otBleRadioPacket

यह बीएलई पैकेट के बारे में बताता है.

फ़ंक्शन

otPlatBleDisable

otError otPlatBleDisable(
  otInstance *aInstance
)

ब्लूटूथ स्मार्ट रेडियो बंद करें.

बंद होने पर, बीएलई स्टैक इवेंट की सूची को साफ़ करेगा और नए इवेंट जनरेट नहीं करेगा. BLE सहायक डिवाइस बंद कर दिया गया है या उसे कम पावर वाले स्लीप मोड में रखा गया है. स्टैक के ज़रिए इस्तेमाल की जाने वाली किसी भी डाइनैमिक मेमोरी को रिलीज़ किया जाना चाहिए, लेकिन स्टैटिक मेमोरी रिज़र्व रह सकती है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
रिटर्न वैल्यू
OT_ERROR_NONE
बंद कर दिया गया.
OT_ERROR_FAILED
BLE रेडियो को बंद नहीं किया जा सका.

otPlatBleEnable

otError otPlatBleEnable(
  otInstance *aInstance
)

ब्लूटूथ स्मार्ट रेडियो चालू करें.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
रिटर्न वैल्यू
OT_ERROR_NONE
चालू कर दिया गया है.
OT_ERROR_FAILED
BLE रेडियो को चालू नहीं किया जा सका.

otPlatBleGapAdvStart

otError otPlatBleGapAdvStart(
  otInstance *aInstance,
  uint16_t aInterval
)

BLE विज्ञापन प्रक्रिया शुरू की जाती है.

बीएलई डिवाइस, बिना किसी फ़िल्टर के विज्ञापन का इस्तेमाल करेगा. सभी विज्ञापन चैनलों (37, 38, और 39) पर एक BLE विज्ञापन पैकेट भेजा जाना चाहिए.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
[in] aInterval
OT_BLE_ADV_INTERVAL_UNIT में, बाद के विज्ञापन पैकेट के बीच का इंटरवल. कंपाइल समय पर सेट डिफ़ॉल्ट वैल्यू के लिए, OT_BLE_ADV_INTERVAL_MIN और OT_BLE_ADV_INTERVAL_MAX रेंज या OT_BLE_ADV_INTERVAL_DEFAULT के अंदर होगा.
रिटर्न वैल्यू
OT_ERROR_NONE
विज्ञापन प्रक्रिया शुरू कर दी गई है.
OT_ERROR_INVALID_STATE
BLE डिवाइस की स्थिति अमान्य है.
OT_ERROR_INVALID_ARGS
अमान्य अंतराल मान दिया गया है.

otPlatBleGapAdvStop

otError otPlatBleGapAdvStop(
  otInstance *aInstance
)

BLE विज्ञापन प्रक्रिया को रोकता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
रिटर्न वैल्यू
OT_ERROR_NONE
विज्ञापन प्रक्रिया रोक दी गई है.
OT_ERROR_INVALID_STATE
BLE डिवाइस की स्थिति अमान्य है.

otPlatBleGapDisconnect

otError otPlatBleGapDisconnect(
  otInstance *aInstance
)

इससे बीएलई कनेक्शन डिसकनेक्ट हो जाता है.

BLE डिवाइस को पीयर BLE डिवाइस से डिसकनेक्ट करते समय, रिमोट यूज़र टर्मिनेड कनेक्शन (0x13) वजह कोड का इस्तेमाल करना होगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
रिटर्न वैल्यू
OT_ERROR_NONE
डिसकनेक्ट करने की प्रोसेस शुरू हो गई है.
OT_ERROR_INVALID_STATE
BLE डिवाइस की स्थिति अमान्य है.

otPlatBleGapOnConnected

void otPlatBleGapOnConnected(
  otInstance *aInstance,
  uint16_t aConnectionId
)

BLE ड्राइवर इस तरीके को कॉल करके, OpenThread को सूचना देता है कि BLE सेंट्रल डिवाइस कनेक्ट कर दिया गया है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
[in] aConnectionId
ओपन कनेक्शन का आइडेंटिफ़ायर.

otPlatBleGapOnDisconnected

void otPlatBleGapOnDisconnected(
  otInstance *aInstance,
  uint16_t aConnectionId
)

BLE ड्राइवर इस तरीके को कॉल करके, OpenThread को सूचना देता है कि BLE सेंट्रल डिवाइस डिसकनेक्ट कर दिया गया है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
[in] aConnectionId
क्लोज़्ड कनेक्शन का आइडेंटिफ़ायर.

otPlatBleGattMtuGet

otError otPlatBleGattMtuGet(
  otInstance *aInstance,
  uint16_t *aMtu
)

रीड में फ़िलहाल ATT_MTU की वैल्यू का इस्तेमाल किया जा रहा है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
[out] aMtu
मौजूदा ATT_MTU वैल्यू को आउटपुट करने के लिए पॉइंटर.
रिटर्न वैल्यू
OT_ERROR_NONE
ATT_MTU वैल्यू को aMtu में रखा गया है.
OT_ERROR_FAILED
BLE डिवाइस इसके ATT_MTU का पता नहीं लगा सकता.

otPlatBleGattOnMtuUpdate

void otPlatBleGattOnMtuUpdate(
  otInstance *aInstance,
  uint16_t aMtu
)

BLE ड्राइवर इस तरीके को कॉल करके, OpenThread को सूचना देता है कि ATT_MTU अपडेट कर दिया गया है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
[in] aMtu
अपडेट की गई ATT_MTU वैल्यू.

otPlatBleGattServerIndicate

otError otPlatBleGattServerIndicate(
  otInstance *aInstance,
  uint16_t aHandle,
  const otBleRadioPacket *aPacket
)

ATT हैंडल की वैल्यू का संकेत भेजता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
[in] aHandle
बताए जाने वाले एट्रिब्यूट का हैंडल.
[in] aPacket
पैकेट के पॉइंटर में बताई जाने वाली वैल्यू होती है.
रिटर्न वैल्यू
OT_ERROR_NONE
ATT हैंडल की वैल्यू का इंंडिकेशन भेज दिया गया है.
OT_ERROR_INVALID_STATE
BLE डिवाइस की स्थिति अमान्य है.
OT_ERROR_INVALID_ARGS
अमान्य हैंडल मान, डेटा या डेटा लंबाई दी गई है.
OT_ERROR_NO_BUFS
कोई उपलब्ध इंटरनल बफ़र नहीं मिला.

otPlatBleGattServerOnWriteRequest

void otPlatBleGattServerOnWriteRequest(
  otInstance *aInstance,
  uint16_t aHandle,
  const otBleRadioPacket *aPacket
)

BLE ड्राइवर इस तरीके को कॉल करके, OpenThread को सूचना देता है कि ATT लिखने के अनुरोध का पैकेट मिला है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस स्ट्रक्चर.
[in] aHandle
लिखे जाने वाले एट्रिब्यूट का हैंडल.
[in] aPacket
पैकेट के पॉइंटर में वह वैल्यू होती है जिसे एट्रिब्यूट में लिखा जाना है.

मैक्रो

OT_BLE_ADV_INTERVAL_DEFAULT

 OT_BLE_ADV_INTERVAL_DEFAULT 100

विज्ञापन पैकेट के लिए डिफ़ॉल्ट इंटरवल (मि॰से॰).

OT_BLE_ADV_INTERVAL_MAX

 OT_BLE_ADV_INTERVAL_MAX 0x4000

विज्ञापन पैकेट के लिए ज़्यादा से ज़्यादा तय अंतराल OT_BLE_ADV_INTERVAL_UNIT में (10.24s).

OT_BLE_ADV_INTERVAL_MIN

 OT_BLE_ADV_INTERVAL_MIN 0x0020

विज्ञापन पैकेट के लिए कम से कम इतना अंतराल, OT_BLE_ADV_INTERVAL_UNIT में (20 मि॰से॰) होना चाहिए.

OT_BLE_ADV_INTERVAL_UNIT

 OT_BLE_ADV_INTERVAL_UNIT OT_BLE_TIMESLOT_UNIT

इंटरवल पीरियड (0.625 मि॰से॰) कैलकुलेट करने के लिए इस्तेमाल की जाने वाली इकाई.

OT_BLE_ATT_MTU_MAX

 OT_BLE_ATT_MTU_MAX 67

ATT MTU का ज़्यादा से ज़्यादा साइज़ (23 से ज़्यादा होना चाहिए).

OT_BLE_DEFAULT_POWER

 OT_BLE_DEFAULT_POWER 0

बीएलई के लिए डिफ़ॉल्ट पावर वैल्यू.

OT_BLE_TIMESLOT_UNIT

 OT_BLE_TIMESLOT_UNIT 625

पीएचवाई लेयर पर टाइम स्लॉट की अवधि माइक्रोसेकंड (0.625 मि॰से॰).

रिसॉर्स

OpenThread API के रेफ़रंस के विषय, सोर्स कोड से मिलते हैं. यह सोर्स GitHub पर उपलब्ध है. ज़्यादा जानकारी या हमारे दस्तावेज़ में योगदान देने के लिए, संसाधन देखें.