BLE ืชื—ืช ืžื™ืงืจื•ืกืงื•ืค (ATTั‹ GATTั‹โ€ฆ)

BLE ืชื—ืช ืžื™ืงืจื•ืกืงื•ืค (ATTั‹ GATTั‹...)

BLE ืชื—ืช ืžื™ืงืจื•ืกืงื•ืค (ATTั‹ GATTั‹โ€ฆ)

ื—ืœืง 1, ืกืงื™ืจื”

ื“ื™ ื”ืจื‘ื” ื–ืžืŸ ื›ื‘ืจ ื—ืœืฃ ืžืื– ื™ืฆื ื”ืžืคืจื˜ ื”ืจืืฉื•ืŸ ืœ-Bluetooth 4.0. ื•ืœืžืจื•ืช ืฉื”ื ื•ืฉื BLE ืžืขื ื™ื™ืŸ ืžืื•ื“, ื”ื•ื ืขื“ื™ื™ืŸ ื“ื•ื—ื” ืžืคืชื—ื™ื ืจื‘ื™ื ื‘ื’ืœืœ ื”ืžื•ืจื›ื‘ื•ืช ืฉืœื•. ื‘ืžืืžืจื™ื ื”ืงื•ื“ืžื™ื ืฉืœื™, ื”ืกืชื›ืœืชื™ ื‘ืขื™ืงืจ ืขืœ ืฉื›ื‘ืช ื”ืงื™ืฉื•ืจ ื•ื”ืฉื›ื‘ื” ื”ืคื™ื–ื™ืช ื‘ืจืžื” ื”ื ืžื•ื›ื” ื‘ื™ื•ืชืจ. ื–ื” ืื™ืคืฉืจ ืœื ื• ืœื”ื™ืžื ืข ืžื”ืฆื•ืจืš ืœืคื ื•ืช ืœืžื•ืฉื’ื™ื ืžื•ืจื›ื‘ื™ื ื•ืžื‘ืœื‘ืœื™ื ื›ืžื• ืคืจื•ื˜ื•ืงื•ืœ ื”ืชื›ื•ื ื” (ATT) ื•ืคืจื•ืคื™ืœ ื”ืชื›ื•ื ื” ื”ื›ืœืœื™ืช (GATT). ืขื ื–ืืช, ืื™ืŸ ืœืืŸ ืœืœื›ืช, ื‘ืœื™ ืœื”ื‘ื™ืŸ ืื•ืชื, ืื™ ืืคืฉืจ ืœืคืชื— ืžื›ืฉื™ืจื™ื ืชื•ืืžื™ื. ื”ื™ื•ื ืื ื™ ืจื•ืฆื” ืœื—ืœื•ืง ืืช ื”ื™ื“ืข ื”ื–ื” ืื™ืชืš. ื‘ืžืืžืจ ืฉืœื™ ืืกืชืžืš ืขืœ ืกืคืจ ืœื™ืžื•ื“ ืœืžืชื—ื™ืœื™ื ืžื”ืืชืจ ื”ื ื•ืจื“ื™. ืื– ื‘ื•ืื• ื ืชื—ื™ืœ.

ืœืžื” ื”ื›ืœ ื›ืœ ื›ืš ืงืฉื”?

ืœื“ืขืชื™, ืžื™ื“ ื”ื™ื” ื‘ืจื•ืจ ืฉื ื™ื”ื•ืœ ืžื›ืฉื™ืจื™ื ื“ืจืš ื”ืกืžืืจื˜ืคื•ื ื™ื ื”ื•ื ื ื•ืฉื ืžืื•ื“ ืžื‘ื˜ื™ื— ื•ืžืชืžืฉืš. ืœื›ืŸ, ื”ื ื”ื—ืœื™ื˜ื• ืœื‘ื ื•ืช ืื•ืชื• ื‘ืื•ืคืŸ ืžื™ื™ื“ื™ ื•ืžืงืกื™ืžื•ื. ื›ื“ื™ ืฉื™ืฆืจื ื™ ื’ืื“ื’'ื˜ื™ื ืฉื•ื ื™ื ืœื ื™ืฆื™ื’ื• ืคืจื•ื˜ื•ืงื•ืœื™ื ืžืฉืœื”ื, ืืฉืจ ืื– ื™ื”ื™ื• ื‘ืœืชื™ ืชื•ืืžื™ื. ืžื›ืืŸ ื”ืงื•ืฉื™. ื›ื‘ืจ ื‘ืฉืœื‘ ื”ืจืืฉื•ืŸ ื ื™ืกื• ืœื“ื—ื•ืก ื›ืœ ืžื” ืฉืืคืฉืจ ืœืคืจื•ื˜ื•ืงื•ืœ BLE. ื•ื–ื” ืœื ืžืฉื ื” ืื ื–ื” ื™ื”ื™ื” ืฉื™ืžื•ืฉื™ ืžืื•ื—ืจ ื™ื•ืชืจ ืื• ืœื. ื‘ื ื•ืกืฃ, ื”ื ื ืชื ื• ืืคืฉืจื•ืช ืœื”ืจื—ื™ื‘ ืืช ืจืฉื™ืžืช ื”ืžื›ืฉื™ืจื™ื ืœืขืชื™ื“.

ื‘ื•ืื• ื ืกืชื›ืœ ืขืœ ื”ืชืžื•ื ื” ืฉื‘ื” ืžืฆื•ื™ืจ ื“ื™ืื’ืจืžืช ืคืจื•ื˜ื•ืงื•ืœ BLE. ื–ื” ืžื•ืจื›ื‘ ืžื›ืžื” ืฉื›ื‘ื•ืช. ื”ืฉื›ื‘ื” ื”ืคื™ื–ื™ืช ื”ื ืžื•ื›ื” ื‘ื™ื•ืชืจ (PHY) ืื—ืจืื™ืช ืขืœ ืขืจื•ืฅ ื”ืจื“ื™ื• ืฉืœ ื”ืžื›ืฉื™ืจ. ืฉื›ื‘ืช ืงื™ืฉื•ืจ (LL) ืžื›ื™ืœื” ืืช ื›ืœ ืจืฆืฃ ื”ื‘ืชื™ื ื‘ื”ื•ื“ืขื” ื”ืžืฉื•ื“ืจืช. ื‘ืžืืžืจื™ื ืงื•ื“ืžื™ื ืœืžื“ื ื• ื‘ื“ื™ื•ืง ืืช ื–ื”. Host Controller Interface (HCI) ื”ื•ื ืคืจื•ื˜ื•ืงื•ืœ ื”ื—ืœืคื” ื‘ื™ืŸ ืฉื›ื‘ื•ืช BLE ืื• ืฉื‘ื‘ื™ื ืื ื”ื‘ืงืจ ื•ื”ืžืืจื— ืžื™ื•ืฉืžื™ื ืขืœ ืฉื‘ื‘ื™ื ืฉื•ื ื™ื. ืคืจื•ื˜ื•ืงื•ืœ ื”ื‘ืงืจื” ื•ื”ื”ืกืชื’ืœื•ืช ื”ืœื•ื’ื™ (L2CAP) ืื—ืจืื™ ืขืœ ื™ืฆื™ืจืช ืžื ื•ืช, ืžืกื’ื•ืจ, ื‘ืงืจืช ืฉื’ื™ืื•ืช ื•ื”ืจื›ื‘ืช ืžื ื•ืช. ืคืจื•ื˜ื•ืงื•ืœ ืžื ื”ืœ ื”ืื‘ื˜ื—ื” (SMP) ืื—ืจืื™ ืขืœ ื”ืฆืคื ืช ืžื ื•ืช. ืคืจื•ืคื™ืœ ื”ื’ื™ืฉื” ื”ื›ืœืœื™ (GAP) ืื—ืจืื™ ืœื—ื™ืœื•ืคื™ ื ืชื•ื ื™ื ืจืืฉื•ื ื™ื™ื ื‘ื™ืŸ ืžื›ืฉื™ืจื™ื ื›ื“ื™ ืœืงื‘ื•ืข "ืžื™ ื–ื” ืžื™". ื–ื” ื›ื•ืœืœ ื’ื ืกืจื™ืงื” ื•ืคืจืกื•ื. ื‘ืžืืžืจ ื–ื” ืืชืžืงื“ ื‘ืฉื ื™ ื”ื—ืœืงื™ื ื”ื ื•ืชืจื™ื ืฉืœ ื”ืคืจื•ื˜ื•ืงื•ืœ - GATT ื•-ATT. GATT ื”ื•ื ืžื‘ื ื”-ืขืœ ืฉืœ ATT, ื•ืœื›ืŸ ื”ื ืฉืœื•ื‘ื™ื ื–ื” ื‘ื–ื”.

BLE ืชื—ืช ืžื™ืงืจื•ืกืงื•ืค (ATTั‹ GATTั‹...)

ื›ื“ื™ ืœืคืฉื˜ ืืช ื”ืกื™ืคื•ืจ, ื‘ืจืฆื•ื ื™ ืœืคื ื•ืช ืœืื ืœื•ื’ื™ื”. ืฉืžืขืชื™ ืืช ื–ื” ืื™ืคืฉื”ื• ื•ื”ื™ื™ืชื™ ืจื•ืฆื” ืœืชืžื•ืš ื‘ื–ื”. ื—ืฉื‘ื• ืขืœ ืžื›ืฉื™ืจ BLE ื›ืขืœ ื›ื•ื ื ื™ืช ืขื ืžืกืคืจ ืžื“ืคื™ื. ื›ืœ ืžื“ืฃ ื”ื•ื ื ื•ืฉื ื ืคืจื“. ืœื“ื•ื’ืžื”, ื™ืฉ ืœื ื• ืžื“ืคื™ื ืขื ืžื“ืข ื‘ื“ื™ื•ื ื™, ืžืชืžื˜ื™ืงื” ื•ืื ืฆื™ืงืœื•ืคื“ื™ื•ืช. ื‘ื›ืœ ืžื“ืฃ ื™ืฉ ืกืคืจื™ื ืขื ื ื•ืฉื ืžื•ื’ื“ืจ. ื•ืœื›ืžื” ืกืคืจื™ื ื™ืฉ ืืคื™ืœื• ืกื™ืžื ื™ื•ืช ื ื™ื™ืจ ืขื ื”ืขืจื•ืช. ื‘ื ื•ืกืฃ, ื™ืฉ ืœื ื• ืงื˜ืœื•ื’ ื ื™ื™ืจ ืงื˜ืŸ ืฉืœ ื›ืœ ื”ืกืคืจื™ื. ืื ืืชื” ื–ื•ื›ืจ, ืกืคืจื™ื•ืช ื‘ื™ืช ืกืคืจ ื”ืŸ ืงื•ืคืกื” ืฆืจื” ืขื ื›ืจื˜ื™ืกื™ ื ื™ื™ืจ. ืขื ืื ืœื•ื’ื™ื” ื–ื•, ื”ืืจื•ืŸ ื”ื•ื ื”ืคืจื•ืคื™ืœ ืฉืœ ื”ืžื›ืฉื™ืจ ืฉืœื ื•. ืžื“ืคื™ื ื”ื ืฉื™ืจื•ืชื™ื, ืกืคืจื™ื ื”ื ืžืืคื™ื™ื ื™ื, ื•ื”ืงื˜ืœื•ื’ ื”ื•ื ื˜ื‘ืœืช ืชื›ื•ื ื•ืช. ืกื™ืžื ื™ื•ืช ื‘ืกืคืจื™ื ื”ืŸ ืžืชืืจื•ืช, ืฉื’ื ืขืœื™ื”ืŸ ืื“ื‘ืจ ื‘ื”ืžืฉืš ื‘ื™ืชืจ ืคื™ืจื•ื˜.

ื›ืœ ืžื™ ืฉืคื™ืชื— ืžื›ืฉื™ืจื™ื ื™ื•ื“ืข ืฉืœืคืจื•ื™ืงื˜ื™ื ืจื‘ื™ื ื™ืฉ ืคื™ืกื•ืช ืงื•ื“ ื“ื•ืžื•ืช. ื”ืขื•ื‘ื“ื” ื”ื™ื ืฉืœืžื›ืฉื™ืจื™ื ืจื‘ื™ื ื™ืฉ ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื“ื•ืžื”. ืœื“ื•ื’ืžื”, ืื ืžื›ืฉื™ืจื™ื ืžื•ืคืขืœื™ื ืขืœ ื™ื“ื™ ืกื•ืœืœื•ืช, ืื–ื™ ื‘ืขื™ื™ืช ื”ื˜ืขื™ื ื” ื•ื”ื ื™ื˜ื•ืจ ืฉืœ ืจืžืชื ืชื”ื™ื” ื–ื”ื”. ืื•ืชื• ื“ื‘ืจ ืœื’ื‘ื™ ื—ื™ื™ืฉื ื™ื. ืœืžืขืฉื”, ื’ื™ืฉื” ืžื•ื ื—ื” ืขืฆืžื™ื ืœืชื›ื ื•ืช "ืžืกืคืง ืืช ื”ื™ื›ื•ืœืช ืœื™ืฆื•ืจ ืื•ื‘ื™ื™ืงื˜ื™ื ื”ืžืฉืœื‘ื™ื ืžืืคื™ื™ื ื™ื ื•ื”ืชื ื”ื’ื•ื™ื•ืช ืœื›ื“ื™ ืื™ื—ื•ื“ ืขืฆืžืื™ ืฉื ื™ืชืŸ ืœืขืฉื•ืช ื‘ื• ืฉื™ืžื•ืฉ ื—ื•ื–ืจ". ืœื“ืขืชื™, BLE ื ื™ืกื” ื’ื™ืฉื” ื“ื•ืžื”. ืคืจื•ืคื™ืœื™ื ืคื•ืชื—ื• ืขืœ ื™ื“ื™ ืงื‘ื•ืฆืช ื”ืื™ื ื˜ืจืกื™ื ื”ืžื™ื•ื—ื“ืช ืฉืœ Bluetooth (SIG). ืžื›ืฉื™ืจื™ื ืžื™ืฆืจื ื™ื ืฉื•ื ื™ื ื‘ืขืœื™ ืื•ืชื ืคืจื•ืคื™ืœื™ื ืฆืจื™ื›ื™ื ืœืขื‘ื•ื“ ืื—ื“ ืขื ื”ืฉื ื™ ืœืœื ืงื•ืฉื™. ืคืจื•ืคื™ืœื™ื, ื‘ืชื•ืจื, ืžื•ืจื›ื‘ื™ื ืžืฉื™ืจื•ืชื™ื ื•ืฉื™ืจื•ืชื™ื ืฉืœ ืžืืคื™ื™ื ื™ื, ื‘ืชื•ืกืคืช ืžืชืืจื™ื. ื‘ืื•ืคืŸ ื›ืœืœื™ ื–ื” ืขืฉื•ื™ ืœื”ื™ืจืื•ืช ื›ืš:

BLE ืชื—ืช ืžื™ืงืจื•ืกืงื•ืค (ATTั‹ GATTั‹...)

ืœื“ื•ื’ืžื”, ืฉืงื•ืœ ืืช ื“ื™ืื’ืจืžืช ื”ืคืจื•ืคื™ืœ ืฉืœ ืžื“ ื“ื•ืคืง (ืฆืžื™ื“ ื›ื•ืฉืจ). ื”ื•ื ืžื•ืจื›ื‘ ืžืฉื ื™ ืฉื™ืจื•ืชื™ื ื•ืžืกืคืจ ืžืืคื™ื™ื ื™ื. ืžืžื ื• ืžืชื‘ืจืจืช ืžื™ื“ ื”ื™ืจืจื›ื™ื™ืช ื”ืคืจื•ืคื™ืœื™ื. ืžืืคื™ื™ืŸ ื”ืžื—ืกื•ื ืžืืคืก ืืช ืกืคื™ืจืช ื”ื”ื•ืฆืื” ื”ื›ื•ืœืœืช ืฉืœ ื”ืงืœื•ืจื™ื•ืช ืœืืคืก.

1. ืฉื™ืจื•ืช ื”ื“ื•ืคืง ื›ื•ืœืœ ืฉืœื•ืฉื” ืžืืคื™ื™ื ื™ื (0x180D):
    ื) ืžืืคื™ื™ืŸ ื“ื•ืคืง ื—ื•ื‘ื” (0x2A37)
    ื‘) ืžืืคื™ื™ืŸ ืžื™ืงื•ื ื—ื™ื™ืฉืŸ ื’ื•ืฃ ืื•ืคืฆื™ื•ื ืœื™ (0x2A38)
    ื’) ืžืืคื™ื™ื ื™ื ืžื•ืชื ื™ื ืฉืœ ื ืงื•ื“ืช ื‘ืงืจืช ื”ื“ื•ืคืง (0x2A39)
2. ืฉื™ืจื•ืช ืชื—ื–ื•ืงืช ืกื•ืœืœื•ืช (0x180F):
    ื) ืžืืคื™ื™ืŸ ื—ื•ื‘ื” ืœืจืžืช ื˜ืขื™ื ืช ื”ืกื•ืœืœื” (0x2A19)

UUID

ื›ื“ื™ ืฉื ื•ื›ืœ ืœื’ืฉืช ื‘ืื•ืคืŸ ื™ื™ื—ื•ื“ื™ ืœืจื›ื™ื‘ื™ ืคืจื•ืคื™ืœ (ืฉื™ืจื•ืชื™ื, ืžืืคื™ื™ื ื™ื ื•ืžืชืืจื™ื), ืขืœื™ื ื• ืœืžืกืคืจ ืืช ื›ื•ืœื ืื™ื›ืฉื”ื•. ืœืฉื ื›ืš, ืžื•ืฆื’ ืžื•ืฉื’ ื›ืžื• ืžื–ื”ื” ื™ื™ื—ื•ื“ื™ ืื•ื ื™ื‘ืจืกืœื™ (UUID) ืื• ืžื–ื”ื” ื™ื™ื—ื•ื“ื™ ืื•ื ื™ื‘ืจืกืœื™. ื”-UUID ืžืฆื•ื™ืŸ ื‘ืกื•ื’ืจื™ื™ื ืฉืœ ื›ืœ ืฉื•ืจื”. ื•ื™ืฉ ื›ืืŸ ื™ื™ื—ื•ื“ ืื—ื“. ืขื‘ื•ืจ UUID, ื”ื—ืœื˜ื ื• ืœื”ืฉืชืžืฉ ื‘ืงื•ื“ ืฉืœ 16 ื•-128 ืกื™ื‘ื™ื•ืช ื‘ืื•ืจืš. ืœืžื” ืืชื” ืฉื•ืืœ? ื‘ืคืจื•ื˜ื•ืงื•ืœ BLE ื”ื›ืœ ืขื•ืกืง ื‘ื—ื™ืกื›ื•ืŸ ื‘ืื ืจื’ื™ื”. ืœื›ืŸ, ื”ืžื™ืžื“ ืฉืœ 16 ืกื™ื‘ื™ื•ืช ืกื‘ื™ืจ ืœืžื“ื™. ืœื ืกื‘ื™ืจ ืฉื™ื™ื•ื•ืฆืจื• ื™ื•ืชืจ ืž-65 ืืœืฃ ื‘ืขืชื™ื“ ื”ืงืจื•ื‘. ืฉื™ืจื•ืชื™ื ื•ืžืืคื™ื™ื ื™ื ื™ื™ื—ื•ื“ื™ื™ื. ื›ืจื’ืข, ื›ืœ ืžื” ืฉื”ื ื™ื›ืœื• ื›ื‘ืจ ื ืกืคืจ (ื–ื›ื•ืจ ืžืื™ืคื” ื–ื” ื‘ื - "ื’ื ื”ื•ื ืกืคืจ ืื•ืชืš" :-)) ืืœืžื ื˜ื™ื ืžืžื•ืกืคืจื™ื ืคืจื•ืคื™ืœื™ื, ืฉืœ ืฉื™ืจื•ืชื™ื, ืžืืคื™ื™ื ื™ื ะธ ืžืชืืจื™ื ืืชื” ื™ื›ื•ืœ ืœื”ืกืชื›ืœ ื‘ืงื™ืฉื•ืจื™ื.

ืขื ื–ืืช, ืื ื™ ื—ื•ืฉื‘ ืฉื›ื•ืœื ื–ื•ื›ืจื™ื ืืช ื”ืกื™ืคื•ืจ ืขื 4 ื‘ืชื™ื ืฉืœ ื›ืชื•ื‘ื•ืช IP ื‘ืื™ื ื˜ืจื ื˜. ื‘ื”ืชื—ืœื” ื—ืฉื‘ื ื• ืฉื–ื” ืžืกืคื™ืง, ืื‘ืœ ืขื›ืฉื™ื• ืื ื—ื ื• ืขื“ื™ื™ืŸ ืœื ื™ื›ื•ืœื™ื ืœืขื‘ื•ืจ ืœื›ืชื•ื‘ืช ืฉืœ 6 ื‘ืชื™ื. ื›ื“ื™ ืœื ืœื—ื–ื•ืจ ืขืœ ื”ื˜ืขื•ืช ื”ื–ื• ื•ืœืชืช ื“ืจื•ืจ ืœื™ื“ื™ื™ื ื”ืžืฉื•ื‘ื‘ื•ืช ืฉืœ ืขืฉื” ื–ืืช ื‘ืขืฆืžืš, SIG ื”ื—ืœื™ื˜ื” ืžื™ื“ ืœื”ืฆื™ื’ UUIDs ืฉืœ 128 ืกื™ื‘ื™ื•ืช. ื–ื” ื‘ืื•ืคืŸ ืื™ืฉื™ ืžื–ื›ื™ืจ ืœื™ ืืช ืจืฆื•ืขืช ื”-433 ืžื’ื”-ื”ืจืฅ ืœืœื ืจื™ืฉื™ื•ืŸ, ืฉื ื™ืชื ื” ืœื›ืœ ืžื™ื ื™ ืงื•ืœื™ื‘ื™ื ื™ื ืžืขืจื•ืฅ ื”ืจื“ื™ื•. ื‘ืžืงืจื” ืฉืœื ื•, ืžื–ื”ื” ืฉืœ 128 ืกื™ื‘ื™ื•ืช ืฉืœ ืฉื™ืจื•ืชื™ื ื•ืžืืคื™ื™ื ื™ื ื ื‘ื ื”. ืžืฉืžืขื•ืช ื”ื“ื‘ืจ ื”ื™ื ืฉืื ื•, ืขื‘ื•ืจ ื”ืฉื™ืจื•ืชื™ื ื•ื”ืžื›ืฉื™ืจื™ื ืฉืœื ื•, ื™ื›ื•ืœื™ื ืœื”ืฉืชืžืฉ ื›ืžืขื˜ ื‘ื›ืœ ืขืจืš ืฉืœ 128 ืกื™ื‘ื™ื•ืช. ืขื ื–ืืช, ื”ื”ืกืชื‘ืจื•ืช ืœื”ื’ื™ืข ืœืื•ืชื• UUID ืฉื•ืืคืช ืœืืคืก.

ืœืžืขืฉื”, ืœืจื›ื™ื‘ื™ UUID ืงืฆืจื™ื ืฉืœ 16 ืกื™ื‘ื™ื•ืช ื™ืฉ ืืช ื”ื”ืจื—ื‘ื” ืฉืœื”ื ืœืขืจืš ืฉืœ 128 ืกื™ื‘ื™ื•ืช. ื‘ืžืคืจื˜, ื”ืจื—ื‘ื” ื–ื• ื ืงืจืืช Bluetooth Base UUID ื•ื‘ืขืœืช ื”ืขืจืš 00000000-0000-1000-8000-00805F9B34FB. ืื, ืœืžืฉืœ, ืœืชื›ื•ื ืช 16 ืกื™ื‘ื™ื•ืช UUID ื™ืฉ ืืช ื”ืขืจืš 0x1234, ืื– ืœ-UUID ื”ืžืงื‘ื™ืœ ืฉืœ 128 ืกื™ื‘ื™ื•ืช ื™ื”ื™ื” ื”ืขืจืš 00001234-0000-1000-8000-00805F9B34FB. ื•ืืคื™ืœื• ื”ื ื•ืกื—ื” ื”ืžืชืื™ืžื” ื ื™ืชื ืช:

                                128_bit_value = 16_bit_value * 2^96 + Bluetooth_Base_UUID

ืื ื™ ืœื ื™ื•ื“ืข ืžืื™ืคื” ื”ื’ื™ืข ื”ืžืกืคืจ ื”ืงืกื•ื ื”ื–ื”. ืื ืžื™ืฉื”ื• ืžื”ืงื•ืจืื™ื ื™ื•ื“ืข, ืฉื™ื›ืชื•ื‘ ื‘ืชื’ื•ื‘ื•ืช (ืžืฉืชืžืฉ ืขื ื”ื›ื™ื ื•ื™ Sinopteek ื›ื‘ืจ ืขืฉื” ื–ืืช. ืจืื• ืืช ื”ื”ืขืจื•ืช). ื‘ืืฉืจ ืœื”ืžืฆืืช UUIDs ืฉืœ 128 ืกื™ื‘ื™ื•ืช, ื‘ืื•ืคืŸ ืขืงืจื•ื ื™ ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ืžื™ื•ื—ื“ ื’ึตื ึตืจึธื˜ื•ึนืจืžื™ ื™ืขืฉื” ืืช ื–ื” ื‘ืฉื‘ื™ืœืš.

ATTy GATTy...

ืœืžืขืฉื”, ืื– ื”ื›ื™ืฃ ืžืชื—ื™ืœ. ื”ืจืฉื• ืœื™ ืœื”ื–ื›ื™ืจ ืœื›ื ืฉ-ATT ืžื‘ื•ืกืก ืขืœ ื™ื—ืกื™ ืœืงื•ื—-ืฉืจืช. ื›ืขืช ืื ื• ืžืกืชื›ืœื™ื ืขืœ ื”ืชืงืŸ ื”ืฉืจืช. ื”ื•ื ืžื›ื™ืœ ืžื™ื“ืข ื›ื’ื•ืŸ ืขืจื›ื™ ื—ื™ื™ืฉื ื™ื, ืžืฆื‘ ืžืชื’ ื”ืื•ืจ, ื ืชื•ื ื™ ืžื™ืงื•ื ื•ื›ื•'. ื›ืขืช, ื›ืฉื›ืœ "ื”ืžืฉืชืชืคื™ื ื‘ืžืฆืขื“ ืฉืœื ื•" ืžืžื•ืกืคืจื™ื, ืขืœื™ื ื• ืื™ื›ืฉื”ื• ืœืžืงื ืื•ืชื ื‘ื–ื™ื›ืจื•ืŸ ื”ืžื›ืฉื™ืจ. ืœืฉื ื›ืš, ืฉืžื ื• ืื•ืชื ื‘ื˜ื‘ืœื” ืฉื ืงืจืืช ื˜ื‘ืœืช ืชื›ื•ื ื•ืช. ื–ื›ื•ืจ ื–ืืช ื”ื™ื˜ื‘. ื–ื” ื”ืœื‘ ืฉืœ BLE. ื–ื” ืžื” ืฉื ื‘ื—ืŸ ืขื•ื“. ื›ืขืช ื ืงืจื ืœื›ืœ ืฉื•ืจื” ืชื›ื•ื ื”. ืฉื•ืœื—ืŸ ื–ื” ืžืžื•ืงื ืขืžื•ืง ื‘ืขืจื™ืžื”, ื•ื›ื›ืœืœ, ืื™ืŸ ืœื ื• ื’ื™ืฉื” ื™ืฉื™ืจื” ืืœื™ื•. ืื ื—ื ื• ืžืืชื—ืœื™ื ืื•ืชื• ื•ื ื™ื’ืฉื™ื ืืœื™ื•, ืื‘ืœ ืžื” ืฉืงื•ืจื” ื‘ืคื ื™ื ืžื•ืกืชืจ ืžืื™ืชื ื• ืžืื—ื•ืจื™ ืฉื‘ืขื” ื—ื•ืชืžื•ืช.

ื”ื‘ื” ื ืชื‘ื•ื ืŸ ื‘ืชืžื•ื ื” ืžืชื•ืš ื”ืžืคืจื˜, ืืš ืœืคื ื™ ื›ืŸ, ื‘ืจืฆื•ื ื™ ืœื”ืคื ื•ืช ืžื™ื“ ืืช ืชืฉื•ืžืช ื”ืœื‘ ืœื‘ืœื‘ื•ืœ ื”ืชื›ื•ืฃ ื‘ืžื•ื ื—ื™ื, ื›ืœื•ืžืจ ื‘ืชื™ืื•ืจื™ื. ืชืคืงื™ื“ื• ืฉืœ ื”ืžืชืืจ ื”ื•ื ืœื”ืฉืœื™ื ืืช ืชื™ืื•ืจ ื”ืžืืคื™ื™ืŸ. ื›ืืฉืจ ื™ืฉ ืฆื•ืจืš ืœื”ืจื—ื™ื‘ ืืช ื”ื™ื›ื•ืœื•ืช ืฉืœื•, ืื– ื ืขืฉื” ืฉื™ืžื•ืฉ ื‘ืชื™ืื•ืจื™ื. ื”ื ื’ื ืชื›ื•ื ื•ืช, ื•ื‘ื“ื™ื•ืง ื›ืžื• ืฉื™ืจื•ืชื™ื ื•ืžืืคื™ื™ื ื™ื, ื”ื ืžืžื•ืงืžื™ื ื‘ื˜ื‘ืœืช ื”ืชื›ื•ื ื•ืช. ื ื‘ื—ืŸ ืื•ืชื ื‘ืคื™ืจื•ื˜ ื‘ื—ืœืง ื”ืฉื ื™ ืฉืœ ื”ืžืืžืจ. ืขื ื–ืืช, ืœืคืขืžื™ื ืžืชืืจื™ื ืžืชื™ื™ื—ืกื™ื ืœืžืกืคืจ ื”ืฉื•ืจื” ื‘ื˜ื‘ืœืช ื”ืชื›ื•ื ื•ืช. ื™ืฉ ืœื–ื›ื•ืจ ื–ืืช. ื›ื“ื™ ืœืžื ื•ืข ื‘ืœื‘ื•ืœ, ื ืฉืชืžืฉ ื‘ืžื•ื ื— "ืžืฆื‘ื™ืข ืขืœ ืžืืคื™ื™ื ื™ื" ืœืžื˜ืจื•ืช ืืœื•.
BLE ืชื—ืช ืžื™ืงืจื•ืกืงื•ืค (ATTั‹ GATTั‹...)

ืื– ืชื›ื•ื ื” ื”ื™ื ืขืจืš ื‘ื“ื™ื“ ืฉื™ืฉ ืœื• ืืช ื”ืžืืคื™ื™ื ื™ื ื”ื‘ืื™ื ื”ืžืฉื•ื™ื›ื™ื ืืœื™ื•:
1. ื™ื“ื™ืช ืชื›ื•ื ื” ื”ื™ื ืื™ื ื“ืงืก ื”ื˜ื‘ืœื” ื”ืžืชืื™ื ืœืชื›ื•ื ื”
2. Attribute Type ื”ื•ื UUID ืฉืžืชืืจ ืืช ื”ืกื•ื’ ืฉืœื•
3. ืขืจืš ืชื›ื•ื ื” ื”ื•ื ื”ื ืชื•ื ื™ื ืฉื ื•ืกืคื• ืขืœ ื™ื“ื™ ืžืฆื‘ื™ืข ื”ืชื›ื•ื ื”
4. ื”ืจืฉืื•ืช ืชื›ื•ื ื” ื”ืŸ ื—ืœืง ืฉืœ ืชื›ื•ื ื”, ื”ืจืฉืื•ืช ืฉืœื ื ื™ืชืŸ     ืœื”ืงืจื™ื ืื• ืœื›ืชื•ื‘ ื‘ืืžืฆืขื•ืช ืคืจื•ื˜ื•ืงื•ืœ ื”ืชื›ื•ื ื”

ืื™ืš ืœื”ื‘ื™ืŸ ืืช ื›ืœ ื–ื”? ืžืฆื‘ื™ืข ื”ืชื›ื•ื ื” ื”ื•ื, ื™ื—ืกื™ืช, ื”ืžืกืคืจ ืฉืœื• ื‘ื˜ื‘ืœื” ืฉืœื ื•.
ื–ื” ืžืืคืฉืจ ืœืœืงื•ื— ืœื”ืชื™ื™ื—ืก ืœืชื›ื•ื ื” ื‘ื‘ืงืฉื•ืช ืงืจื™ืื” ืื• ื›ืชื™ื‘ื”. ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืžืกืคืจ ืืช ื”ืฉื•ืจื•ืช (ื”ืชื›ื•ื ื•ืช) ืฉืœื ื• ืž-0x0001 ืœ-0xFFFF. ื‘ืฉื™ื•ืš ืฉืœื ื• ืœืืจื•ืŸ ื”ืกืคืจื™ื, ื–ื” ืžืกืคืจ ื”ื›ืจื˜ื™ืก ื‘ืงื˜ืœื•ื’ ื”ื ื™ื™ืจ. ื‘ืื•ืคืŸ ื“ื•ืžื”, ื›ืžื• ื‘ืงื˜ืœื•ื’ ื”ืกืคืจื™ื™ื”, ื”ื›ืจื˜ื™ืกื™ื ืžืกื•ื“ืจื™ื ื‘ืกื“ืจ ื’ื“ืœ ื•ื”ื•ืœืš ืฉืœ ืžืกืคืจื. ื”ืžืกืคืจ ืฉืœ ื›ืœ ืฉื•ืจื” ืฉืœืื—ืจ ืžื›ืŸ ื—ื™ื™ื‘ ืœื”ื™ื•ืช ื’ื“ื•ืœ ืžื”ืงื•ื“ืžืช. ืžืžืฉ ื›ืžื• ื‘ืกืคืจื™ื™ื”, ืœืคืขืžื™ื ื—ืœืง ืžื”ื›ืจื˜ื™ืกื™ื ื”ื•ืœื›ื™ื ืœืื™ื‘ื•ื“, ื›ืš ืฉืืฆืœื ื• ื™ืชื›ื ื• ืคืขืจื™ื ื‘ืžืกืคื•ืจ ื”ืฉื•ืจื•ืช. ื–ื” ืžื•ืชืจ. ื”ืขื™ืงืจ ืฉื”ื ื”ื•ืœื›ื™ื ื‘ื”ื“ืจื’ื”.

ืกื•ื’ ื”ืชื›ื•ื ื” ืงื•ื‘ืข ืžื” ื”ืชื›ื•ื ื” ืžื™ื™ืฆื’ืช. ื‘ืื ืœื•ื’ื™ื” ืœืฉืคืช C,
ื”ื™ื›ืŸ ืฉื™ืฉ ืžืฉืชื ื™ื ื‘ื•ืœื™ืื ื™ื™ื, ืžืกืคืจื™ื™ื ื•ืžื—ืจื•ื–ื•ืช, ืื– ื–ื” ื›ืืŸ. ืœืคื™ ืกื•ื’ ื”ืชื›ื•ื ื” ืื ื• ืžื–ื”ื™ื
ื‘ืžื” ืื ื• ืžืชืžื•ื“ื“ื™ื ื•ื›ื™ืฆื“ ื ื•ื›ืœ ืœื”ืžืฉื™ืš ืœืขื‘ื•ื“ ืขื ื”ืชื›ื•ื ื” ื”ื–ื•. ืœื”ืœืŸ ื ื‘ื—ืŸ ื›ืžื” ืกื•ื’ื™ื ืกืคืฆื™ืคื™ื™ื ืฉืœ ืชื›ื•ื ื•ืช. ืœื“ื•ื’ืžื”, "ื”ืฆื”ืจืช ืฉื™ืจื•ืช" (0x2800), "ื”ืฆื”ืจื” ืื•ืคื™ื™ื ื™ืช" (0x2803), "ื”ืฆื”ืจืช ืžืชืืจ" (0x2902).

ื”ืขืจืš ืฉืœ ืชื›ื•ื ื” ื”ื•ื ื”ืžืฉืžืขื•ืช ื”ืืžื™ืชื™ืช ืฉืœื”, ืกืœื™ื—ื” ืขืœ ื”ื˜ืื•ื˜ื•ืœื•ื’ื™ื”. ืื ืกื•ื’ ื”ืชื›ื•ื ื” ื”ื•ื ืžื—ืจื•ื–ืช, ืื– ืขืจืš ื”ืชื›ื•ื ื” ื™ื›ื•ืœ ืœื”ื™ื•ืช, ืœืžืฉืœ, ื”ืกืœื•ื’ืŸ "Hello World !!!". ืื ืกื•ื’ ื”ืชื›ื•ื ื” ื”ื•ื "ื”ืฆื”ืจืช ืฉื™ืจื•ืช", ืื– ื”ืขืจืš ืฉืœื• ื”ื•ื ื”ืฉื™ืจื•ืช ืขืฆืžื•. ื•ืœืคืขืžื™ื ื–ื”ื• ืžื™ื“ืข ืขืœ ื”ื™ื›ืŸ ืœืžืฆื•ื ืชื›ื•ื ื•ืช ืื—ืจื•ืช ื•ื”ืžืืคื™ื™ื ื™ื ืฉืœื”ืŸ.

ื”ืจืฉืื•ืช ืชื›ื•ื ื” ืžืืคืฉืจื•ืช ืœืฉืจืช ืœื”ื‘ื™ืŸ ืื ืžื•ืชืจืช ื’ื™ืฉืช ืงืจื™ืื” ืื• ื›ืชื™ื‘ื”.
ืฉื™ืžื• ืœื‘ ืฉื”ื”ืจืฉืื•ืช ื”ืœืœื• ื—ืœื•ืช ืจืง ืขืœ ืขืจืš ื”ืชื›ื•ื ื”, ื•ืœื ืขืœ ื”ืžืฆื‘ื™ืข, ื”ืกื•ื’ ืื• ืฉื“ื” ื”ื”ืจืฉืื” ืขืฆืžื•. ื”ึธื”ึตืŸ. ืื ื”ืงืœื˜ืช ืชื›ื•ื ื•ืช ืžื•ืชืจืช, ื ื•ื›ืœ ืœืฉื ื•ืช, ืœืžืฉืœ, ืืช ื”ืฉื•ืจื” "Hello World !!!" ืœืฉื•ืจื” "ื‘ื•ืงืจ ื˜ื•ื‘". ืื‘ืœ ืื ื—ื ื• ืœื ื™ื›ื•ืœื™ื ืœืืกื•ืจ ื›ืชื™ื‘ืช ืฉื•ืจื” ื—ื“ืฉื” ืื• ืœืฉื ื•ืช ืืช ืกื•ื’ ื”ืชื›ื•ื ื” ื•ืœืฆื™ื™ืŸ ืืช ื”ืฉื•ืจื” ื›"ื”ืฆื”ืจืช ืฉื™ืจื•ืช". ื›ืืฉืจ ืœืงื•ื— ื™ื•ืฆืจ ืงืฉืจ ืขื ืฉืจืช, ื”ืœืงื•ื— ืžื‘ืงืฉ ืืช ื”ืชื›ื•ื ื•ืช ืฉืœื•. ื–ื” ืžืืคืฉืจ ืœืœืงื•ื— ืœื“ืขืช ืžื” ื”ืฉืจืช ื™ื›ื•ืœ ืœืกืคืง. ืืžื ื ืื™ืŸ ืฆื•ืจืš ืœืงืจื•ื ื•ืœื›ืชื•ื‘ ืืช ื”ืขืจื›ื™ื.

ืื™ืš ื–ื” ื ืจืื”

ื”ืจืขื™ื•ืŸ ืฉืœ GATT ื”ื•ื ืœืงื‘ืฅ ืชื›ื•ื ื•ืช ื‘ื˜ื‘ืœืช ืชื›ื•ื ื•ืช ื™ื—ื“ ื‘ืกื“ืจ ืกืคืฆื™ืคื™ ื•ื”ื’ื™ื•ื ื™. ื‘ื•ืื• ื ืกืชื›ืœ ืžืงืจื•ื‘ ืขืœ ืคืจื•ืคื™ืœ ื”ื“ื•ืคืง ืœืžื˜ื”. ื”ืขืžื•ื“ื” ื”ืฉืžืืœื™ืช ื‘ื™ื•ืชืจ ื‘ื˜ื‘ืœื” ื–ื• ื”ื™ื ืื•ืคืฆื™ื•ื ืœื™ืช. ื–ื” ืคืฉื•ื˜ ืžืชืืจ ืœื ื• ืžื”ื™ ื”ืฉื•ืจื” (ื”ืชื›ื•ื ื”) ื”ื–ื•. ื›ืœ ืฉืืจ ื”ื˜ื•ืจื™ื ื›ื‘ืจ ืžื•ื›ืจื™ื ืœื ื•.

BLE ืชื—ืช ืžื™ืงืจื•ืกืงื•ืค (ATTั‹ GATTั‹...)

ื‘ืจืืฉ ื›ืœ ืงื‘ื•ืฆื” ื™ืฉ ืœื ื• ืชืžื™ื“ ืชื›ื•ื ื” ืฉืœ ื”ืฆื”ืจืช ืฉื™ืจื•ืช. ื”ืกื•ื’ ืฉืœื• ื”ื•ื ืชืžื™ื“ 0x2800, ื•ื”ืžืฆื‘ื™ืข ืชืœื•ื™ ื‘ื›ืžื” ืชื›ื•ื ื•ืช ื›ื‘ืจ ืงื™ื™ืžื•ืช ื‘ื˜ื‘ืœื”. ื”ื”ืจืฉืื•ืช ืฉืœื” ื”ืŸ ืชืžื™ื“ ืœืงืจื™ืื” ื‘ืœื‘ื“, ืœืœื ื›ืœ ืื™ืžื•ืช ืื• ื”ืจืฉืื”. ืขืœ ืžื•ืฉื’ื™ื ืืœื” ื ื“ื‘ืจ ืžืขื˜ ืžืื•ื—ืจ ื™ื•ืชืจ. ื”ืขืจืš ื”ื•ื UUID ืื—ืจ ืฉืžื–ื”ื” ืžื”ื• ื”ืฉื™ืจื•ืช. ื‘ื˜ื‘ืœื”, ื”ืขืจืš ื”ื•ื 0x180D, ื”ืžื•ื’ื“ืจ ืขืœ ื™ื“ื™ Bluetooth SIG ื›ืฉื™ืจื•ืช ื“ื•ืคืง.

ื‘ืขืงื‘ื•ืช ื”ื”ื›ืจื–ื” ืขืœ ื”ืฉื™ืจื•ืช, ืžื’ื™ืขื” ื”ื”ื›ืจื–ื” ืขืœ ื”ืžืืคื™ื™ืŸ. ื–ื” ื“ื•ืžื” ื‘ืฆื•ืจืชื• ืœื”ืฆื”ืจืช ืฉื™ืจื•ืช. ื”-UUID ืฉืœื• ื”ื•ื ืชืžื™ื“ 0x2803, ื•ื”ื”ืจืฉืื•ืช ืฉืœื• ืชืžื™ื“ ืœืงืจื™ืื” ื‘ืœื‘ื“ ืœืœื ื›ืœ ืื™ืžื•ืช ืื• ื”ืจืฉืื”. ื”ื‘ื” ื ืกืชื›ืœ ืขืœ ื”ืฉื“ื” ืขืจืš ืชื›ื•ื ื”, ื”ื›ื•ืœืœ ื›ืžื” ื ืชื•ื ื™ื. ื”ื•ื ืชืžื™ื“ ืžื›ื™ืœ ืžืฆื‘ื™ืข, UUID ื•ืงื‘ื•ืฆืช ืžืืคื™ื™ื ื™ื. ืฉืœื•ืฉืช ื”ืืœืžื ื˜ื™ื ื”ืœืœื• ืžืชืืจื™ื ืืช ื”ื”ื›ืจื–ื” ืฉืœืื—ืจ ืžื›ืŸ ืขืœ ื”ืขืจืš ื”ืื•ืคื™ื™ื ื™. ื”ืžืฆื‘ื™ืข ืžืฆื™ื™ืŸ ื‘ืื•ืคืŸ ื˜ื‘ืขื™ ืืช ื”ืžื™ืงื•ื ืฉืœ ื”ืฆื”ืจืช ื”ืขืจืš ื”ืžืืคื™ื™ืŸ ื‘ื˜ื‘ืœืช ื”ืชื›ื•ื ื•ืช. ื”-UUID ืžืชืืจ ืื™ื–ื” ืกื•ื’ ืฉืœ ืžื™ื“ืข ืื• ืขืจืš ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืฆืคื•ืช. ืœื“ื•ื’ืžื”, ืขืจืš ื”ื˜ืžืคืจื˜ื•ืจื”, ืžืฆื‘ ืžืชื’ ื”ืื•ืจ ืื• ืขืจืš ืฉืจื™ืจื•ืชื™ ืื—ืจ. ื•ืœื‘ืกื•ืฃ ืžืืคื™ื™ื ื™ื, ื”ืžืชืืจื™ื ื›ื™ืฆื“ ื ื™ืชืŸ ืœื™ืฆื•ืจ ืื™ื ื˜ืจืืงืฆื™ื” ืขื ื”ืขืจืš ื”ืื•ืคื™ื™ื ื™.

ืขื•ื“ ืžื—ื›ื” ืœื ื• ื›ืืŸ. ื–ื” ืžืฉื•ื™ืš ืœื”ืจืฉืื•ืช ืชื›ื•ื ื•ืช ื•ืžืืคื™ื™ื ื™ื ืื•ืคื™ื™ื ื™ื™ื. ื‘ื•ืื• ื ืกืชื›ืœ ืขืœ ื”ืชืžื•ื ื” ืฉืœ ืžืืคื™ื™ื ื™ ืฉื“ื” ื”ืกื™ื‘ื™ื•ืช ืžื”ืžืคืจื˜.

BLE ืชื—ืช ืžื™ืงืจื•ืกืงื•ืค (ATTั‹ GATTั‹...)

ื›ืคื™ ืฉื ื™ืชืŸ ืœืจืื•ืช, ื™ืฉ ื›ืืŸ ื’ื ืฉื“ื•ืช ื”ืžืกืคืงื™ื ื™ื›ื•ืœื•ืช ืงืจื™ืื” ื•ื›ืชื™ื‘ื”. ื™ื™ืชื›ืŸ ืฉืืชื” ืชื•ื”ื” ืžื“ื•ืข ื™ืฉ ืœื ื• ื”ืจืฉืื•ืช ืงืจื™ืื”/ื›ืชื™ื‘ื” ืขื‘ื•ืจ ืชื›ื•ื ื” ื•ื ื›ืก
ืœืงืจื•ื/ืœื›ืชื•ื‘ ืขื‘ื•ืจ ืขืจืš ืžืืคื™ื™ืŸ? ื”ืื ื”ื ืœื ืฆืจื™ื›ื™ื ืœื”ื™ื•ืช ืชืžื™ื“ ืื•ืชื• ื”ื“ื‘ืจ? ื”ืขื•ื‘ื“ื” ื”ื™ื ืฉื”ืžืืคื™ื™ื ื™ื ืขื‘ื•ืจ ื”ืขืจืš ื”ืžืืคื™ื™ืŸ ื”ื ืœืžืขืฉื” ืจืง ื”ืžืœืฆื•ืช ืขื‘ื•ืจ ื”ืœืงื•ื— ื”ืžืฉืžืฉ ื‘ืฉื›ื‘ื•ืช GATT ื•ืฉื›ื‘ื•ืช ื™ื™ืฉื•ื. ืืœื• ื”ื ืจืง ืจืžื–ื™ื ืœื’ื‘ื™ ืžื” ืฉื”ืœืงื•ื— ืขืฉื•ื™ ืœืฆืคื•ืช ืžืชื›ื•ื ืช ื”ื”ืฆื”ืจื” ื”ืื•ืคื™ื™ื ื™ืช. ื‘ื•ืื• ื ืกืชื›ืœ ืขืœ ื–ื” ื‘ื™ืชืจ ืคื™ืจื•ื˜. ืื™ืœื• ืกื•ื’ื™ ื”ืจืฉืื•ืช ื™ืฉ ืœืชื›ื•ื ื”?

1. ื”ืจืฉืื•ืช ื’ื™ืฉื”:
     - ืงืจื™ืื”
     - ืชืงืœื™ื˜
     - ืชืงืจื ื•ืชื›ืชื•ื‘
2. ื”ืจืฉืืช ืื™ืžื•ืช:
     - ื ื“ืจืฉ ืื™ืžื•ืช
     - ืื™ืŸ ืฆื•ืจืš ื‘ืื™ืžื•ืช
3. ื”ืจืฉืืช ื”ืจืฉืื”:
     - ื ื“ืจืฉ ืื™ืฉื•ืจ
     - ืื™ืŸ ืฆื•ืจืš ื‘ืื™ืฉื•ืจ

ื”ื”ื‘ื“ืœ ื”ืขื™ืงืจื™ ื‘ื™ืŸ ืจื–ื•ืœื•ืฆื™ื™ืช ืชื›ื•ื ื•ืช ื•ืžืืคื™ื™ื ื™ื ืื•ืคื™ื™ื ื™ื™ื ื”ื•ื ืฉื”ืจืืฉื•ื ื™ื ื—ืœื™ื ืขืœ ืฉืจืชื™ื, ื•ื”ืื—ืจื•ื ื™ื ืขืœ ืœืงื•ื—ื•ืช. ื™ื™ืชื›ืŸ ืฉื”ืฉืจืช ื™ื•ืจืฉื” ืœืงืจื•ื ืืช ื”ืขืจืš ื”ืžืืคื™ื™ืŸ, ืืš ืขืฉื•ื™ ืœื“ืจื•ืฉ ืื™ืžื•ืช ืื• ื”ืจืฉืื”. ืœื›ืŸ, ื›ืืฉืจ ื”ืœืงื•ื— ื™ื‘ืงืฉ ืืช ื”ืžืืคื™ื™ื ื™ื ืฉืœ ื”ืžืืคื™ื™ืŸ, ื ืงื‘ืœ ื›ื™ ื”ืงืจื™ืื” ืžื•ืชืจืช. ืื‘ืœ ื›ืฉืื ื—ื ื• ืžื ืกื™ื ืœืงืจื•ื, ืื ื—ื ื• ืžืงื‘ืœื™ื ืฉื’ื™ืื”. ืœื›ืŸ, ืื ื• ื™ื›ื•ืœื™ื ืœื“ื‘ืจ ื‘ื‘ื˜ื—ื” ืขืœ ื”ืขื“ื™ืคื•ืช ืฉืœ ื”ืจืฉืื•ืช ืขืœ ืคื ื™ ื ื›ืกื™ื. ื‘ืฆื“ ื”ืœืงื•ื—, ืื™ื ื ื• ื™ื›ื•ืœื™ื ืœืงื‘ืœ ื™ื“ืข ืœื’ื‘ื™ ื”ื”ืจืฉืื•ืช ืฉื™ืฉ ืœืชื›ื•ื ื”.

ืžืชืืจ

ื ื—ื–ื•ืจ ืœืฉื•ืœื—ืŸ ืฉืœื ื•. ืœืื—ืจ ื”ืฆื”ืจืช ื”ืขืจืš ืฉืœ ืžืืคื™ื™ืŸ, ื”ืฆื”ืจื•ืช ื”ืชื›ื•ื ื•ืช ื”ื‘ืื•ืช ืืคืฉืจื™ื•ืช:
1. ื”ืฆื”ืจืช ืžืืคื™ื™ื ื™ื ื—ื“ืฉื” (ืฉื™ืจื•ืช ื™ื›ื•ืœ ืœื”ื™ื•ืช ื‘ืขืœ ืžืืคื™ื™ื ื™ื ืจื‘ื™ื)
2. ื”ืฆื”ืจืช ืฉื™ืจื•ืช ื—ื“ืฉื” (ื™ื™ืชื›ืŸ ืฉื™ืฉ ื”ืจื‘ื” ืžื”ืŸ ื‘ื˜ื‘ืœื”)
3. ื”ื›ืจื–ื” ืขืœ ื™ื“ื™ืช

ื‘ืžืงืจื” ืฉืœ ืžืืคื™ื™ืŸ ืžื“ื™ื“ืช ื”ื“ื•ืคืง, ื‘ื˜ื‘ืœื” ืฉืœื ื•, ื”ื”ืฆื”ืจื” ืขืœ ื”ืขืจืš ื”ืžืืคื™ื™ืŸ ืžืœื•ื•ื” ื‘ื”ืฆื”ืจื” ืฉืœ ื”ืžืชืืจ. ืžืชืืจ ื”ื•ื ืชื›ื•ื ื” ืขื ืžื™ื“ืข ื ื•ืกืฃ ืขืœ ืžืืคื™ื™ืŸ. ื™ืฉื ื ืžืกืคืจ ืกื•ื’ื™ื ืฉืœ ืžืชืืจื™ื. ื ื“ื‘ืจ ืขืœื™ื”ื ื‘ืคื™ืจื•ื˜ ื‘ื—ืœืง ื”ืฉื ื™ ืฉืœ ืžืืžืจ ื–ื”. ืœืขืช ืขืชื”, ื ื™ื’ืข ืจืง ื‘-Client Characteristic Configurator Descriptor (CCCD). ื™ืฉ ืœื• UUID ืฉื•ื•ื” ืœ-0x2902. ื‘ืืžืฆืขื•ืช ืžืชืืจ ื–ื”, ืœืœืงื•ื— ื™ืฉ ืืช ื”ื™ื›ื•ืœืช ืœืืคืฉืจ ื—ื™ื•ื•ื™ ืื• ื”ืชืจืื” ื‘ืฉืจืช. ื”ื”ื‘ื“ืœ ื‘ื™ื ื™ื”ื ืงื˜ืŸ, ืื‘ืœ ืขื“ื™ื™ืŸ ืงื™ื™ื. ื”ื•ื“ืขื” ืื™ื ื” ืžื—ื™ื™ื‘ืช ืื™ืฉื•ืจ ืงื‘ืœื” ืžื”ืœืงื•ื—. ืื™ื ื“ื™ืงืฆื™ื” ืžื—ื™ื™ื‘ืช ื–ืืช, ืœืžืจื•ืช ืฉื”ื™ื ืžืชืจื—ืฉืช ื‘ืจืžืช GATT, ืœื ืžื’ื™ืขื” ืœืจืžืช ื”ื™ื™ืฉื•ื. ืœืžื” ื›ืŸ, ืืชื ืฉื•ืืœื™ื? ืื‘ื•ื™, ืื ื™ ืœื ื™ื•ื“ืข ืืช ื–ื”. ื”ืจืฉื• ืœื™ ืจืง ืœื•ืžืจ ืฉืžื•ืžื—ื™ื ื ื•ืจื“ื™ื™ื ืžืžืœื™ืฆื™ื ืœื”ืฉืชืžืฉ ื‘ื”ื•ื“ืขื•ืช. ื™ืชืจื” ืžื›ืš, ื‘ื“ื™ืงืช ืชืงื™ื ื•ืช ื”ื—ื‘ื™ืœื” (ื‘ืืžืฆืขื•ืช CRC) ืžืชืจื—ืฉืช ื‘ืฉื ื™ ื”ืžืงืจื™ื.

ืžืกืงื ื”

ื‘ืกื•ืฃ ื”ืžืืžืจ ืื ื™ ืจื•ืฆื” ืœื•ืžืจ ื–ืืช. ื”ื˜ื‘ืœื” ื”ืื—ืจื•ื ื” ืงืฆืช ืžื‘ืœื‘ืœืช. ืขื ื–ืืช, ื‘ื—ืจืชื™ ื‘ื• ื›ื™ ื”ื•ื ื ื›ื ืข ัั‚ะฐั‚ัŒะต, ืฉืขืœื™ื• ืื ื™ ืกื•ืžืš. ื‘ื—ืœืง ื”ืฉื ื™ ืฉืœ ื”ืžืืžืจ ืฉืœื™, ืื ื™ ืžืชื›ื•ื•ืŸ ืœื”ืขืžื™ืง ื‘ืžืคืจื˜ ื”-BlueTooth 4.0. ื“ื™ืื’ืจืžื•ืช ื•ืฆื™ื•ืจื™ื ื ื›ื•ื ื™ื ื™ื•ืชืจ ืžื—ื›ื™ื ืœื ื• ืฉื. ื‘ื—ืœืง ื”ืฉืœื™ืฉื™, ื‘ืจืฆื•ื ื™ ืœื ืชื— ืืช ื”ื™ื•ืžืŸ ืฉื”ื•ืฉื’ ื‘ืืžืฆืขื•ืช ืชื•ื›ื ื™ืช Wireshark ืžืื—ื“ ื”ื’ืื“ื’'ื˜ื™ื ื•ืœืจืื•ืช "ื—ื™" ืืช ื›ืœ ื”ืชื™ืื•ืจื™ื” ืฉืื ื• ืœื•ืžื“ื™ื.

ืขื•ื‘ื“ ืงื‘ื•ืฆืช ื”ื—ื‘ืจื•ืช "ืงื™ืกืจ ืœื•ื•ื™ื™ืŸ"
ืคืฆ'ืจืกืงื™ืš ื•ืœื“ื™ืžื™ืจ

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”