Bluetooth اور BLE: یہ کیا ہے، Classic اور Low Energy میں فرق اور یہ کیسے کام کرتا ہے

مصنف: IT Sectr اشاعت: 2026-03-24 مطالعے کا وقت: 12 منٹ

Bluetooth اور Bluetooth Low Energy مختصر فاصلے پر ڈیٹا کی ترسیل کے لیے وائرلیس کمیونیکیشن کے معیارات ہیں۔ Bluetooth Classic (BR/EDR) آڈیو اور فائلوں کے لیے ایک مستحکم اسٹریمنگ چینل فراہم کرتا ہے، جبکہ BLE سینسرز اور پیری فیرلز کے ساتھ توانائی کی بچت کے کام کے لیے بہتر بنایا گیا ہے۔ Bluetooth SIG، 2025 کے مطابق، سالانہ 5 بلین سے زیادہ BLE معاون ڈیوائسز بھیجی جاتی ہیں — یہ معیار IoT، پہننے والی الیکٹرانکس اور موبائل لوازمات کی بنیاد بن گیا ہے۔

اہم نکات

  • Bluetooth Classic — 3 Mbit/s تک کی رفتار اور 10–30 mA بجلی کی کھپت کے ساتھ مسلسل آڈیو اور ڈیٹا کی ترسیل کے لیے BR/EDR معیار
  • Bluetooth Low Energy — 5–15 mA کی چوٹی کرنٹ اور کئی سالوں تک کی بیٹری لائف کے ساتھ چھوٹے ڈیٹا والیوم کی وقفے وقفے سے ترسیل کے لیے پروٹوکول
  • GATT پروفائل — ایک متحد کلائنٹ-سرور ماڈل جو یہ بتاتا ہے کہ موبائل ایپ کسی پیری فیرل ڈیوائس کی خصوصیات کو کیسے پڑھتی ہے
  • Advertising — ایک طریقہ کار جس میں BLE ڈیوائس مرکزی ڈیوائس (اسمارٹ فون) کے ذریعے دریافت کرنے کے لیے وقتاً فوقتاً بیکن پیکٹ بھیجتی ہے
  • iOS اور Android — پلیٹ فارم مختلف APIs (Core Bluetooth اور android.bluetooth) استعمال کرتے ہیں، لیکن دونوں GATT کو سپورٹ کرتے ہیں — کوڈ کم سے کم تبدیلیوں کے ساتھ پورٹیبل ہے

Bluetooth اور BLE کیا ہیں؟

Bluetooth ایک وائرلیس پرسنل ایریا نیٹ ورک (WPAN) معیار ہے جو 2.4 GHz ISM بینڈ میں کام کرتا ہے، 100 میٹر تک کے فاصلے پر ڈیوائس کمیونیکیشن کے لیے ڈیزائن کیا گیا ہے۔ IEEE 802.15.1 تصریح فزیکل اور MAC پرتوں کی وضاحت کرتی ہے، جبکہ Bluetooth SIG اسٹیک مخصوص منظرناموں کے لیے اعلیٰ سطحی پروفائلز کی وضاحت کرتا ہے: آڈیو ہیڈسیٹ (HSP)، فائل ٹرانسفر (OPP)، کی بورڈ ان پٹ (HID)۔

یہ معیار ورژن 4.0 (2010) سے دو شاخوں میں تقسیم ہو گیا: Bluetooth Classic (BR/EDR — Basic Rate / Enhanced Data Rate) اور Bluetooth Low Energy (BLE، سابقہ Bluetooth Smart)۔ Classic مسلسل سٹریمز — آڈیو کالز، موسیقی، فائلوں کے لیے ڈیزائن کیا گیا ہے۔ BLE ان ایپلیکیشنز کے لیے بنایا گیا تھا جہاں ڈیٹا دسیوں سیکنڈ یا منٹوں کے وقفوں کے ساتھ چھوٹے پیکٹوں میں منتقل ہوتا ہے — دل کی دھڑکن مانیٹر، ٹیگز، درجہ حرارت سینسر۔

Bluetooth SIG (2025) کے مطابق، نئے اسمارٹ فونز کا 99% دونوں ورژن کو سپورٹ کرتا ہے، اور BLE ماحولیاتی نظام میں Blood Pressure سے Environmental Sensing تک 15 سے زیادہ پروفائل اقسام شامل ہیں۔

Bluetooth Classic بمقابلہ BLE: موازنہ

Classic اور BLE کے درمیان انتخاب منظرنامے پر منحصر ہے: آڈیو سٹریمنگ کے لیے صرف Classic موزوں ہے، گھنٹے میں ایک بار سینسر کو پول کرنے کے لیے — صرف BLE۔ BR/EDR 1 MHz کے وقفے کے ساتھ 79 چینلز اور انکولی فریکوئنسی ہاپنگ (AFH) استعمال کرتا ہے، جو Wi-Fi مداخلت کے خلاف مزاحمت فراہم کرتا ہے۔

پیرامیٹرBluetooth Classic (BR/EDR)Bluetooth Low Energy (BLE)
ڈیٹا کی شرح1–3 Mbit/s (EDR)125 kbit/s – 2 Mbit/s (LE 2M PHY)
چوٹی کرنٹ10–30 mA5–15 mA
ایئر ٹائم~100 ms~3 ms
ٹوپولوجیPiconet (1 ماسٹر، 7 تک غلام)Broadcaster / Observer / Peripheral / Central
پروفائلزHFP، A2DP، HSP، SPP، OPPGATT پر مبنی (HRS، BLS، CTS، وغیرہ)
عام ڈیوائسزہیڈسیٹ، اسپیکر، کار ہینڈز فریفٹنس ٹریکرز، ٹیگز، دل کی دھڑکن مانیٹر، IoT سینسرز
مطابقتفزیکل سطح پر BLE کے ساتھ مطابقت نہیں رکھتاڈوئل موڈ چپس دونوں اسٹیک کو سپورٹ کرتی ہیں

BLE 5.x نے LE Coded PHY کو 1 کلومیٹر (کھلی جگہوں پر) تک رینج بڑھانے کے لیے اور LC3 کوڈیک کے ساتھ LE Audio شامل کیا — نیا ورژن آہستہ آہستہ آڈیو منظرناموں کے لیے Classic اور BLE کے درمیان حد کو دھندلا کر رہا ہے۔

BLE فن تعمیر: کنٹرولر، ہوسٹ اور ایپلیکیشن

BLE اسٹیک تین تہوں میں تقسیم ہے: کنٹرولر (Controller) (فزیکل اور لنک تہیں)، ہوسٹ (Host) (L2CAP، ATT، GATT، سیکیورٹی مینیجر)، اور ایپلیکیشن (Application) (ایپ میں پروفائل کا نفاذ)۔ یہ علیحدگی چپ بنانے والے کو فرم ویئر میں کنٹرولر لاگو کرنے کی اجازت دیتی ہے، جبکہ موبائل ایپ ڈیولپر صرف GATT تجریدوں کے ساتھ کام کرتا ہے۔

لنک پرت (LL) ایئر ٹائم کا انتظام کرتی ہے: ڈیوائس Standby، Advertising، Scanning، Initiating اور Connection ریاستوں کے درمیان سوئچ کرتی ہے۔ Connected حالت میں، Central اور Peripheral کنکشن وقفے (ڈیٹا پیکٹ کے تبادلے کی فریکوئنسی) پر متفق ہوتے ہیں۔ ایک عام وقفہ 7.5–1000 ms ہے؛ جتنا زیادہ بار بار تبادلہ ہوگا، اتنا ہی زیادہ تھرو پٹ اور بجلی کی کھپت ہوگی۔

سیکیورٹی مینیجر (SM) جوڑی پروٹوکول کے ذریعے کلیدی تبادلے کے ساتھ AES-128 انکرپشن لاگو کرتا ہے۔ تین طریقے ہیں: Just Works (PIN داخل کرنے کے بغیر)، Passkey Entry (اسکرین پر 6 ہندسوں کا کوڈ)، اور OOB (NFC یا QR)۔ پہننے والے آلات کے لیے عام طور پر Just Works استعمال کیا جاتا ہے، طبی آلات کے لیے — اضافی تصدیق کے ساتھ OOB۔

Bluetooth Core Specification 5.4 (2023) کے مطابق، LE Secure Connections موڈ میں محفوظ کنکشن سیٹ اپ کا وقت 30 ms کے کنکشن وقفے پر 300 ms سے زیادہ نہیں ہوتا۔

GATT پروفائل: خدمات، خصوصیات اور وضافت کنندگان

ATT (ایٹری بیوٹ پروٹوکول) بنیادی ٹرانسپورٹ ماڈل ہے جہاں سرور (پیری فیرل ڈیوائس) ایٹری بیوٹس کو ذخیرہ کرتا ہے اور کلائنٹ (اسمارٹ فون) انہیں پڑھتا یا لکھتا ہے۔ GATT (جنرک ایٹری بیوٹ پروفائل) ATT کے اوپر ایک درجہ بندی بناتا ہے: Service → Characteristic → Descriptor۔

ہر سروس ایک ڈیوائس فنکشن کو بیان کرنے والی خصوصیات کا ایک منطقی گروپ ہے: Heart Rate Service (UUID 0x180D) میں Heart Rate Measurement خصوصیت (UUID 0x2A37) شامل ہے جس میں کلائنٹ کریکٹرسٹک کنفیگریشن ڈیسکرپٹر (0x2902) ہے جو اطلاعوں کو کنٹرول کرتا ہے۔ موبائل ایپ ڈیولپر discoverServices() کے ذریعے خدمات کی فہرست حاصل کرتا ہے، پھر UUID کے ذریعے مطلوبہ خصوصیت تلاش کرتا ہے اور اطلاعوں کو سبسکرائب کرتا ہے۔

BLE معیاری Bluetooth SIG خدمات کے لیے 16 بٹ UUID اور کسٹم مینوفیکچرر خدمات کے لیے 128 بٹ UUID استعمال کرتا ہے۔ مثال کے طور پر، ایک ٹریکر کیس اپنی بیٹری چارج لیول منتقل کرنے کے لیے خصوصیت کے ساتھ A000-… سروس کی وضاحت کر سکتا ہے۔

Kotlin (Android) میں GATT کے ساتھ کام کرنے کی مثال

kotlin
private val gattCallback = object BluetoothGattCallback() {
    override fun onServicesDiscovered(
        gatt: BluetoothGatt, status: Int
    ) {
        val service = gatt.getService(UUID.fromString("0000180d-0000-1000-8000-00805f9b34fb"))
        val char = service?.getCharacteristic(
            UUID.fromString("00002a37-0000-1000-8000-00805f9b34fb")
        )
        gatt.setCharacteristicNotification(char, true)
    }

    override fun onCharacteristicChanged(
        gatt: BluetoothGatt, char: BluetoothGattCharacteristic
    ) {
        val heartRate = char.getIntValue(BluetoothGattCharacteristic.FORMAT_UINT8, 1)
        updateUi("نبض: $heartRate نبض/منٹ")
    }
}

مثال میں، ایپ معیاری Bluetooth SIG UUID کے ذریعے Heart Rate سروس تلاش کرتی ہے، دل کی دھڑکن کی پیمائش کی خصوصیت حاصل کرتی ہے اور اس کی اطلاعوں کو سبسکرائب کرتی ہے — جب بھی دل کی دھڑکن بدلتی ہے، پیری فیرل ڈیوائس Central سے واضح درخواست کے بغیر ڈیٹا بھیجتی ہے۔

Advertising، اسکیننگ اور کنکشن کا قیام

Advertising BLE کا ایک اہم طریقہ کار ہے جس میں Peripheral ڈیوائس تین بنیادی چینلز (37، 38، 39) پر وقتاً فوقتاً براڈکاسٹ پیکٹ (advertising PDU) بھیجتی ہے۔ مرکزی ڈیوائس ان چینلز کو اسکین کرتی ہے، advertising ڈیٹا وصول کرتی ہے اور کنکشن شروع کر سکتی ہے۔

ایک advertising پیکٹ میں 31 بائٹس تک پے لوڈ ہوتا ہے: فلیگ، TX پاور لیول، مقامی نام، سروس UUID، مینوفیکچرر کے مخصوص ڈیٹا۔ یہ کنکشن قائم کیے بغیر سینسر ریڈنگ منتقل کرنے کے لیے کافی ہے — کنکشن لیس موڈ (Broadcaster قسم)۔ مسلسل ڈیٹا ٹرانسمیشن (مثلاً، منٹ میں ایک بار درجہ حرارت) کے لیے، 1000 ms تک کے کنکشن وقفے کے ساتھ کنکشن استعمال کیا جاتا ہے۔

موبائل پلیٹ فارمز پر، اسکیننگ startScan() (Android) یا scanForPeripherals() (iOS) کے ذریعے شروع کی جاتی ہے۔ سروس UUID کے ذریعے فلٹرنگ تمام نظر آنے والی ڈیوائسز پر کارروائی نہ کرکے توانائی بچاتی ہے — ایپ صرف متعلقہ ٹیگز یا سینسرز کے لیے کال بیک وصول کرتی ہے۔

Swift (iOS) میں BLE ڈیوائسز اسکین کرنے کی مثال

swift
import CoreBluetooth

class ScannerViewController: UIViewController {
    private var centralManager: CBCentralManager!

    override func viewDidLoad() {
        centralManager = CBCentralManager(
            delegate: self, queue: nil
        )
    }

    func centralManagerDidUpdateState(central: CBCentralManager) {
        if central.state == .poweredOn {
            centralManager.scanForPeripherals(
                withServices: nil, options: nil
            )
        }
    }

    func centralManager(
        central: CBCentralManager,
        didDiscover peripheral: CBPeripheral,
        advertisementData: [String : Any],
        rssi RSSI: NSNumber
    ) {
        if let name = advertisementData[CBAdvertisementDataLocalNameKey] {
            print("آلہ ملا: \(name)")
        }
    }
}

ڈیوائس دریافت کرنے کے بعد، Central CBPeripheral آبجیکٹ پاس کرتے ہوئے connect() کو کال کرتا ہے۔ کنکشن پیرامیٹرز (وقفہ، لیٹنسی، سپرویژن ٹائم آؤٹ) لنک لیئر کی سطح پر طے پاتے ہیں — ڈیولپر انہیں براہ راست منظم نہیں کرتا، لیکن Android پر requestConnectionPriority کے ذریعے متاثر کر سکتا ہے۔

موبائل ڈیولپمنٹ میں Bluetooth LE: Core Bluetooth اور android.bluetooth

دونوں موبائل پلیٹ فارم BLE کے ساتھ کام کرنے کے لیے مقامی APIs فراہم کرتے ہیں۔ Core Bluetooth (iOS) ایک ڈیلیگیٹ نقطہ نظر استعمال کرتا ہے: مرکزی مینیجر آپریشن شروع کرتا ہے، اور پیری فیرل آبجیکٹ ڈیلیگیٹ طریقوں کے ذریعے نتائج کی اطلاع دیتا ہے۔ android.bluetooth (Android) کال بیک انٹرفیس پر بنایا گیا ہے اور متعدد ڈیوائسز کے ساتھ متوازی GATT آپریشنز کو سپورٹ کرتا ہے۔

پلیٹ فارمز کے درمیان اہم فرق:

  • iOS — 7 بیک وقت کنکشن تک سپورٹ کرتا ہے؛ پس منظر BLE موڈ کے لیے UIBackgroundModes = bluetooth-central درکار ہے؛ پیش منظر چھوڑنے کے بعد، سسٹم کال بیکس میں کئی منٹ تک تاخیر کر سکتا ہے
  • Android — کوئی مقررہ کنکشن حد نہیں (میموری سے محدود)؛ BLUETOOTH_SCAN اور BLUETOOTH_CONNECT اجازتیں درکار ہیں (Android 12+)؛ قابل اعتماد پس منظر اسکیننگ کے لیے پیش منظر سروس ضروری ہے
  • Flutter — flutter_blue_plus پیکیج پلیٹ فارم APIs کو ایک متحد Dart انٹرفیس سے تجرید کرتا ہے: اسکیننگ اور GATT آپریشنز کا کوڈ دونوں پلیٹ فارمز پر ایک جیسا ہے

Bluetooth SIG ٹیسٹ (2024) کے مطابق، اسمارٹ فون اور فٹنس ٹریکر کے درمیان BLE کنکشن کا وقت Android پر اوسطاً 150–300 ms اور iOS پر 100–250 ms ہے — فرق ریڈیو فریکوئنسی ماڈیول مینجمنٹ پالیسیوں کی وجہ سے ہے۔

Dart (Flutter) میں BLE کنکشن کی مثال

dart
import 'package:flutter_blue_plus/flutter_blue_plus.dart';

class BleService {
  final FlutterBluePlus fbp = FlutterBluePlus();

  Future<void> scanAndConnect(String deviceName) async {
    await fbp.startScan(timeout: Duration(seconds: 15));

    await for (final result in fbp.scanResults) {
      if (result.device.advName == deviceName) {
        await fbp.stopScan();
        await result.device.connect();
        break;
      }
    }
  }
}

Flutter ڈیولپر کو ایک متحد API انٹرفیس ملتا ہے؛ ہڈ کے نیچے، flutter_blue_plus کالز کو مقامی android.bluetooth یا Core Bluetooth میں ترجمہ کرتا ہے۔ یہ نقطہ نظر دونوں پلیٹ فارمز پر BLE پیری فیرلز کے ساتھ کام کرنے کے لیے ایپ ڈیولپمنٹ کا وقت کم کرتا ہے۔

اکثر پوچھے گئے سوالات

Bluetooth Classic اور BLE میں کیا فرق ہے؟

Bluetooth Classic (BR/EDR) مسلسل سٹریمنگ — آڈیو کالز، موسیقی، فائل ٹرانسفر کے لیے ڈیزائن کیا گیا ہے۔ BLE کم سے کم بجلی کی کھپت — سینسرز، ٹیگز، فٹنس ٹریکرز کے ساتھ چھوٹے ڈیٹا پیکٹ کے لیے بہتر بنایا گیا ہے۔ Classic 10–30 mA کھپت کرتا ہے، BLE — چوٹی پر 5–15 mA۔

کیا Bluetooth Classic اور BLE ایک دوسرے کے ساتھ مطابقت رکھتے ہیں؟

فزیکل سطح پر یہ مطابقت نہیں رکھتے — مختلف ماڈیولیشن اور چینل میپ۔ تاہم، زیادہ تر جدید چپس ڈوئل موڈ ہیں اور دونوں اسٹیک کو لاگو کرتی ہیں۔ ڈوئل موڈ چپ والا اسمارٹ فون بیک وقت Classic ہیڈسیٹ اور BLE ٹریکر کے ساتھ بات چیت کر سکتا ہے۔

BLE میں کنکشن وقفہ کیا ہے؟

کنکشن وقفہ قائم کردہ کنکشن میں دو ڈیٹا پیکٹ کے درمیان کا وقت ہے۔ قدر 7.5 ms سے 4 سیکنڈ تک ہوتی ہے۔ وقفہ جتنا چھوٹا ہوگا، تھرو پٹ اتنا ہی زیادہ اور بجلی کی کھپت اتنی ہی زیادہ ہوگی۔ منٹ میں ایک بار رپورٹ کرنے والے درجہ حرارت سینسر کے لیے، 1000 ms کا وقفہ استعمال ہوتا ہے۔

BLE میں جوڑی کیسے کام کرتی ہے؟

جوڑی Central اور Peripheral کے درمیان خفیہ کاری کی کنجیوں کے تبادلے کا عمل ہے۔ BLE تین طریقوں کو سپورٹ کرتا ہے: Just Works (تصدیق کے بغیر)، Passkey Entry (اسکرین پر PIN داخل کرنا)، اور OOB (NFC یا QR کے ذریعے تبادلہ)۔ جوڑی کے بعد، ڈیوائسز کنجیوں کو محفوظ کرتی ہیں (بونڈنگ) اور بعد کے کنکشنز پر دوبارہ تصدیق کی درخواست نہیں کرتی ہیں۔

موبائل ایپلیکیشنز میں کون سے BLE پروفائلز استعمال ہوتے ہیں؟

سب سے عام: دل کی دھڑکن مانیٹر کے لیے Heart Rate Profile (0x180D)، بلڈ پریشر مانیٹر کے لیے Blood Pressure Profile (0x1810)، درجہ حرارت اور نمی سینسر کے لیے Environmental Sensing (0x181A)، چارج لیول کے لیے Battery Service (0x180F)، ماڈل اور سیریل نمبر کے لیے Device Information (0x180A)۔

خلاصہ

  • Bluetooth 2.4 GHz بینڈ میں ایک WPAN معیار ہے، ورژن 4.0 سے Classic (BR/EDR) اور Low Energy (BLE) میں تقسیم ہے
  • Bluetooth Classic 3 Mbit/s تک کی رفتار فراہم کرتا ہے اور آڈیو ہیڈسیٹ اور فائل ٹرانسفر کے لیے استعمال ہوتا ہے
  • BLE کم بجلی کی کھپت (5–15 mA) کے لیے بہتر بنایا گیا ہے اور IoT، فٹنس ٹریکرز اور سینسرز میں استعمال ہوتا ہے
  • GATT پروفائل ATT پروٹوکول کے ذریعے تبادلے کے ساتھ ڈیٹا کو Service → Characteristic → Descriptor درجہ بندی میں منظم کرتا ہے
  • Advertising پیری فیرل ڈیوائسز کو تین بنیادی چینلز پر کنکشن قائم کیے بغیر ڈیٹا منتقل کرنے کی اجازت دیتا ہے
  • iOS (Core Bluetooth) اور Android (android.bluetooth) پس منظر کے کام اور اجازتوں کے لیے مختلف طریقوں کے ساتھ مقامی APIs فراہم کرتے ہیں
  • Flutter (flutter_blue_plus) کراس پلیٹ فارم ڈیولپمنٹ کے لیے ایک واحد Dart انٹرفیس کے ساتھ پلیٹ فارم APIs کو متحد کرتا ہے

ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے

IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔

پروجیکٹ پر بحث کریں

مزید پڑھیں