يتم استخدام واجهة Host Controller Interface (HCI) للتفاعل مع وحدة تحكّم تعمل بالبلوتوث.
يقدّم هذا المستند قائمة بمتطلبات واجهة وحدة تحكّم المضيف (HCI) الخاصة بالبلوتوث (BT) والبلوتوث المنخفض الطاقة (BLE). والهدف من ذلك هو أن يلتزم مورّدو حزمة برامج Host BT ومورّدو وحدة التحكّم في البلوتوث بمتطلبات النظام الأساسي هذه من أجل استخدام مجموعة الخصائص الموضّحة أدناه.
يشير هذا المستند إلى مواصفات Bluetooth Core 5.2 باسم "المواصفات". يتوفّر مواصفات Bluetooth Core 5.2 على موقع Bluetooth SIG الإلكتروني بالإضافة إلى المستندات الأخرى المعتمدة.
نظرة عامة على التصميم
إمكانات الشريحة وإعداداتها
بما أنّ Android نظام أساسي مفتوح، يتضمّن مصفوفة من إصدارات البرامج ومصنّعي المعدات الأصلية والمورّدين وإمكانات النظام الأساسي والشرائح.
لإدارة هذا التنوّع في الأجهزة وإدارة عمليات نقل البيانات، يوضّح هذا المستند فلسفة تصميم تتيح لأدوات التحكّم في البلوتوث عرض إمكاناتها (بما يتجاوز مواصفات Bluetooth Core 5.2 القياسية). يمكن لمجموعة برامج تشغيل البلوتوث الخاصة بالمضيف استخدام هذه الإمكانات لتحديد الميزات التي يجب تفعيلها.
اعتماد المعايير المفتوحة
أحد أهداف Android هو توفير الدعم للمعايير المفتوحة بعد التصديق عليها في مواصفات البلوتوث. إذا أصبحت إحدى الميزات الموضّحة أدناه متاحة في طرق HCI العادية في مواصفات Bluetooth المستقبلية، سنميل إلى جعل هذا الأسلوب هو الإعداد التلقائي.
الميزات الخاصة بالمورِّد
أمر خاص بالمورّد: LE_Get_Vendor_Capabilities_Command
حقل أمر رمز العملية (OpCode): 0x153
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
| NA | قائمة مَعلمات الأوامر الفارغة |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
max_advt_instances(متوقّفة نهائيًا) |
وحدة ثمانيّة البت |
عدد مثيلات الإعلانات المسموح بها محجوز بعد الإصدار 0.98. تم إيقاف هذه المَعلمة نهائيًا في الإصدار 0.98 والإصدارات الأحدث من مواصفات ميزة Google، وتم استبدالها بميزة الإعلانات الموسّعة بتقنية البلوتوث المنخفض الطاقة (LE) المتوفّرة في الإصدار 5.0 والإصدارات الأحدث من مواصفات البلوتوث. |
offloaded_resolution_of_private-address(متوقّفة نهائيًا) |
وحدة ثمانيّة البت |
إمكانية شريحة البلوتوث في جهاز تتبُّع الأغراض إذا كانت الشريحة الإلكترونية متوافقة مع هذه الميزة، يجب أن يفعّلها المضيف. 0 = غير متوافق 1 = متوافق محجوز بعد الإصدار 0.98. تم إيقاف هذه المَعلمة نهائيًا في الإصدار 0.98 والإصدارات الأحدث من مواصفات خصائص Google، ويُنصح باستخدام ميزة الخصوصية المتوفّرة في الإصدار 4.2 والإصدارات الأحدث من مواصفات Bluetooth. |
total_scan_results_storage |
وحدتا ثمانيّة البت | مساحة تخزين نتائج الفحص بالبايت |
max_irk_list_sz |
وحدة ثمانيّة البت | عدد إدخالات مفتاح الحلّ التي يتيحها البرنامج الثابت |
filtering_support |
وحدة ثمانيّة البت |
إمكانية الفلترة في وحدة التحكّم 0 = غير متاحة 1 = متاحة |
max_filter |
وحدة ثمانيّة البت | عدد الفلاتر المتوافقة |
activity_energy_info_support |
وحدة ثمانيّة البت |
تتيح إعداد تقارير عن معلومات النشاط والطاقة 0 = غير متوافق 1 = متوافق |
version_supported |
وحدتا ثمانيّة البت |
تحدّد هذه السمة إصدار مواصفات الخصائص من Google المتوافقة byte[0] = رقم الإصدار الرئيسي byte[1] = رقم الإصدار الثانوي v1.05 byte[0] = 0x01 byte[1] = 0x05 إضافات الميزات في الإصدارات التالية: v1.05:
|
total_num_of_advt_tracked |
وحدتا ثمانيّة البت |
إجمالي عدد المعلِنين الذين يتم تتبّعهم لأغراض OnLost/OnFound
|
extended_scan_support |
وحدة ثمانيّة البت | إتاحة نافذة ومعدّل فحص ممتدَّين |
debug_logging_supported |
وحدة ثمانيّة البت | تتيح تسجيل معلومات تصحيح الأخطاء الثنائية من وحدة التحكّم |
LE_address_generation_offloading_support(متوقّفة نهائيًا) |
وحدة ثمانيّة البت |
0 = غير متاح 1 = متاح محجوز بعد الإصدار 0.98 تم إيقاف هذه المَعلمة نهائيًا في الإصدار 0.98 والإصدارات الأحدث من مواصفات خصائص Google، ويُفضّل استخدام ميزة الخصوصية المتوفّرة في الإصدار 4.2 والإصدارات الأحدث من مواصفات Bluetooth. |
A2DP_source_offload_capability_mask |
4 وحدات ثمانية |
أقنعة البت لأنواع برامج الترميز المتوافقة البت 0 - SBC البت 1 - AAC البت 2 - APTX البت 3 - APTX HD البت 4 - LDAC البت 5 - Opus البتات من 6 إلى 31 محجوزة |
bluetooth_quality_report_support |
وحدة ثمانيّة البت |
تتيح إعداد التقارير عن أحداث جودة البلوتوث 0 = غير متوافق 1 = متوافق |
dynamic_audio_buffer_support |
4 وحدات ثمانيّة البت |
يتيح استخدام مخزن مؤقت ديناميكي للصوت في وحدة التحكّم عبر البلوتوث أقنعة البت لأنواع برامج الترميز المتوافقة البت 0 - SBC البت 1 - AAC البت 2 - APTX البت 3 - APTX HD البت 4 - LDAC البت 5 - Opus البتات من 6 إلى 31 محجوزة |
a2dp_offload_v2_support |
وحدة ثمانيّة البت |
تتيح أوامر الإصدار 2 من نقل بيانات A2DP في وحدة التحكّم في البلوتوث (راجِع بدء نقل بيانات A2DP وإيقاف نقل بيانات A2DP) 0 = غير متاح 1 = متاح |
iso_link_feedback_support |
وحدة ثمانيّة البت |
تتيح هذه السمة الحدث ISO Link Feedback 0 = غير متاح 1 = متاح |
sniff_offload_support |
وحدة ثمانيّة البت |
تتيح أوامر Sniff Offload في وحدة تحكّم Bluetooth 0 = غير متاحة 1 = متاحة |
نتائج الفحص المجمّع
أحد أهداف التصميم هو تحسين طريقة إرسال إشعارات حدث Bluetooth LE Scan Response إلى الجهاز المضيف، وذلك لتوفير الطاقة في الجهاز المضيف.
من خلال تقليل عدد المرات التي يرسل فيها جهاز التحكّم إشعارات إلى معالج تطبيق المضيف لإجراء عمليات فحص النتائج، يمكن أن يبقى معالج تطبيق المضيف في وضع الخمول/السكون لفترة أطول. يؤدي ذلك إلى تقليل استهلاك الطاقة في الجهاز المضيف. تشير المَعلمة return
total_scan_results_storage في
LE_Get_Vendor_Capabilities_Command إلى إمكانية الشريحة
في تخزين نتائج البحث.
تركّز هذه الميزة على إدارة وتكوين مرفق تخزين نتائج البحث عن الأجهزة التي تعمل بالبلوتوث المنخفض الاستهلاك للطاقة في وحدة التحكّم في البلوتوث. يُستخدم التخزين لتجميع بيانات الإعلانات وبيانات المسح والبيانات الوصفية مؤقتًا التي يتلقّاها جهاز التحكّم لتسليمها لاحقًا إلى الجهاز المضيف.
يجب أن يتيح البرنامج الثابت نوعَين من تجميع البيانات يمكن استخدامهما في الوقت نفسه:
- تم الاقتطاع. تحتوي على عناصر المعلومات التالية: {عنوان MAC، وقوة الإرسال، ومؤشر قوة الإشارة المستلَمة (RSSI)، والطابع الزمني}
- كامل يحتوي على عناصر المعلومات التالية: {MAC, TX Power, RSSI, Timestamp, Adv Data, Scan Response}
LE_Batch_Scan_Command
OCF: 0x156
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
Batch_Scan_opcode |
وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - ضبط مَعلمات تخزين "الفحص المجمّع" 0x3 - ضبط مَعلمات "الفحص المجمّع" 0x4 - قراءة مَعلمات نتائج "الفحص المجمّع" |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر. لا يؤدي تفعيل الميزة الخاصة بالعميل إلى بدء عملية المسح.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Batch_Scan_opcode |
وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - ضبط مَعلمات تخزين "الفحص المجمّع" 0x3 - ضبط مَعلمات "الفحص المجمّع" 0x4 - قراءة مَعلمات نتائج "الفحص المجمّع" |
LE_Batch_Scan_Command: تفعيل ميزة خاصة بالعميل
Sub OCF: 0x01
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
enable_customer_specific_feature_set |
وحدة ثمانيّة البت |
0x01 - تفعيل ميزة "المسح الضوئي المجمّع" 0x00 - إيقاف ميزة "المسح الضوئي المجمّع" |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Batch_Scan_opcode |
وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - ضبط مَعلمات تخزين "الفحص المجمّع" 0x3 - ضبط مَعلمات "الفحص المجمّع" 0x4 - قراءة مَعلمات نتائج "الفحص المجمّع" |
LE_Batch_Scan_Command: Set batch scan storage parameter subcommand
رمز الوظيفة الفرعية: 0x02
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
Batch_Scan_Full_Max |
وحدة ثمانيّة البت |
الحد الأقصى لمساحة التخزين (بالنسبة المئوية) المخصّصة للنمط الكامل [النطاق: 0-100] |
Batch_Scan_Truncated_Max |
وحدة ثمانيّة البت |
الحد الأقصى لمساحة التخزين (بالنسبة المئوية) المخصّصة للنمط المختصر [النطاق: 0-100] |
Batch_Scan_Notify_Threshold |
وحدة ثمانيّة البت |
ضبط مستوى الإشعار (بالنسبة المئوية) لمجموعة تخزين فردية
[النطاق: 0-100] سيؤدي ضبط القيمة على 0 إلى إيقاف الإشعار. يتم إنشاء حدث HCI خاص بالمورّد (حدث فرعي لانتهاك حد التخزين) |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Batch_scan_opcode |
وحدة ثمانيّة البت | 0x02 [ضبط مَعلمات الفحص المجمّع] |
LE_Batch_Scan_Command: Set batch scan parameter subcommand
Sub OCF: 0x03
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
Batch_Scan_Mode |
وحدة ثمانيّة البت |
0x00 – إيقاف المسح الضوئي المجمّع 0x01 – تفعيل الوضع المختصر 0x02 – تفعيل الوضع الكامل 0x03 – تفعيل الوضع المختصر والوضع الكامل |
Duty_cycle_scan_window |
4 وحدات ثمانيّة البت | وقت المسح الضوئي للمسح المجمّع (عدد الفتحات) |
Duty_cyle_scan_interval |
4 وحدات ثمانيّة البت | فترة الفاصل الزمني للمسح الضوئي المجمّع (عدد الفترات الزمنية) |
own_address_type |
وحدة ثمانيّة البت |
0x00 - عنوان الجهاز العام 0x01 - عنوان الجهاز العشوائي |
Batch_scan_Discard_Rule |
وحدة ثمانيّة البت |
0 - تجاهل أقدم إعلان 1 - تجاهل الإعلان الذي يتضمّن أضعف إشارة RSSI |
سيبدأ هذا الأمر الفرعي عملية الفحص المجمّع، إذا كانت مفعّلة. في عملية المسح الضوئي المقتطعة، يتم تخزين النتائج بشكل مقتطع حيث يكون المفتاح الفريد لنمط مقتطع = {BD_ADDR, scan_interval}. وهذا يعني أنّه سيتم تسجيل BD_ADDR will واحد فقط لكل فترة مسح. السجلّ الذي يجب الاحتفاظ به في "الوضع المختصر" هو: {BD_ADDR،
قوة الإرسال، ومؤشر قوة الإشارة المستلَمة، والطابع الزمني}
عند تفعيل "الوضع الكامل"، سيتم استخدام المسح النشط وسيتم تسجيل "ردود المسح". المفتاح الفريد لنمط Full = {MAC, Ad packet}،
بغض النظر عن فاصل المسح الضوئي. السجلّ الذي يجب الاحتفاظ به في "الوضع الكامل" هو
{BD_ADDR، وقوة الإرسال، ومؤشر قوة الإشارة المستلَمة (RSSI)، والطابع الزمني، وحزمة الإعلان، واستجابة الفحص}. في النمط "كامل"، يتم تسجيل حزمة AD نفسها مرة واحدة فقط عند ظهورها عدة مرات خلال فواصل زمنية مختلفة للمسح. ومع ذلك، في الوضع المختصر، يهمّنا ظهور BA_ADDR على فترات مسح مختلفة (مرة واحدة لكل فترة مسح). قوة الإشارة المستلَمة (RSSI) هي القيمة المتوسطة لجميع النسخ المكرّرة من إعلان فريد ضمن فترة المسح.
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Batch_scan_opcode |
وحدة ثمانيّة البت | 0x03 [Set Batch Scan Parameters] |
LE_Batch_Scan_Command: Read batch scan results subcommand
رمز العملية الفرعية: 0x04
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
Batch_Scan_Data_read |
وحدة ثمانيّة البت |
0x01 - بيانات الوضع المختصر 0x02 - بيانات الوضع الكامل |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر. عندما يصدر المضيف هذا الأمر، قد لا تتسع جميع النتائج في وحدة التحكّم في حدث واحد من أحداث "اكتمال الأمر". سيكرّر المضيف إصدار هذا الأمر إلى أن تشير النتائج المقابلة في حدث Command Complete إلى 0 في عدد السجلات، ما يشير إلى أنّه لم يعُد لدى وحدة التحكّم أي سجلات لإرسالها إلى المضيف. يمكن أن يحتوي كل حدث Command Complete على سجلات متعددة من نوع واحد فقط من البيانات (كاملة أو مختصرة).
لا تتم مزامنة المراجع الزمنية الخاصة بوحدة التحكّم والمضيف. وحدة الطابع الزمني هي 50 ملي ثانية. تستند قيمة الطابع الزمني إلى وقت تقديم المضيف Read_Batch_Scan_Results_Sub_cmd. إذا كان وقت وصول الأمر هو
T_c في البرنامج الثابت، فإنّ الوقت الفعلي الذي تم فيه أخذ الطابع الزمني
في البرنامج الثابت هو T_fw. سيكون وقت تسجيل الحدث: (T_c - T_fw). T_c وT_fw ضمن النطاق الزمني للبرامج الثابتة. يتيح ذلك للمضيف
احتساب المدة التي انقضت منذ وقوع الحدث.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Batch_scan_opcode |
وحدة ثمانيّة البت | 0x03 [ضبط مَعلمات الفحص المجمّع] |
Batch_Scan_data_read |
وحدة ثمانيّة البت | تحدّد هذه السمة التنسيق (مختصر أو كامل). |
num_of_records |
وحدة ثمانيّة البت | عدد سجلّات Batch_Scan_data_read |
format_of_data |
متغير |
الوضع المختصر: العنوان[0]: 6 ثمانيات نوع_العنوان[0]: 1 ثماني قوة_الإرسال[0]: 1 ثماني قوة_الإشارة_المستلَمة[0] : 1 ثماني الطابع_الزمني[0]: 2 ثمانيات [سجلات متعددة ( num_of_records) بالتنسيق أعلاه]الوضع الكامل: العنوان[0]: 6 ثمانيات نوع_العنوان[0]: 1 ثماني قوة_الإرسال[0]: 1 ثماني قوة_الإشارة_المستلَمة[0]: 1 ثماني الطابع_الزمني[0]: 2 ثمانيات طول_حزمة_الإعلان[0]: 1 ثماني حزمة_الإعلان[0]: ثمانيات طول_حزمة_الإعلان طول_استجابة_بيانات_الفحص[0]: 1 ثماني استجابة_بيانات_الفحص[0]: Scan_data_resp ثمانيات[سجلات متعددة بالتنسيق أعلاه ( num_of_records)]
|
فلتر محتوى حزمة الإعلانات
يُستخدَم هذا الأمر لتفعيل/إيقاف/إعداد "فلتر محتوى حزمة الإعلانات" (APCF) في وحدة التحكّم. تفلتر APCF تقارير الإعلانات في وحدة التحكّم، ولكنّها لا تفلتر الإعلانات الدورية.
LE_APCF_Command
OCF: 0x157
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
APCF_opcode |
وحدة ثمانيّة البت |
0x00 - APCF Enable 0x01 - APCF Set Filtering parameters 0x02 - APCF Broadcaster Address 0x03 - APCF Service UUID 0x04 - APCF Service Solicitation UUID 0x05 - APCF Local Name 0x06 - APCF Manufacturer Data 0x07 - APCF Service Data 0x08 - APCF Transport Discovery Service 0x09 - APCF AD Type Filter 0x10 ~ 0xAF - Reserved for future use 0xB0 ~ 0xDF - Reserved for vendor 0xE0 ~ 0xFE - Reserved for future use 0xFF - APCF Read extended Features |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة الإرجاع |
APCF_opcode |
وحدة ثمانيّة البت |
0x00 - APCF Enable 0x01 - APCF Set Filtering parameters 0x02 - APCF Broadcaster Address 0x03 - APCF Service UUID 0x04 - APCF Service Solicitation UUID 0x05 - APCF Local Name 0x06 - APCF Manufacturer Data 0x07 - APCF Service Data 0x08 - APCF Transport Discovery Service 0x09 - APCF AD Type Filter 0x10 ~ 0xAF - Reserved for future use 0xB0 ~ 0xDF - Reserved for vendor 0xE0 ~ 0xFE - Reserved for future use 0xFF - APCF Read extended Features |
LE_APCF_Command: Enable_sub_cmd
رمز الوظيفة الفرعية: 0x00
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_enable |
وحدة ثمانيّة البت |
0x01 - تفعيل ميزة APCF 0x00 - إيقاف ميزة APCF |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x0 - تفعيل APCF |
APCF_Enable |
وحدة ثمانيّة البت | يتم ضبط خيار التفعيل أو الإيقاف من خلال APCF_enable |
LE_APCF_Command: set_filtering_parameters_sub_cmd
يُستخدم هذا الأمر الفرعي لإضافة أو حذف مواصفات فلتر أو محو قائمة فلاتر للفلترة على الشريحة.
Sub OCF: 0x01
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Action |
وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى محو الفلتر المحدّد بالإضافة إلى إدخالات الميزات المرتبطة به في الجداول الأخرى. سيؤدي النقر على "محو" إلى محو جميع الفلاتر والإدخالات المرتبطة بها في الجداول الأخرى. |
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
APCF_Feature_Selection |
وحدتا ثمانيّة البت |
أقنعة البت للميزات المحدّدة: البت 0: تم ضبطه لتفعيل فلتر "عنوان البث" البت 1: تم ضبطه لتفعيل فلتر "تغيير بيانات الخدمة" البت 2: تم ضبطه لتفعيل التحقّق من معرّف UUID للخدمة البت 3: تم ضبطه لتفعيل التحقّق من معرّف UUID لطلب الخدمة البت 4: تم ضبطه لتفعيل التحقّق من الاسم المحلي البت 5: تم ضبطه لتفعيل التحقّق من بيانات الشركة المصنّعة البت 6: تم ضبطه لتفعيل التحقّق من بيانات الخدمة البت 7: تم ضبطه لتفعيل التحقّق من خدمة اكتشاف النقل البت 8: تم ضبطه لتفعيل التحقّق من نوع الإعلان |
APCF_List_Logic_Type |
وحدتا ثمانيّة البت |
عملية منطقية لكل اختيار ميزة (لكل موضع بت) محددة في APCF_Feature_Selection
تكون صالحة فقط عندما تكون إحدى الميزات مفعّلة. قيمة موضع البت: 0: OR 1: AND في حال اختيار منطق "AND"، لن تجتاز حزمة ADV الفلتر إلا إذا كانت تتضمّن جميع الإدخالات في القائمة. في حال اختيار منطق "أو"، ستجتاز حزمة ADV الفلتر إذا كانت تحتوي على أي من الإدخالات في القائمة. |
APCF_Filter_Logic_Type |
وحدة ثمانيّة البت |
0x00: OR 0x01: AND ملاحظة: نوع المنطق غير متوفّر للحقول الثلاثة الأولى من APCF_Feature_Selection، والتي تكون دائمًا منطق "AND". ولا تنطبق إلا على الحقول الأربعة (من البت 3 إلى البت 6) في APCF_Feature_Selection.
|
rssi_high_thresh |
وحدة ثمانيّة البت |
[in dBm] لا يُعتبر المعلِن مرئيًا إلا إذا كانت الإشارة أعلى من الحدّ الأعلى لمستوى إشارة الاستقبال (RSSI). وفي ما عدا ذلك، يجب أن يتصرف البرنامج الثابت كما لو أنّه لم يرَها أبدًا. |
delivery_mode |
وحدة ثمانيّة البت |
0x00 - immediate0x01 - on_found0x02 - batched
|
onfound_timeout |
وحدتا ثمانيّة البت |
لا يكون صالحًا إلا إذا كان delivery_mode
on_found.[بالملّي ثانية] الوقت الذي يستغرقه البرنامج الثابت في جمع إعلانات إضافية قبل إعداد التقارير. |
onfound_timeout_cnt |
وحدة ثمانيّة البت |
لا يكون صالحًا إلا إذا كان delivery_mode
on_found.[count] إذا استمرّ ظهور إعلان في البرامج الثابتة لمدة onfound_timeout، سيتم جمع بعض الإعلانات والتحقّق من العدد.onFound إذا تجاوز العدد onfound_timeout_cnt، يتم إرسال تقرير OnFound على الفور.
|
rssi_low_thresh |
وحدة ثمانيّة البت |
لا يكون صالحًا إلا إذا كان delivery_mode
on_found.[بوحدة ديسيبل ميلي واط] يُعدّ حِزم المعلِن غير مرئية إذا لم يكن مستوى إشارة RSSI للحِزمة المستلَمة أعلى من الحد الأدنى لمستوى إشارة RSSI. |
onlost_timeout |
وحدتا ثمانيّة البت |
لا يكون صالحًا إلا إذا كان delivery_mode
on_found.[بالملّي ثانية] إذا لم يتم رصد إعلان بشكل متواصل بعد العثور عليه لمدة الفترة lost_timeout، سيتم الإبلاغ عنه على الفور
بأنّه غير متوفّر.
|
num_of_tracking_entries |
وحدتا ثمانيّة البت |
لا يكون صالحًا إلا إذا كان delivery_mode
on_found.[count] إجمالي عدد المعلِنين المطلوب تتبّعهم لكل فلتر. |
يجب أن تستخدم قيم RSSI مكمّلاً ثنائيًا لتمثيل القيم السالبة.
يجب أن يتمكّن المضيف من ضبط فلاتر متعدّدة مع ضبط قيمة
APCF_Application_Address_type على 0x02 (لجميع عناوين البث) من أجل إدارة مجموعات الفلاتر المختلفة.
تُعدّ الفلترة والتجميع في حِزم وإعداد التقارير مفاهيم مترابطة. يجب أن تخضع كل إعلان واستجابة فحص ذات صلة لجميع الفلاتر، واحدًا تلو الآخر. وبالتالي، فإنّ الإجراءات الناتجة
(delivery_mode) مرتبطة ارتباطًا وثيقًا بعملية الفلترة. أوضاع التسليم هي: report_immediately وbatch وonFound. ترتبط القيمة OnLost بالقيمة OnFound بمعنى أنّها ستأتي بعد OnFound عند فقدانها.
يوضّح مسار المعالجة هذا النموذج المفاهيمي:
عند تلقّي إطار إعلان (أو استجابة فحص)، يتم تطبيقه على جميع الفلاتر بترتيب تسلسلي. من المحتمل أن يتسبّب إعلان في إعداد تقارير فورية استنادًا إلى أحد الفلاتر، وتجميع الإعلان نفسه بسبب إجراء فلتر مختلف.
تتيح حدود مستوى RSSI (المرتفعة والمنخفضة) إمكانية التحكّم في وقت ظهور الإطار لمعالجة الفلتر، حتى عندما يتلقّى وحدة التحكّم حزمة صالحة. في حال ضبط طريقة الإرسال على فوري أو مجمّع، يتم أخذ قوة إشارة RSSI لإطار معيّن في الاعتبار لإجراء المزيد من عمليات المعالجة في وحدة التحكّم. تحتاج التطبيقات المختلفة إلى سلوك مختلف في ما يتعلّق بعرض البيانات وتجميعها. يتيح ذلك لتطبيقات متعددة إمكانية إرسال التقارير مباشرةً و/أو تجميع النتائج في البرامج الثابتة في الوقت نفسه. مثال على ذلك، حالة يكون فيها الفحص المجمّع نشطًا من أحد التطبيقات، ثم يتم إصدار فحص عادي منخفض الطاقة من تطبيق آخر. قبل إصدار فحص مجمّع، يضبط الإطار/التطبيق الفلاتر المناسبة. في وقت لاحق، عندما يصدر التطبيق الثاني عملية مسح عادية، يستمر تجميع البيانات السابق. ومع ذلك، بسبب عملية الفحص المنتظمة، يشبه ذلك من الناحية النظرية إضافة فلتر فارغ (مع جميع الفلاتر الحالية) إلى جانب أمر الفحص LE. تكون الأولوية لمعلمات أمر المسح الضوئي LE عند تفعيلها. عند إيقاف عملية الفحص العادية منخفضة الطاقة، سيعود جهاز التحكّم إلى عملية فحص سابقة مجمّعة، إذا كانت متوفّرة.
يستند وضع عرض OnFound إلى الفلاتر التي تم ضبطها. يُعدّ أي مزيج يؤدي إلى نجاح إجراء الفلتر هو الكيان الذي يجب تتبّعه في onLost. الحدث المقابل هو الحدث الفرعي لتتبُّع إعلانات LE.
سيبدو انتقال OnFound/OnLost لفلتر (في حال تفعيله) على النحو التالي:
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x01 - APCF Set Filtering Parameters |
APCF_Action |
وحدة ثمانيّة البت | APCF_Action للأمر "إعادة الصدى" |
APCF_AvailableSpaces |
وحدة ثمانيّة البت | عدد الإدخالات المتاحة في جدول الفلاتر |
LE_APCF_Command: broadcast_address_sub_cmd
يُستخدم هذا الأمر الفرعي لإضافة عنوان معلِن أو حذفه أو لمحو قائمة عناوين المعلِنين الخاصة بالفلترة على مستوى الشريحة.
رمز الوظيفة الفرعية: 0x02
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Action |
وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى حذف عنوان البث المحدّد في الفلتر المحدّد. سيؤدي المحو إلى محو جميع عناوين البث في الفلتر المحدّد. |
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
APCF_Broadcaster_Address |
6 octet | عنوان الجهاز المكوّن من 6 بايت الذي سيتم إضافته إلى قائمة عناوين البث أو حذفه منها |
APCF_Application_Address_type |
وحدة ثمانيّة البت |
0x00: عام 0x01: عشوائي 0x02: غير متاح (تجاهل نوع العنوان) لفلترة تقارير الإعلانات باستخدام أنواع عناوين التعريف (0x02 و0x03) للحصول على تقارير إعلانية تتضمّن أنواع العناوين 0x02 و0x03، اضبط هذا الحقل على 0x02: NA (تجاهل نوع العنوان). |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x02 - عنوان جهاز بث APCF |
APCF_Action |
وحدة ثمانيّة البت | APCF_Action للأمر "إعادة الصدى" |
APCF_AvailableSpaces |
وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول "عنوان البث" |
LE_APCF_Command: service_uuid_sub_cmd
يُستخدم هذا الأمر الفرعي لإضافة أو حذف معرّف فريد عالمي (UUID) لخدمة أو لمحو قائمة معرّفات فريدة عالمية (UUID) لخدمة من أجل الفلترة داخل الشريحة.
Sub OCF: 0x03
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Action |
وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى حذف عنوان معرّف UUID للخدمة المحدّد في الفلتر المحدّد. سيؤدي الأمر Clear إلى محو جميع المعرّفات الفريدة العامة للخدمات في الفلتر المحدّد. |
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
APCF_UUID |
2,4,16 octet | معرّف UUID للخدمة (16 أو 32 أو 128 بت) المطلوب إضافته إلى القائمة أو حذفه منها. |
APCF_UUID_MASK |
2,4,16 octet |
قناع المعرّف الفريد العالمي للخدمة (16 أو 32 أو 128 بت) الذي تريد إضافته إلى القائمة
يجب أن يكون طوله مماثلاً لطول APCF_UUID.
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x03 - المعرّف الفريد العالمي لخدمة APCF |
APCF_Action |
وحدة ثمانيّة البت | APCF_Action للأمر "إعادة الصدى" |
APCF_AvailableSpaces |
وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول معرّف الخدمة الفريد (UUID) |
LE_APCF_Command: solicitation_uuid_sub_cmd
يُستخدم هذا الأمر الفرعي لإضافة أو حذف معرّف فريد عالمي (UUID) لطلب أو لمحو قائمة معرّفات فريدة عالمية (UUID) للطلبات من أجل الفلترة داخل الشريحة.
رمز العملية الفرعية: 0x04
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Action |
وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى حذف عنوان UUID الخاص بطلب البيانات في الفلتر المحدّد. سيؤدي الأمر Clear إلى محو جميع المعرّفات الفريدة العالمية (UUID) الخاصة بطلبات الحصول على الموافقة في الفلتر المحدّد. |
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
APCF_UUID |
2,4,16 octet | معرّف UUID الخاص بطلب العرض (16 أو 32 أو 128 بت) الذي سيتم إضافته إلى القائمة أو حذفه منها. |
APCF_UUID_MASK |
2,4,16 octet |
قناع المعرّف الفريد العالمي (UUID) الخاص بطلب المعلومات (16 أو 32 أو 128 بت) المطلوب إضافته إلى القائمة. يجب أن يكون طولها مماثلاً لطول APCF_UUID.
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x04 - المعرّف الفريد العالمي (UUID) لطلب APCF |
APCF_Action |
وحدة ثمانيّة البت | APCF_Action للأمر "إعادة الصدى" |
APCF_AvailableSpaces |
وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول المعرّف الفريد العالمي لطلب المعلومات |
LE_APCF_Command: local_name_sub_cmd
يُستخدم هذا الأمر الفرعي لإضافة سلسلة اسم محلي أو حذفها أو لمحو قائمة سلاسل الأسماء المحلية من أجل الفلترة داخل الشريحة.
Sub OCF: 0x05
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Action |
وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى حذف سلسلة الاسم المحلي المحددة في الفلتر المحدد. سيؤدي المحو إلى محو جميع سلاسل الأسماء المحلية في الفلتر المحدّد. |
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
APCF_LocName_Mandata_or_SerData |
الحجم المتغيّر |
سلسلة أحرف للاسم المحلي ملاحظات:
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x05 - اسم APCF المحلي |
APCF_Action |
وحدة ثمانيّة البت | APCF_Action للأمر "إعادة الصدى" |
APCF_AvailableSpaces |
وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول "الاسم المحلي" |
LE_APCF_Command: manf_data_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة سلسلة بيانات خاصة بالشركة المصنّعة أو حذفها أو لمحو قائمة سلاسل البيانات الخاصة بالشركة المصنّعة من أجل الفلترة على مستوى الشريحة.
رمز العملية الفرعية: 0x06
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Action |
وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى حذف سلسلة بيانات الشركة المصنّعة المحدّدة في الفلتر المحدّد. سيؤدي خيار "محو" إلى محو جميع سلاسل بيانات الشركة المصنّعة في الفلتر المحدّد. |
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
APCF_LocName_Mandata_or_SerData |
الحجم المتغيّر |
سلسلة أحرف لبيانات الشركة المصنّعة ملاحظات:
|
APCF_ManData_Mask |
الحجم المتغيّر |
قناع بيانات التصنيع المطلوب إضافته إلى القائمة ويجب أن يكون طولها مماثلاً لطول APCF_LocName_or_ManData_or_SerData.
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x06 - بيانات الشركة المصنّعة بتنسيق APCF |
APCF_Action |
وحدة ثمانيّة البت | APCF_Action للأمر "إعادة الصدى" |
APCF_AvailableSpaces |
وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول "بيانات الشركة المصنّعة" |
LE_APCF_Command: service_data_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة سلسلة بيانات خدمة أو حذفها أو لمحو قائمة سلاسل بيانات الخدمة الخاصة بالفلترة على الشريحة.
رمز OCF الفرعي: 0x07
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Action |
وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى حذف سلسلة بيانات الخدمة المحدّدة في الفلتر المحدّد. سيؤدي خيار "محو" إلى محو جميع سلاسل بيانات الخدمة في الفلتر المحدّد. |
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
APCF_LocName_Mandata_or_SerData |
الحجم المتغيّر |
سلسلة أحرف لبيانات الخدمة ملاحظات:
|
APCF_LocName_Mandata_or_SerData_Mask |
الحجم المتغيّر |
قناع بيانات الخدمة المطلوب إضافته إلى القائمة يجب أن يكون طولها مماثلاً لطول APCF_LocName_or_ManData_or_SerData.
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x07 - بيانات خدمة APCF |
APCF_Action |
وحدة ثمانيّة البت | APCF_Action للأمر "إعادة الصدى" |
APCF_AvailableSpaces |
وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة لجدول بيانات الخدمة |
LE_APCF_Command: ad_type_sub_cmd
يُستخدم هذا الأمر الفرعي لإضافة نوع بيانات إعلانية أو حذفه أو لمحو قائمة أنواع البيانات الإعلانية الخاصة بالفلترة على الشريحة. استخدِم
read_extended_features_sub_cmd للتحقّق مما إذا كان هذا الأمر
متوافقًا أم لا.
عندما تكون قيمة APCF_AD_DATA_Length هي 0، يتم فلترة APCF_AD_TYPE بدون
مقارنة بيانات AD Data وAD Data Mask.
إذا تجاوز طول بيانات حزمة ADV المستلَمة AD_DATA_LENGTH، قارِن أول AD_DATA_LENGTH بايت فقط من بيانات الإعلان وتجاهَل البيانات المتبقية.
Sub OCF: 0x09
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Action |
وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى حذف نوع الإعلان المحدّد في الفلتر المحدّد. سيؤدي خيار "محو" إلى محو جميع أنواع الإعلانات في الفلتر المحدّد. |
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
APCF_AD_TYPE |
وحدة ثمانيّة البت | نوع الإعلان الذي سيتمّ إضافته إلى القائمة أو حذفه منها. تجاهُل عندما تكون قيمة APCF_Action هي 0x02 (محو) |
APCF_AD_DATA_Length |
وحدة ثمانيّة البت |
0x00 - يعني عدم فلترة محتوى البيانات يجب تجاهل هذا الخيار عندما تكون قيمة APCF_Action هي 0x02 (محو)
|
APCF_AD_DATA |
الحجم المتغيّر |
حجم متغيّر، استنادًا إلى APCF_AD_DATA_Lengthيجب تجاهله عندما تكون قيمة APCF_Action هي 0x02 (محو) |
APCF_AD_DATA_MASK |
الحجم المتغيّر |
حجم متغيّر، استنادًا إلى APCF_AD_DATA_Lengthيجب تجاهله عندما تكون قيمة APCF_Action هي 0x02 (محو)يجب أن يكون له الطول نفسه مثل APCF_AD_DATA.
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0x09 - نوع إعلان APCF |
APCF_Action |
وحدة ثمانيّة البت | APCF_Action للأمر "إعادة الصدى" |
APCF_AvailableSpaces |
وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول "نوع الإعلان" |
LE_APCF_Command: read_extended_features_sub_cmd
يُستخدم هذا الأمر الفرعي لقراءة ميزات APCF الموسّعة.
رمز OCF الفرعي: 0xFF
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
| غير سارٍ | مَعلمة الأمر فارغة. |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
APCF_opcode |
وحدة ثمانيّة البت | 0xFF - APCF_Read_Extended_Features |
APCF_extended_features |
وحدتا ثمانيّة البت |
قناع البت للميزات الموسّعة المتوافقة:
قيمة البت
|
أمر معلومات النشاط والطاقة في وحدة التحكّم
والهدف من هذه المعلومات هو أن تحلّل وظائف نظام المضيف الأعلى مستوى إجمالي أنشطة جميع المكوّنات، بما في ذلك وحدة التحكّم في البلوتوث وحالتها الكلية، وذلك بالتزامن مع ما يحدث في التطبيقات والإطار. لإجراء ذلك، يجب توفير المعلومات التالية من حزمة BT ووحدة التحكّم:
- مجموعة بروتوكولات البلوتوث: إعداد تقارير عن حالة التشغيل الكلية الحالية لوحدة التحكّم
- البرامج الثابتة: إعداد التقارير عن معلومات النشاط والطاقة المجمّعة
حالات ماكرو حزمة مضيف BT، كما يتم تحديدها على مستوى المستخدم:
- في وضع الخمول: [مسح الصفحة ضوئيًا، إعلان LE، مسح الاستعلام ضوئيًا، مسح LE ضوئيًا]
- المسح الضوئي: [تحديد الصفحات/الاستعلام/محاولة الاتصال]
- نشط: [رابط ACL مفعّل، رابط SCO قيد التقدم، وضع التتبّع]
وتشمل الأنشطة التي يتتبّعها جهاز التحكّم طوال فترة استخدامه وقت الإرسال ووقت الاستقبال ووقت عدم النشاط وإجمالي الطاقة المستهلكة. ويتم محوها عند قراءتها من الجهاز المضيف.
LE_Get_Controller_Activity_Energy_Info
هذا أمر خاص بالمورّد.
OCF: 0x159
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
| NA | مَعلمات الأوامر الفارغة |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
total_tx_time_ms |
4 وحدات ثمانيّة البت | إجمالي مدة تنفيذ المعاملة |
total_rx_time_ms |
4 وحدات ثمانيّة البت | إجمالي مدة تنفيذ الوصفة الطبية |
total_idle_time_ms |
4 وحدات ثمانيّة البت | إجمالي الوقت في وضع الخمول (حالات الطاقة المنخفضة غير المتعلقة بالنوم) |
total_energy_used |
4 وحدات ثمانيّة البت | إجمالي الطاقة المستخدَمة [ناتج التيار (بالملّي أمبير) والجهد (بالفولت) والوقت (بالملّي ثانية)] |
أمر مَعلمات فحص مجموعة LE الموسّعة
يمكن استخدام هذا الأمر لتفعيل فترة مسح أكبر وفاصل زمني أطول في وحدة التحكّم. وفقًا لمواصفات Bluetooth Core 5.2، يبلغ الحدّ الأعلى لمدة نافذة المسح والفاصل الزمني 10.24 ثانية، ما يعيق الفواصل الزمنية للمسح التي تتجاوز 10.24 ثانية بالنسبة إلى التطبيقات.
المستند الأساسي: مواصفات الإصدار 5.2 من Bluetooth Core، الصفحة 2493 (أمر LE Set Scan Parameters)
OCF: 0x15A
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
LE_Ex_Scan_Type |
وحدة ثمانيّة البت |
0x00 - المسح الضوئي غير النشط يجب عدم إرسال أي حِزم SCAN_REQ (الإعداد التلقائي).0x01 - المسح النشط قد يتم إرسال حِزم SCAN_REQ.
|
LE_Ex_Scan_Interval |
4 وحدات ثمانيّة البت |
يُعرَّف على أنّه الفاصل الزمني منذ أن بدأ جهاز التحكّم آخر عملية مسح ضوئي منخفض الطاقة (LE) إلى أن بدأ عملية المسح الضوئي التالية منخفض الطاقة (LE). النطاق: من 0x0004 إلى 0x00FFFFFF القيمة التلقائية: 0x0010 (10 مللي ثانية) الوقت = N * 0.625 مللي ثانية نطاق الوقت: من 2.5 مللي ثانية إلى 10442.25 ثانية |
LE_Ex_Scan_Window |
4 وحدات ثمانيّة البت |
تمثّل هذه السمة مدة عملية الفحص باستخدام تقنية البلوتوث المنخفض الطاقة (BLE). يجب أن تكون قيمة LE_Scan_Window أقل من أو تساوي LE_Scan_Interval.
النطاق: من 0x0004 إلى 0xFFFF القيمة التلقائية: 0x0010 (10 مللي ثانية) الوقت = N * 0.625 مللي ثانية نطاق الوقت: من 2.5 مللي ثانية إلى 40.95 ثانية |
Own_Address_Type |
وحدة ثمانيّة البت |
0x00 - عنوان الجهاز العلني (تلقائي) 0x01 - عنوان الجهاز العشوائي |
LE_Ex_Scan_Filter_Policy |
0x00 - قبول جميع حِزم الإعلانات (الإعداد التلقائي) يجب تجاهل حِزم الإعلانات الموجهة التي لا تستهدف هذا الجهاز. 0x01 - تجاهل حِزم الإعلانات من الأجهزة غير المدرَجة في القائمة البيضاء القائمة فقط. يجب تجاهل حِزم الإعلانات الموجهة التي لا تستهدف هذا الجهاز. |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Get controller debug info command
الهدف من عنصر المعلومات هذا هو أن يحصل المضيف على معلومات تصحيح أخطاء وحدة التحكّم، بتنسيق ثنائي، من أجل المعالجة والتحليل اللاحقَين. يساعد ذلك في تحديد المشاكل وحلّها ميدانيًا، كما يوفّر للمهندسين مجموعة أدوات لتسجيل المعلومات بغرض تحليلها. يمكن لمسؤول التحكّم بالبيانات تقديم المعلومات عند طلبها من المضيف عبر الحدث (الحدث الفرعي "معلومات تصحيح الأخطاء الخاصة بمسؤول التحكّم بالبيانات") أو بشكل مستقل عندما يقرّر مسؤول التحكّم بالبيانات ذلك. ويمكن أن تشمل الاستخدامات على سبيل المثال لا الحصر ما يلي: إعداد تقارير عن معلومات حالة البرامج الثابتة، ومعلومات ملف الذاكرة عند تعطّل البرنامج، ومعلومات التسجيل، وما إلى ذلك.
OCF: 0x15B
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
| لا ينطبق | قائمة مَعلمات الأوامر الفارغة |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
إتاحة تخفيف حِمل أجهزة بلوتوث A2DP
تتيح ميزة نقل بيانات A2DP نقل عملية ترميز الصوت A2DP إلى معالج صوت متصل بوحدة التحكّم في البلوتوث. ينتقل بث بيانات الصوت المشفّرة مباشرةً من معالج الصوت إلى وحدة التحكّم في البلوتوث بدون تدخل مضيف البلوتوث. سيظل مضيف Bluetooth مسؤولاً عن إعداد جلسة A2DP والتحكّم فيها. يتوفّر إصداران من الأوامر. لا تتوافق الطلبات القديمة التي تتضمّن Sub OCF 0x01-0x02 إلا مع برامج الترميز المفتوحة المصدر. لا تتأثر الإصدارات التي تتضمّن Sub-OCF 0x03-0x04 ببرنامج الترميز الذي تم ضبطه.
OCF: 0x15D
بدء نقل بيانات A2DP (الإصدار القديم)
Sub OCF: 0x01
استخدِم هذا الأمر لضبط عملية تخفيف حِمل A2DP وبدء بث A2DP.
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
Codec |
4 وحدات ثمانيّة البت |
تحديد نوع برنامج الترميز 0x01 - SBC 0x02 - AAC 0x04 - APTX 0x08 - APTX HD 0x10 - LDAC 0x20 - Opus |
Max_Latency |
وحدتا ثمانيّة البت | الحد الأقصى لوقت الاستجابة المسموح به (بالمللي ثانية) تؤدي القيمة صفر إلى إيقاف عملية المسح. |
SCMS-T_Enable |
وحدتا ثمانيّة البت |
Octet 0: علامة تتيح إضافة عنوان SCMS-T.
Octet 1: قيمة عنوان SCMS-T، عندما يكون مفعّلاً |
Sampling_Frequency |
4 وحدات ثمانيّة البت |
0x01 - 44100 هرتز 0x02 - 48000 هرتز 0x04 - 88200 هرتز 0x08 - 96000 هرتز |
Bits_Per_Sample |
وحدة ثمانيّة البت |
0x01 - 16 بت لكل عيّنة 0x02 - 24 بت لكل عيّنة 0x04 - 32 بت لكل عيّنة |
Channel_Mode |
وحدة ثمانيّة البت |
0x01 - Mono 0x02 - Stereo |
Encoded_Audio_Bitrate |
4 وحدات ثمانيّة البت |
معدل نقل بيانات الصوت المرمّز بالبت في الثانية. 0x00000000 - لم يتم تحديد معدل نقل البيانات الصوتية أو لم يتم استخدامه. 0x00000001 - 0x00FFFFFF - معدل نقل بيانات الصوت المرمّز بالبت في الثانية. 0x01000000 - 0xFFFFFFFF - محجوزة. |
Connection_Handle |
وحدتا ثمانيّة البت | معرّف اتصال A2DP الذي يتم إعداده |
L2CAP_Channel_ID |
وحدتا ثمانيّة البت | معرّف قناة L2CAP المطلوب استخدامه في اتصال A2DP هذا |
L2CAP_MTU_Size |
وحدتا ثمانيّة البت | الحد الأقصى لحجم وحدة النقل القصوى (MTU) في بروتوكول L2CAP التي تحتوي على حِزم الصوت المرمّزة |
Codec_Information |
32 ثمانية |
المعلومات الخاصة ببرنامج الترميز
برنامج الترميز SBC:
يُرجى الرجوع إلى عناصر المعلومات المحدّدة لبرنامج ترميز SBC في الإصدار 1.3 من A2DP. برنامج الترميز المتقدّم للصوت (AAC):
يُرجى الرجوع إلى عناصر المعلومات الخاصة ببرنامج ترميز AAC في الإصدار 1.3 من A2DP برنامج الترميز LDAC:
Octet 0-3: Vendor ID
الوحدات الثمانية 4-5: رقم تعريف الترميز
Octet 6: Bitrate Index:
Octet 7: وضع قناة LDAC Octet 8-31: محجوز برنامج الترميز Opus:
Octet 0-3: Vendor ID
الوحدات الثمانية 4-5: معرّف الترميز Octet 6-31: محجوز برامج الترميز الأخرى: الثمانيات من 0 إلى 31: محجوزة |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Sub_Opcode |
وحدة ثمانيّة البت | 0x01 - Start A2DP offload |
بدء تخفيف حِمل A2DP
Sub OCF: 0x03
استخدِم هذا الأمر لضبط عملية تخفيف حِمل A2DP وبدء بث A2DP.
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
Connection Handle |
وحدتا ثمانيّة البت | معرّف اتصال HCI النشط |
L2CAP_Channel_ID |
وحدتا ثمانيّة البت | معرّف قناة L2CAP التي تم فتحها لبث A2DP |
Data_Path_Direction |
وحدة ثمانيّة البت |
0x00 - الإخراج (مصدر/دمج AVDTP) 0x01 - الإدخال (مستقبل/تقسيم AVDTP) |
Peer_MTU |
وحدتا ثمانيّة البت | الحد الأقصى لحجم حِزم L2CAP التي يتم التفاوض عليها مع الجهاز الآخر |
CP_Enable_SCMS_T |
وحدة ثمانيّة البت |
0x00 - إيقاف عنوان حماية المحتوى SCMS-T 0x01 - تفعيل عنوان حماية المحتوى SCMS-T |
CP_Header_SCMS_T |
وحدة ثمانيّة البت |
عند تفعيل عنوان حماية المحتوى SCMS-T (CP_SCMS_T_Enable
ضبط القيمة على 0x01)، يتم تحديد قيمة العنوان التي تسبق محتوى الصوت (يُرجى الرجوع إلى
ملف تعريف A2DP، القسم 3.2.1-2) على النحو المحدّد في أرقام Bluetooth المخصّصة، القسم
6.3.2.يتم تجاهله عندما لا تكون حماية المحتوى SCMS-T مفعّلة. |
Vendor_Specific_Parameters_Length |
وحدة ثمانيّة البت |
طول المَعلمات الخاصة بالمورِّد، في النطاق من 0 إلى 128 يتم استخدام القيمة 0 عندما لا يتم تقديم أي مَعلمات إضافية. |
Vendor_Specific_Parameters |
من 0 إلى 128 ثمانية بت |
Vendor Specific Parameters provided by the Bluetooth Audio HAL,
CodecParameters.vendorSpecificParameters[].
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Sub_Opcode |
وحدة ثمانيّة البت | 0x03 - Start A2DP offload |
إيقاف نقل بيانات A2DP (إصدار قديم)
رمز الوظيفة الفرعية: 0x02
يُستخدَم هذا الأمر لإيقاف بث A2DP offload.
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
| لا ينطبق | قائمة مَعلمات الأوامر فارغة. |
لم يتم تحديد أي مَعلمات لهذا الأمر.
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Sub_Opcode |
وحدة ثمانيّة البت | 0x02 - إيقاف تخفيف حِمل A2DP |
إيقاف تخفيف حِمل A2DP
رمز العملية الفرعية: 0x04
يُستخدَم هذا الأمر لإيقاف بث A2DP offload.
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
Connection Handle |
وحدتا ثمانيّة البت | معرّف اتصال HCI النشط |
L2CAP_Channel_ID |
وحدتا ثمانيّة البت | معرّف قناة L2CAP التي تم فتحها لبث A2DP |
Data_Path_Direction |
وحدة ثمانيّة البت |
0x00 - الإخراج (مصدر/دمج AVDTP) 0x01 - الإدخال (مستقبل/تقسيم AVDTP) |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Sub_Opcode |
وحدة ثمانيّة البت | 0x04 - إيقاف تخفيف حِمل A2DP |
أمر "تقرير جودة البلوتوث"
تبدأ ميزة أمر "تقرير جودة البلوتوث" الآلية في وحدة التحكّم في البلوتوث لإرسال تقارير أحداث جودة البلوتوث إلى الجهاز المضيف. يمكنك تفعيل أربعة خيارات:
- وضع مراقبة الجودة: يرسل جهاز التحكّم بشكل دوري حدثًا فرعيًا من نوع BQR مرتبطًا بجودة الرابط إلى الجهاز المضيف.
- اقتراب انتهاء مهلة الإشراف على الرابط (LSTO): إذا لم يتم تلقّي أي حِزم من جهاز BT المتصل لمدة تزيد عن نصف قيمة مهلة الإشراف على الرابط (LSTO)، سيُبلغ جهاز التحكّم المضيف بحدث "اقتراب انتهاء مهلة الإشراف على الرابط".
- A2DP Audio Choppy: عندما ترصد وحدة التحكّم عوامل تؤدي إلى تقطّع الصوت، تُبلغ وحدة التحكّم الجهاز المضيف بحدث A2DP Audio Choppy.
- (e)SCO Voice Choppy: عندما يرصد جهاز التحكّم عوامل تؤدي إلى تقطّع الصوت، يرسل جهاز التحكّم حدث (e)SCO Voice Choppy إلى الجهاز المضيف.
- Root Inflammation: يرسل وحدة التحكّم هذا الحدث إلى الحزمة عندما يواجه HAL أو وحدة التحكّم خطأً فادحًا ويحتاج إلى إعادة تشغيل البلوتوث.
- تتبُّع رسائل LMP/LL: يرسل جهاز التحكّم رسالة LMP/LL لإجراء المصافحة مع الجهاز البعيد إلى الجهاز المضيف.
- تتبُّع جدولة التوافق المتعدد مع البلوتوث: يرسل جهاز التحكّم معلومات الجدولة الخاصة به بشأن التعامل مع ملفات شخصية متعددة على البلوتوث والتوافق اللاسلكي في نطاق 2.4 غيغاهرتز إلى الجهاز المضيف.
- آلية "معلومات تصحيح أخطاء وحدة التحكّم": عند تفعيلها، يمكن لوحدة التحكّم إرسال معلومات تسجيل بيانات تصحيح الأخطاء بشكل مستقل إلى الجهاز المضيف من خلال الحدث الفرعي "معلومات تصحيح أخطاء وحدة التحكّم".
- LE Audio Choppy: عندما ترصد وحدة التحكّم عوامل تؤدي إلى تقطّع الصوت، تُبلغ وحدة التحكّم الجهاز المضيف بحدث LE Audio Choppy.
-
وضع "إحصاءات التردد اللاسلكي المتقدّمة": يرسل جهاز التحكّم إلى الجهاز المضيف تقارير تتضمّن معلومات ذات صلة بإحصاءات التردد اللاسلكي، ويتيح حالتا استخدام للتقارير:
- التقارير الدورية
- مشغّلات الأحداث (بدء البث وإيقافه ومشغّل حدث جودة الرابط)
- يوفّر نظام مراقبة حالة وحدة التحكّم للجهاز المضيف معلومات متعلّقة بالحالة من خلال نوعَين من الأحداث: التقارير الدورية والتقارير التي يتم تشغيلها عند وقوع حدث.
- BQR_Report_Action الخاص بأمر "تقرير جودة البلوتوث": يمكن للمضيف استخدام أمر HCI هذا للحصول على طلب بحث لمرة واحدة بشأن وضع مراقبة الجودة أو وضع مراقبة الطاقة أو وضع إحصاءات متقدّمة عن التردد اللاسلكي.
OCF: 0x15E
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
BQR_Report_Action |
وحدة ثمانيّة البت |
إجراء لإضافة / حذف إعداد التقارير عن أحداث الجودة المحدّدة في المَعلمة BQR_Quality_Event_Mask أو محو الكل
0x00 - إضافة
سيؤدي الحذف إلى محو تقارير أحداث الجودة المحدّدة. |
BQR_Quality_Event_Mask |
4 وحدات ثمانيّة البت |
أقنعة البت لإعداد التقارير عن أحداث الجودة المحدّدة
البت 0: اضبطه لتفعيل وضع مراقبة الجودة. |
BQR_Minimum_Report_Interval |
وحدتا ثمانيّة البت |
تحديد الحدّ الأدنى للفاصل الزمني بين عمليات تسجيل أحداث الجودة لأحداث الجودة المحدّدة يجب ألا يبلغ برنامج ثابت وحدة التحكّم عن الحدث التالي خلال الفترة الزمنية المحدّدة. يجب أن يكون إعداد الفاصل الزمني مناسبًا ومخصّصًا لأحداث الجودة التي تتم إضافتها.
الوحدة: ملي ثانية |
BQR_Vendor_Specific_Quality_Event_Mask |
4 وحدات ثمانيّة البت |
أقنعة البتات لإعداد التقارير عن أحداث الجودة المحدّدة الخاصة بالمورّد لا تكون هذه المَعلمة صالحة إلا عند ضبط البت 15 من BQR_Quality_Event_Mask.
وحدات البت من 0 إلى 31: محجوزة |
BQR_Vendor_Specific_Trace_Mask |
4 وحدات ثمانيّة البت |
أقنعة البت لإعداد تقارير التتبُّع المحدّدة الخاصة بالمورّد لا تكون هذه المَعلمة صالحة إلا عند ضبط البت 31 من BQR_Quality_Event_Mask.
البتات من 0 إلى 31: محجوزة |
Report_interval_multiple |
4 وحدات ثمانيّة البت |
مُضاعِف BQR_Minimum_Report_Interval عندما تكون هذه القيمة >= 1،
تتّبع فترة تقرير BQR التنسيق فترة تقرير BQR = BQR_Minimum_Report_Interval x Report_interval_multiple. يجب ألا يبلّغ برنامج التحكّم الثابت عن الحدث التالي خلال الفترة الزمنية المحدّدة. يتم تخصيص إعداد الفاصل الزمني للأحداث المتعلقة بالجودة التي تمت إضافتها.
الوحدة: مللي ثانية BQR_Report_Interval أكبر من قدرة وحدة التحكّم، يجب أن تعرض وحدة التحكّم الحد الأقصى لوقت BQR_Report_Interval عند إكمال الأمر.
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Current_Quality_Event_Mask |
4 وحدات ثمانيّة البت |
تشير إلى إعداد قناع البت الحالي. البت 0: تم تفعيل وضع مراقبة الجودة. البت 1: تم تفعيل إعداد تقارير حدث LSTO الوشيك. البت 2: تم تفعيل إعداد التقارير عن حدث تشوّش صوت A2DP. البت 3: تم تفعيل إعداد التقارير عن حدث التشويش في صوت eSCO. البت 4: تم تفعيل إعداد تقارير أحداث الالتهاب الجذرية. البت 5: تم تفعيل وضع مراقبة استهلاك الطاقة. البت 6: تم تفعيل ميزة إعداد التقارير عن الأحداث المتقطّعة في LE Audio. البت 7: حدث تعذُّر الاتصال. البت 8: اضبطه لتفعيل مشغّل حدث وضع "إحصاءات التردد اللاسلكي المتقدّمة". البت 9: اضبطه لتفعيل ميزة إعداد التقارير الدورية عن إحصاءات التردد اللاسلكي المتقدّمة. البت 10: تم ضبطه على مشغّل حدث آلية رصد سلامة وحدة التحكّم المفعّلة. البت 11: اضبطه على "تفعيل" لكي يتم إعداد تقارير دورية عن آلية مراقبة سلامة وحدة التحكّم. البِتات من 12 إلى 14: محجوزة. البت 15: يتم تفعيل إعداد تقارير أحداث الجودة الخاصة بالمورّد. البت 16: تم تفعيل تتبُّع رسائل LMP/LL. البت 17: تم تفعيل تتبُّع جدولة البلوتوث المتعدد الروابط/التعايش. البت 18: تم تفعيل آلية "معلومات تصحيح الأخطاء في وحدة التحكّم". البت 19: محجوز لمعلومات تصحيح الأخطاء الخاصة بعملية التفريغ البت 20: مشغّل حدث تفريغ سجلّ UART البت 21 ~ 30: محجوز. البت 31: تم تفعيل التتبُّع الخاص بالمورِّد. |
Current_Vendor_Specific_Quality_Event_Mask |
4 وحدات ثمانيّة البت | تشير إلى إعداد قناع البت الحالي. |
Current_Vendor_Specific_Trace_Mask |
4 وحدات ثمانيّة البت | تشير إلى إعداد قناع البت الحالي. |
BQR_Report_interval |
4 وحدات ثمانيّة البت | تشير إلى إعداد قناع البت الحالي. |
Current_Vendor_Specific_Trace_Mask |
4 وحدات ثمانيّة البت |
إعدادات BQR_Report_interval يجب أن تكون القيمة الدنيا بين BQR_Minimum_Report_Interval * Report_interval_multiple أو الحد الأقصى للفاصل الزمني المتاح لوحدة التحكّم. |
أمر التخزين المؤقت الديناميكي للصوت
يقلّل مخزن الصوت المؤقت الديناميكي من التشويش الصوتي من خلال تغيير حجم ذاكرة التخزين المؤقت للصوت في وحدة التحكّم عبر البلوتوث استنادًا إلى سيناريوهات مختلفة.
OCF: 0x15F
الحصول على إذن الوصول إلى إمكانية وقت التخزين المؤقت للصوت
Sub OCF: 0x01
استخدِم هذا الأمر للحصول على إمكانية وقت التخزين المؤقت للصوت من وحدة التحكّم في البلوتوث.
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
| لا ينطبق | قائمة مَعلمات الأوامر الفارغة |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Dynamic_Audio_Buffer_opcode |
وحدة ثمانيّة البت | 0x01 - الحصول على مدة التخزين المؤقت للصوت |
Audio_Codec_Type_Supported |
4 وحدات ثمانيّة البت |
أقنعة البت لأنواع برامج الترميز المتوافقة البت 0 - SBC البت 1 - AAC البت 2 - APTX البت 3 - APTX HD البت 4 - LDAC البتات من 5 إلى 31 محجوزة |
Audio_Codec_Buffer_Default_Time_For_Bit_0 |
وحدتا ثمانيّة البت |
وقت التخزين المؤقت التلقائي لنوع برنامج الترميز Bit 0 المحدّد في Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 0 غير متوافق. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Maximum_Time_For_Bit_0 |
وحدتا ثمانيّة البت |
الحد الأقصى لمدة التخزين المؤقت لنوع برنامج الترميز Bit 0 المحدّد في Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 0 غير متوافق. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Minimum_Time_For_Bit_0 |
وحدتا ثمانيّة البت |
الحد الأدنى لوقت التخزين المؤقت لنوع برنامج الترميز Bit 0 المحدّد في Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 0 غير متوافق. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Default_Time_For_Bit_1 |
وحدتا ثمانيّة البت |
وقت التخزين المؤقت التلقائي لنوع برنامج الترميز Bit 1 المحدّد في Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 1 غير متوافق. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Maximum_Time_For_Bit_1 |
وحدتا ثمانيّة البت |
الحد الأقصى لمدة التخزين المؤقت لنوع برنامج الترميز Bit 1 المحدّد في Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 1 غير متوافق. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Minimum_Time_For_Bit_1 |
وحدتا ثمانيّة البت |
الحد الأدنى لوقت التخزين المؤقت لنوع برنامج الترميز Bit 1 المحدّد في Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 1 غير متوافق. الوحدة: ملي ثانية |
| ...... | ...... | ...... |
Audio_Codec_Buffer_Default_Time_For_Bit_31 |
وحدتا ثمانيّة البت |
وقت التخزين المؤقت التلقائي لنوع برنامج الترميز Bit 31 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 31 غير متوافق. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Maximum_Time_For_Bit_31 |
وحدتا ثمانيّة البت |
الحد الأقصى لوقت التخزين المؤقت لنوع برنامج الترميز Bit 31 المحدّد في Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 31 غير متوافق. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Minimum_Time_For_Bit_31 |
وحدتا ثمانيّة البت |
الحد الأدنى لوقت التخزين المؤقت لنوع برنامج الترميز Bit 31 المحدّد في Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا كان نوع الترميز Bit 31 غير متوافق. الوحدة: ملي ثانية |
ضبط وقت التخزين المؤقت للصوت
رمز الوظيفة الفرعية: 0x02
استخدِم هذا الأمر لضبط وقت تخزين الصوت المؤقت على وحدة التحكّم التي تعمل بالبلوتوث.
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
Audio_Codec_Buffer_Time |
وحدتا ثمانيّة البت |
الوقت المطلوب لتخزين بيانات الصوت مؤقتًا لبرنامج الترميز المستخدَم حاليًا الوحدة: ملي ثانية |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Dynamic_Audio_Buffer_opcode |
وحدة ثمانيّة البت | 0x02 - ضبط مدة التخزين المؤقت للصوت |
Audio_Codec_Buffer_Time |
وحدتا ثمانيّة البت |
وقت تخزين الصوت مؤقتًا الحالي في وحدة التحكّم عبر البلوتوث الوحدة: ملي ثانية |
حدث HCI (خاص بالمورّد)
في بعض الحالات، تكون أحداث HCI الخاصة بالمورّد مطلوبة. يُرجى الرجوع إلى الشكل 5.4 في الصفحة 1897 من مواصفات BT Core 5.2. ستحتوي مَعلمة خاصة بالحدث 0 دائمًا على رمز الحدث الفرعي الأول، والذي يتم استنادًا إليه فك ترميز بقية حدث HCI.
| مَعلمة الحدث | الحجم | الغرض |
|---|---|---|
HCI_vendor_specific_event_code |
وحدة ثمانيّة البت | 0xFF |
sub_event_code |
وحدة ثمانيّة البت | سيكون حجم رمز الحدث الفرعي 1 أوكتيت، وهو البايت الذي يلي مباشرةً طول المَعلمة في حزمة حدث HCI. |
حدث فرعي لتجاوز حدّ التخزين
يشير هذا الحدث إلى أنّه تم تجاوز حد مساحة التخزين.
رمز الحدث الفرعي = 0x54
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
| بدون |
LE multi-advertising state change subevent
يشير هذا الحدث إلى أنّ مثيلاً إعلانيًا قد غيّر حالته. في الوقت الحالي، يُستخدَم هذا الحدث فقط للإشارة إلى نسخة الإعلان التي تم إيقافها نتيجة حدوث اتصال.
رمز الحدث الفرعي = 0x55
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
Advertising_instance |
وحدة ثمانيّة البت |
تحدّد هذه السمة مثيل الإعلان المحدّد تتراوح القيم الصالحة بين 0 و max_advt_instances-1
|
State_Change_Reason |
وحدة ثمانيّة البت | 0x00: تم استلام طلب الربط |
Connection_handle |
وحدتا ثمانيّة البت |
تحدّد هذه السمة الاتصال الذي تسبّب في إيقاف مثيل advt (0xFFFF إذا كان غير صالح)
|
الحدث الفرعي لتتبُّع الإعلانات على الأجهزة المنخفضة الطاقة
يشير هذا الحدث إلى وقت العثور على معلِن أو فقدانه.
رمز الحدث الفرعي = 0x56
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
APCF_Filter_Index |
وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter-1) |
Advertiser_State |
وحدة ثمانيّة البت |
0x00: تم العثور على المعلِن 0x01: تعذّر العثور على المعلِن |
Advt_Info_Present |
وحدة ثمانيّة البت |
0x00: معلومات المعلِن (Advt_Info) متوفّرة0x01: معلومات المعلِن ( Advt_Info) غير متوفّرة
|
Advertiser_Address |
6 وحدات ثمانيّة البت | عنوان عام أو عشوائي |
Advertiser_Address_Type |
وحدة ثمانيّة البت |
0x00: العنوان العلني 0x01: العنوان العشوائي |
Advt_Info |
Tx_Pwr[0]: 1 octetRSSI[0]: 1 octetTimestamp[0]: 2 octetsAdv packet_len[0]: 1 octetAdv_packet[0]: Adv_packet_len octetsScan_data_resp_len[0]: 1 octetScan_data_resp[0]: Scan_data_resp octets
|
حدث فرعي لمعلومات تصحيح الأخطاء في وحدة التحكّم
يستخدم وحدة التحكّم هذا الحدث لتوفير معلومات تصحيح الأخطاء الثنائية للمضيف.
رمز الحدث الفرعي = 0x57
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
debug_block_byte_offset_start |
وحدتا ثمانيّة البت | إزاحة بايت تصحيح الأخطاء في الحظر من البداية |
last_block |
وحدة ثمانيّة البت |
0x00: تتوفّر المزيد من بيانات تصحيح الأخطاء 0x01: آخر كتلة ثنائية؛ ما مِن المزيد من بيانات تصحيح الأخطاء |
cur_pay_load_sz |
وحدتا ثمانيّة البت | حجم الكتلة الثنائية في حدث حالي |
Debug_Data |
متغير | بيانات تصحيح الأخطاء في cur_payload_sz |
الحدث الفرعي "تقرير جودة البلوتوث"
يشير هذا الحدث إلى أحد الإجراءات التالية: حدث مرتبط بجودة البلوتوث، أو حمّل جهاز التحكّم تتبُّع رسائل LMP/LL وتتبُّع جدولة البلوتوث المتعدد الروابط/التعايش، أو أفرغ جهاز التحكّم بيانات معلومات تصحيح الأخطاء.
رمز الحدث الفرعي = 0x58 [Quality_Report_Id = 0x01 ~ 0x04، حدث ذو صلة بجودة الرابط]
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
Quality_Report_Id |
وحدة ثمانيّة البت |
0x01: الإبلاغ عن الجودة في وضع المراقبة 0x02: اقتراب موعد إيقاف التشغيل. 0x03: A2DP Audio Choppy. 0x04: (e)SCO Voice Choppy. 0x05 ~ 0x06: محجوزة. 0x07: LE audio choppy. 0x08: تعذّر الاتصال. 0x09 ~ 0xFF: محجوزة. |
Packet_Types |
وحدة ثمانيّة البت |
0x01: ID 0x02: NULL 0x03: POLL 0x04: FHS 0x05: HV1 0x06: HV2 0x07: HV3 0x08: DV 0x09: EV3 0x0A: EV4 0x0B: EV5 0x0C: 2-EV3 0x0D: 2-EV5 0x0E: 3-EV3 0x0F: 3-EV5 0x10: DM1 0x11: DH1 0x12: DM3 0x13: DH3 0x14: DM5 0x15: DH5 0x16: AUX1 0x17: 2-DH1 0x18: 2-DH3 0x19: 2-DH5 0x1A: 3-DH1 0x1B: 3-DH3 0x1C: 3-DH5 0x1D ~ 0x50: Reserved 0x51: ISO packet 0x52: 1M PHY 0x53: 2M PHY 0x54: Codec PHY S=2 0x55: Codec PHY S=8 0x56 ~ 0xFF: Reserved |
Connection_Handle |
وحدتا ثمانيّة البت | مقبض اتصال ACL/(e)SCO/ISO |
Connection_Role |
وحدة ثمانيّة البت |
دور الأداء في عملية الربط 0x00: مركزي 0x01: طرفي 0x02 ~ 0xFF: محجوزة. |
TX_Power_Level |
وحدة ثمانيّة البت |
مستوى طاقة الإرسال الحالي لـ Connection_Handle المحدّد
يجب أن تكون هذه القيمة هي نفسها التي يستجيب بها جهاز التحكّم لأمر HCI_Read_Transmit_Power_Level HCI. |
RSSI |
وحدة ثمانيّة البت |
[بالديسيبل ميلي واط]
قيمة مؤشر قوة الإشارة المستلمة (RSSI) لـ Connection_Handle المحدّد. |
SNR |
وحدة ثمانيّة البت |
[بالديسيبل]
قيمة نسبة الإشارة إلى الضجيج (SNR) لـ Connection_Handle المحدّد. |
Unused_AFH_Channel_Count |
وحدة ثمانيّة البت |
يشير إلى عدد القنوات غير المستخدَمة في AFH_channel_map. 0x4F ~ 0xFF: محجوزة. |
AFH_Select_Unideal_Channel_Count |
وحدة ثمانيّة البت |
يشير إلى عدد القنوات التي تم التشويش عليها والتي تتضمّن جودة سيئة، ولكنها لا تزال محدّدة لاستخدام ميزة "البحث السريع عن القنوات". إنّ الحد الأدنى لعدد القنوات المسموح به وفقًا لمواصفات Bluetooth هو 20 قناة، لذا حتى إذا تم التشويش على جميع القنوات الـ 79 وكانت جودتها سيئة، يجب أن يختار جهاز التحكّم 20 قناة على الأقل لاستخدام ميزة "القفز التكيّفي للتردد". |
LSTO |
وحدتا ثمانيّة البت |
إعداد المهلة الحالي لميزة "الإشراف على الربط" الوقت = N * 0.625 ملّي ثانية نطاق الوقت: من 0.625 ملّي ثانية إلى 40.9 ثانية |
Connection_Piconet_Clock |
4 وحدات ثمانيّة البت |
ساعة Piconet لـ Connection_Handle المحدّد يجب أن تكون هذه القيمة هي نفسها القيمة التي يستجيب بها جهاز التحكّم لأمر HCI_Read_Clock HCI مع المَعلمة "Which_Clock" التي تبلغ قيمتها 0x01 (ساعة Piconet). الوحدة: N * 0.3125 ملي ثانية (ساعة بلوتوث واحدة) |
Retransmission_Count |
4 وحدات ثمانيّة البت |
عدد عمليات إعادة الإرسال منذ آخر حدث. ستتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
No_RX_Count |
4 وحدات ثمانيّة البت |
لم يتم تسجيل أي عدد RX منذ آخر حدث. يزداد العدد عندما لا يتم تلقّي أي حزمة في الفترة الزمنية المحدّدة أو عندما تكون الحزمة التي تم تلقّيها تالفة. ستتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
NAK_Count |
4 وحدات ثمانيّة البت |
عدد إشارات NAK (إشارة عدم استلام) منذ آخر حدث. يجب إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
Last_TX_ACK_Timestamp |
4 وحدات ثمانيّة البت |
الطابع الزمني لآخر إقرار باستلام البيانات (TX ACK) ويستند إلى ساعة البلوتوث الخاصة بجهاز التحكم المركزي في شبكة Piconet (CLK). الوحدة: N * 0.3125 ملي ثانية (ساعة بلوتوث واحدة) |
Flow_Off_Count |
4 وحدات ثمانيّة البت |
عدد المرّات التي تلقّى فيها جهاز التحكّم إشارة Flow-off (إيقاف) منذ آخر حدث. ستتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
Last_Flow_On_Timestamp |
4 وحدات ثمانيّة البت |
الطابع الزمني لآخر عملية Flow-on (GO) ويستند إلى ساعة البلوتوث الخاصة بنقطة الاتصال المركزية (CLK). الوحدة: N * 0.3125 ملي ثانية (ساعة بلوتوث واحدة) |
Buffer_Overflow_Bytes |
4 وحدات ثمانيّة البت |
[بالبايت]
عدد حالات تجاوز سعة المخزن المؤقت منذ آخر حدث |
Buffer_Underflow_Bytes |
4 وحدات ثمانيّة البت |
[بالبايت]
عدد حالات نقص المخزن المؤقت منذ آخر حدث |
bdaddr |
6 وحدات ثمانيّة البت | عنوان الجهاز البعيد |
cal_failed_item_count |
وحدة ثمانيّة البت | عدد العناصر التي تعذّر إجراء المعايرة لها |
TX_Total_Packets |
4 وحدات ثمانيّة البت | عدد الحِزم التي يتم إرسالها. |
TX_UnAcked_Packets |
4 وحدات ثمانيّة البت |
عدد الحِزم التي لا تتلقّى إقرارًا بالاستلام. تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
TX_Flushed_Packets |
4 وحدات ثمانيّة البت |
عدد الحِزم التي لم يتم إرسالها من نقطة الإفراغ. تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
TX_Last_Subevent_Packets |
4 وحدات ثمانيّة البت |
عدد الحِزم التي تنقلها "طبقة ربط البيانات" في وحدة بيانات بروتوكول CIS في الحدث الفرعي الأخير من حدث CIS تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. تكون القيمة صفرًا إذا لم تتوفّر قيمة صالحة للرابط. |
CRC_Error_Packets |
4 وحدات ثمانيّة البت |
عدد الحِزم التي تم تلقّيها والتي تحتوي على خطأ في CRC منذ الحدث الأخير تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
RX_Duplicate_Packets |
4 وحدات ثمانيّة البت |
عدد الحِزم المكرّرة (إعادة الإرسال) التي تم تلقّيها منذ الحدث الأخير تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
RX_Unreceived_Packets |
4 وحدات ثمانيّة البت |
عدد الحِزم التي لم يتم استلامها هو نفسه معلَمة أمر LE READ ISO Link
Quality (راجِع مواصفات Bluetooth الأساسية الإصدار 5.4). مصادر البيانات المرتبطة هي CIS وBIS. عند زيادة هذه القيمة، لا تتلقّى "طبقة الربط" حمولة معيّنة عند نقطة التفريغ (على نظام معلومات مركزي) أو في نهاية الحدث المرتبط بها (على نظام معلومات أساسي؛ راجِع مواصفات Bluetooth الأساسية، الإصدار 5.4، المجلد 6، الجزء B، القسم 4.4.6.6). |
Coex_Info_Mask |
وحدتا ثمانيّة البت |
البت 0 - CoexInvolvement: يتم ضبطه للإشارة إلى أنّه يُشتبه في أنّ أنشطة التعايش متضمّنة
عند إنشاء هذا التقرير (على سبيل المثال، عمليات تقطيع A2DP وLSTO القريب). البت 1 - الراديو النشط لشبكة WLAN 2G: يتم ضبطه للإشارة إلى أنّ الراديو النشط لشبكة WLAN 2G مفعّل. البت 2 - تم الاتصال بشبكة WL 2G: يتم ضبطه للإشارة إلى أنّ راديو WLAN 2G نشط ومتصل. البت 3 - تفعيل الراديو 5G/6G لشبكة WLAN: يتم ضبطه للإشارة إلى أنّ الراديو 5G/6G لشبكة WLAN مفعَّل. البتات من 4 إلى 15 - محجوزة |
| المَعلمة الخاصة بالمورّد | (إجمالي طول المَعلمة - سيتم تحديده لاحقًا) * وحدات الأوكتت | يجب أن يحصل مورّد وحدة التحكّم على المزيد من المَعلمات الخاصة بالمورّد. |
رمز الحدث الفرعي = 0x58 [Quality_Report_Id = 0x05، حدث الالتهاب الأساسي]
يشير هذا الحدث إلى أنّ طبقة تجريد الأجهزة (HAL) الخاصة بالبلوتوث أو وحدة التحكّم واجهت خطأً فادحًا ويجب أن تسجّل حزمة بروتوكولات البلوتوث هذا الموقف ثم تعيد التشغيل. يجب أن يرسل عنصر التحكّم حدث Root_Inflammation_Event إلى حزمة Bluetooth قبل إرسال الجزء الأول من أحداث معلومات تصحيح الأخطاء في أي حالة.
تحتوي المَعلمة Error_Code على رمز خطأ تم الإبلاغ عنه من HAL/Controller، أو 0 إذا كان خطأ خاصًا بمورّد شريحة التعريف. يحتوي Vendor_Specific_Error_Code على رمز خطأ خاص بمورّد مجموعة الشرائح من HAL/Controller. يجب ضبطها على 0 إذا لم تكن قيمة المَعلمة Error_Code أقل من 0x0A. يجب ألا تكون المَعلمتان Error_Code وVendor_Specific_Error_Code مساويتين للصفر في الوقت نفسه.
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
Quality_Report_Id |
وحدة ثمانيّة البت |
0x00 ~ 0x04: محجوزة 0x05: التهاب الجذر. 0x06 ~ 0xFF: محجوزة. |
Error_Code |
وحدة ثمانيّة البت |
0x00: تم تضمين رمز خطأ خاص بمورّد مجموعة الشرائح. 0x01 ~ 0xFF: حدث خطأ في وحدة التحكّم. يمكنك الاطّلاع على مواصفات Bluetooth [المجلد 2] الجزء D، رموز الخطأ للحصول على قائمة برموز الخطأ وأوصافها. |
Vendor_Specific_Error_Code |
وحدة ثمانيّة البت |
0x00: لم يتم تضمين رمز خطأ خاص بمورّد مجموعة الشرائح. 0x01 ~ 0xFF: رمز خطأ خاص بمورّد مجموعة الشرائح |
| المَعلمة الخاصة بالمورّد | (إجمالي طول المَعلمة - 4) * وحدات الأوكتات | يجب أن يحصل مورّد وحدة التحكّم على المزيد من المَعلمات الخاصة بالمورّد. |
رمز الحدث الفرعي = 0x58 [Quality_Report_Id = 0x06، حدث مراقبة استهلاك الطاقة]
يقدّم هذا الحدث نبذة عن استهلاك الطاقة وحالات التشغيل لجهاز التحكّم عبر البلوتوث خلال فترة زمنية محدّدة. يساعد هذا الحدث المطوّرين والمهندسين في تحليل طريقة إدارة وحدة التحكّم للطاقة، وتحديد الأنشطة التي تستهلك أكبر قدر من الطاقة، وتحديد المشاكل المتعلقة بالطاقة وحلّها.
تتتبّع المَعلمات في التقرير المقاييس الرئيسية، بما في ذلك:
- متوسط الاستهلاك الحالي: إجمالي التيار الكهربائي الذي يستخدمه جهاز التحكّم.
- الوقت المستغرَق في حالات مختلفة: إجمالي الوقت (بالملّي ثانية) الذي يستغرقه جهاز التحكّم في حالة الخمول (السكون/الطاقة المنخفضة) مقارنةً بحالة النشاط (الاتصال أو الإرسال أو الاستلام).
- عدد عمليات الانتقال بين الحالات: عدد المرات التي ينتقل فيها جهاز التحكّم بين حالتي الخمول والنشاط
- الوقت المستغرَق في حالات الراديو المحدّدة: مقاييس منفصلة للوقت المستغرَق في الإرسال (Tx) والاستقبال (Rx) لكل من روابط BR/EDR (تقنية Bluetooth Classic) وLE (بلوتوث منخفض الطاقة).
- متوسط مستويات طاقة الإرسال: متوسط الطاقة (بالديسيبل ملي واط) المستخدَمة في عمليات الإرسال على روابط BR/EDR وLE.
- نشاط السلسلة التفصيلي: تقارير عن الوقت المستغرَق في سلاسل الإرسال أو الاستلام النشطة، مع التمييز بين العمليات التي تتضمّن سلسلة واحدة وتلك التي تتضمّن سلسلتَين، وبين مضخّمات الطاقة الداخلية (iPA) والخارجية (ePA)
- وقت فحص النشاط: هو الوقت الذي تستغرقه وحدة التحكّم في البحث بشكل نشط عن أجهزة BR/EDR وأجهزة منخفضة الطاقة.
ومن خلال فحص هذه المَعلَمات، يمكن للمهندسين الحصول على إحصاءات حول كفاءة استهلاك الطاقة في وحدة التحكّم وتحسين أدائها.
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
Quality_Report_Id |
وحدة ثمانيّة البت | 0x06: مراقبة الطاقة |
Average_Current_Consumption |
وحدتا ثمانيّة البت | [بالملّي أمبير] متوسط استهلاك التيار لجميع الأنشطة التي يستهلكها جهاز التحكّم |
Idle_Total_Time (نوم) |
4 وحدات ثمانيّة البت | [بالمللي ثانية] إجمالي الوقت في وضع عدم النشاط (أوضاع الطاقة المنخفضة، السكون) |
Idle_Sate_Enter_Count |
4 وحدات ثمانيّة البت | يشير إلى عدد المرات التي تنتقل فيها وحدة التحكّم إلى حالة عدم النشاط. |
Active_Total_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] الوقت الإجمالي في حالة النشاط (الاستعلام، والتقسيم إلى صفحات، وحركة بيانات ACL/SCO/eSCO/BIS/CIS، ومعالجة أي مهمة). |
Active_State_Enter_Count |
4 وحدات ثمانيّة البت | يشير إلى عدد المرات التي تدخل فيها وحدة التحكّم في الحالات النشطة. |
BR_RDR_Tx_Total_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] إجمالي الوقت في حالة Tx(الإرسال لزيارات ACL/SCO/eSCO) الخاصة بـ BR/EDR |
BR_RDR_Tx_State_Enter_Count |
4 وحدات ثمانيّة البت | تشير إلى عدد المرات التي يدخل فيها جهاز التحكّم في حالة الإرسال الخاصة ببروتوكولَي BR/EDR. |
BR_RDR_Tx_Average_Power_Level |
وحدة ثمانيّة البت | [بالديسيبل ميلي واط] متوسط مستوى طاقة الإرسال لجميع روابط BR/EDR |
BR_RDR_Rx_Total_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] إجمالي الوقت في حالة Rx (التلقّي من ACL/SCO/eSCO) الخاصة بـ BR/EDR |
BR_RDR_Rx_State_Enter_Count |
4 وحدات ثمانيّة البت | [بالمللي ثانية] يشير إلى عدد المرات التي يدخل فيها جهاز التحكّم في حالة الاستقبال الخاصة ببروتوكولَي BR/EDR. |
LE_Tx_Total_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] إجمالي الوقت في حالة الإرسال الخاصة ببروتوكول LE (الإرسال إما لحركة بيانات ACL/BIS/CIS أو حركة بيانات إعلانية خاصة ببروتوكول LE ). |
LE_Tx_State_Enter_Count |
4 وحدات ثمانيّة البت | تشير إلى عدد المرات التي يدخل فيها جهاز التحكّم في حالة الاستقبال الخاصة ببروتوكولَي BR/EDR. |
LE_Tx_Average_Power_Level |
وحدة ثمانيّة البت | [بالديسيبل ملي واط] متوسط مستوى طاقة الإرسال لجميع روابط الطاقة المنخفضة. |
LE_Rx_Total_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] إجمالي الوقت في حالة Rx الخاصة ببروتوكول LE (التلقّي من ACL/BIS/CIS أو الزيارات الواردة من عملية البحث عن أجهزة LE). |
LE_Rx_State_Enter_Count |
4 وحدات ثمانيّة البت | [بالمللي ثانية] يشير إلى عدد المرات التي يدخل فيها جهاز التحكّم في حالة الاستقبال الخاصة بتقنية LE |
Report_Time_Duration (إجمالي الوقت) |
4 وحدات ثمانيّة البت | [بالمللي ثانية] إجمالي مدة جمع المعلومات المتعلّقة بالطاقة |
RX_Active_One_Chain_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] المدة الزمنية التي يكون فيها الاستقبال نشطًا في سلسلة واحدة |
RX_Active_Two_Chain_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] المدة الزمنية التي يكون فيها استقبال البيانات نشطًا في سلسلتَين |
TX_iPA_Active_One_Chain_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] المدة الزمنية لنقل البيانات الداخلي النشط في سلسلة واحدة |
TX_iPA_Active_Two_Chain_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] مدة نشاط المعاملة الداخلية في سلسلتين |
TX_ePA_Active_One_Chain_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] مدة نشاط المعاملات الخارجية في سلسلة واحدة |
TX_ePA_Active_Two_Chain_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] مدة نشاط المعاملة الخارجية في سلسلتين |
BREDR_RX_Active_Scan_total_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] الفترة الزمنية (بالمللي ثانية) لعمليات البحث عن أجهزة BR/EDR النشطة |
LE_RX_Active_Scan_total_Time |
4 وحدات ثمانيّة البت | [بالمللي ثانية] الفترة الزمنية (بالمللي ثانية) التي يكون فيها استقبال البحث عن الأجهزة القريبة عبر البلوتوث منخفض الطاقة نشطًا |
رمز الحدث الفرعي = 0x58 [Quality_Report_Id = 0x09~0x0A، حدث إحصاءات متقدّمة عن التردد اللاسلكي]
يوفّر حدث "إحصاءات متقدّمة عن التردد اللاسلكي (RF) لبلوتوث" مقاييس أداء تفصيلية حول سلوك التردد اللاسلكي لوحدة التحكّم في بلوتوث. يمكن تشغيل الحدث بطريقتَين:
- حسب المشغّل (0x09): يتم إرسال تقرير لمرة واحدة استجابةً لأمر معيّن.
- حسب جهاز العرض (0x0A): يرسل جهاز التحكّم التقارير بشكل دوري على فترات زمنية محدّدة.
معلمات الحدث هي في الأساس عدادات حِزم تتتبّع سلوكيات مختلفة متعلقة بالراديو على مدار فترة زمنية محدّدة.
المقاييس الرئيسية والغرض منها
- إحصاءات طاقة الإرسال: تتتبّع هذه العدادات الحِزم المُرسَلة باستخدام إعدادات طاقة مختلفة، مع التمييز بين مضخّمات الطاقة الداخلية (iPA) والخارجية (ePA) وأوضاع تنوّع الهوائيات (Div) أو توجيه الحزمة (BF) المختلفة. ويساعد ذلك في تحديد إعدادات الطاقة والهوائي الأكثر استخدامًا.
- حاويات مؤشر قوة الإشارة المستلمة (RSSI): تصنّف هذه المَعلمات الحِزم المستلَمة استنادًا إلى قوة الإشارة. من خلال تقديم عدد الحِزم ضمن نطاقات RSSI معيّنة (مثل أقل من -90 ديسيبل، ومن -70 إلى -75 ديسيبل)، يقدّم التقرير صورة واضحة لجودة الرابط. يشير العدد الكبير في حِزم الإشارات "الضعيفة" (على سبيل المثال، < -90 ديسيبل مللي واط) إلى ضعف الاتصال.
- فرق RSSI: يقيس هذا المقياس الفرق في قوة الإشارة بين هوائيات الاستقبال (إذا كان ذلك منطبقًا). تتتبّع العدادات عدد الحِزم التي تتضمّن فرقًا في مستوى إشارة الاستقبال (RSSI) ضمن نطاقات مختلفة. يمكن أن يشير الفرق الكبير في القيم (مثل >11 ديسيبل ميللي واط) إلى حدوث تداخل أو عائق مادي، لأنّ أحد الهوائيات يتلقّى إشارة أقوى بكثير من الهوائي الآخر.
- تبديل الهوائي وعمليات إعادة الإرسال: يحتسب التقرير عدد المرات التي يبدّل فيها جهاز التحكّم بين الهوائيات ويتتبّع حِزم البيانات التي تمت إعادة إرسالها (ReTX). يشير العدد الكبير من عمليات إعادة الإرسال غالبًا إلى ضعف الاتصال أو عدم موثوقيته، ما يتطلّب إعادة إرسال الحِزم.
- جودة القناة: تقدّم هذه المَعلمات ملخّصًا عالي المستوى عن حالة قنوات الاتصال المختلفة، وتصنّفها على أنّها "جيدة" أو "مقبولة" أو "سيئة" أو "سيئة جدًا" استنادًا إلى مؤشر قوة الإشارة المستلَمة (RSSI). يقدّم ذلك نظرة عامة فورية على بيئة الترددات اللاسلكية.
- قائمة انتظار المخزن المؤقت للإرسال (TX): يراقب هذا القسم عدد الحِزم التي تنتظر في المخزن المؤقت للإرسال الخاص بوحدة التحكّم لأنواع الروابط المختلفة، مثل ACL (رابط منطقي غير متزامن موجّه الاتصال) وLECONN (اتصال LE) وLEISOC (متزامن LE). يمكن أن يشير ارتفاع عدد المخازن المؤقتة إلى حدوث مؤثِّر سلبي أو مشكلة في تدفق البيانات من المضيف إلى وحدة التحكّم.
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
Quality_Report_Id |
وحدة ثمانيّة البت | 0x09: Advance RF Stats By Trigger 0x0A: Advance RF Stats By Monitor |
Extension_info |
وحدة ثمانيّة البت | معلومات إصدار BQR 0x01 لـ BQRv6 0x02 لـ BQRv7 |
Report_Time_Period |
4 وحدات ثمانيّة البت | الفترة الزمنية التي يتم فيها جمع معلومات الأداء الوحدة: ملي ثانية |
TX_Power_iPA_BF |
4 وحدات ثمانيّة البت | عداد الحِزم في iPA BF |
TX_Power_ePA_BF |
4 وحدات ثمانيّة البت | عداد الحِزم في ePA BF |
TX_Power_iPA_Div |
4 وحدات ثمانيّة البت | عداد الحِزم في قسم ePA |
TX_Power_ePA_Div |
4 وحدات ثمانيّة البت | عداد الحِزم في قسم ePA |
RSSI_chain_50 |
4 وحدات ثمانيّة البت | عدد حِزم سلسلة RSSI > -50 ديسيبل ميلي واط |
RSSI_chain_50_55 |
4 وحدات ثمانيّة البت | عدد الحِزم في سلسلة RSSI بين -50 ديسيبل ملي واط ~ >-55 ديسيبل ملي واط |
RSSI_chain_55_60 |
4 وحدات ثمانيّة البت | عداد الحِزم لسلسلة RSSI بين -55 ديسيبل ميلي واط ~ >-60 ديسيبل ميلي واط |
RSSI_chain_60_65 |
4 وحدات ثمانيّة البت | عدد الحِزم لسلسلة RSSI بين -60 ديسيبل ميلي واط ~ >-65 ديسيبل ميلي واط |
RSSI_chain_65_70 |
4 وحدات ثمانيّة البت | عدد الحِزم لسلسلة RSSI بين -65 ديسيبل ملي واط ~ >-70 ديسيبل ملي واط |
RSSI_chain_70_75 |
4 وحدات ثمانيّة البت | عدد الحِزم في سلسلة RSSI بين -70 ديسيبل ميلي واط ~ >-75 ديسيبل ميلي واط |
RSSI_chain_75_80 |
4 وحدات ثمانيّة البت | عدد الحِزم لسلسلة RSSI بين -75 ديسيبل ملي واط ~ >-80 ديسيبل ملي واط |
RSSI_chain_80_85 |
4 وحدات ثمانيّة البت | عدد الحِزم لسلسلة RSSI بين -80 ديسيبل ملي واط ~ >-85 ديسيبل ملي واط |
RSSI_chain_85_90 |
4 وحدات ثمانيّة البت | عدد الحِزم لسلسلة RSSI بين -85 ديسيبل ملي واط ~ >-90 ديسيبل ملي واط |
RSSI_chain_90 |
4 وحدات ثمانيّة البت | عدد حِزم سلسلة RSSI < -90 ديسيبل ملي واط |
RSSI_delta_2 |
4 وحدات ثمانيّة البت | عدد الحِزم التي يكون فيها الفرق بين قيمتَي RSSI أقل من 2 ديسيبل ملي واط |
RSSI_delta_2_5 |
4 وحدات ثمانيّة البت | عدد الحِزم لفرق قوة الإشارة المستلَمة (RSSI) بين 2 ديسيبل ميلي واط و5 ديسيبل ميلي واط |
RSSI_delta_5_8 |
4 وحدات ثمانيّة البت | عدد الحِزم لفرق قوة الإشارة المستلَمة (RSSI) بين 5 ديسيبل ملي واط و8 ديسيبل ملي واط |
RSSI_delta_8_11 |
4 وحدات ثمانيّة البت | عدد الحِزم لفرق قوة الإشارة المستلَمة (RSSI) بين 8 ديسيبل ملي واط و11 ديسيبل ملي واط |
RSSI_delta_11 |
4 وحدات ثمانيّة البت | عدد الحِزم لفرق RSSI > 11 ديسيبل ملي واط |
Antenna_Switch_Count |
4 وحدات ثمانيّة البت | عداد الحِزم لحدث تبديل الهوائي |
ReTX_iPA_BF |
4 وحدات ثمانيّة البت | عداد الحِزم ReTX_iPA_BF في آخر فترة زمنية |
ReTX_ePA_BF |
4 وحدات ثمانيّة البت | عدد حِزم ReTX_ePA_BF في الفترة الزمنية الأخيرة |
ReTX_iPA_Div |
4 وحدات ثمانيّة البت | عدد حِزم ReTX_iPA_Div في الفترة الزمنية الأخيرة |
ReTX_ePA_Div |
4 وحدات ثمانيّة البت | عدد الحِزم في ReTX_ePA_Div في الفترة الزمنية الأخيرة |
Channel_count_Good |
وحدة ثمانيّة البت | عدد القنوات التي تندرج قوة الإشارة المستلَمة (RSSI) فيها ضمن الفئة 1 (<90-) |
Channel_count_OK |
وحدة ثمانيّة البت | عدد القنوات التي تندرج قوة الإشارة المستلَمة (RSSI) فيها ضمن الفئة 2 (-90~-76) |
Channel_count_Bad |
وحدة ثمانيّة البت | عدد القنوات التي تندرج قوة الإشارة المستلَمة (RSSI) فيها ضمن الفئة 3 (-76~-50) |
Channel_count_VeryBad |
وحدة ثمانيّة البت | عدد القنوات التي يقع مستوى إشارة RSSI فيها ضمن الفئة 4 (>-50) |
TX_buffer_Queue_Count |
4 وحدات ثمانيّة البت | عداد قائمة انتظار المخزن المؤقت لحالة وحدة التحكّم في الإرسال في آخر فترة زمنية [0:3] ACL_1 [4:7] ACL_2 [8:11] LECONN_1 [12:15] LECONN_2 [16:19] LEISOC_1 [20:23] LEISOC_2 [24:27] LEBroadcast [28:31] rsvd |
رمز الحدث الفرعي = 0x58 [Quality_Report_Id = 0x0B~0x0C، حدث مراقبة حالة وحدة التحكّم]
يقدّم حدث "مراقبة سلامة وحدة التحكّم عبر البلوتوث" ملخّصًا لحالة تشغيل وحدة التحكّم. يمكن تشغيل الحدث بطريقتَين:
- حسب المشغّل (0x09): يتم إرسال تقرير لمرة واحدة استجابةً لأمر معيّن.
- حسب جهاز العرض (0x0A): يرسل جهاز التحكّم التقارير بشكل دوري على فترات زمنية محدّدة.
حدث "مراقبة سلامة وحدة التحكّم عبر البلوتوث" هو أداة تشخيصية تقدّم ملخّصًا لحالة التشغيل الخاصة بوحدة التحكّم. يشكّل هذا الحدث جزءًا من إطار عمل تقرير جودة البلوتوث (BQR) ويُستخدم لتصحيح أخطاء الاتصال وإدارة الطاقة ومشاكل التوقيت. يمكن إرساله كتقرير لمرة واحدة أو بشكلٍ دوري لتوفير مراقبة مستمرة.
المقاييس الرئيسية والغرض منها
- عدادات حِزم HCI: يتتبّع الحدث إجمالي عدد الحِزم المُرسَلة من المضيف إلى وحدة التحكّم والعكس. تُعدّ هذه العدادات ضرورية لتحديد المشاكل وحلّها في نقل بيانات واجهة Host Controller Interface (HCI)، وهي قناة الاتصال بين حزمة البرامج وشريحة وحدة التحكّم في البلوتوث.
- أطوال الحِزم: يوضّح الحدث طول آخر حزمة HCI تم إرسالها واستلامها. يساعد ذلك في التحقّق من نقل البيانات بشكل صحيح ومن عدم حدوث أي مشاكل غير متوقّعة في الحجم.
- عدد إشارات التنبيه: يتضمّن التقرير إجمالي عدد المرات التي تم فيها تأكيد إشارات BT_Wake وHOST_Wake. هذه الإشارات المادية مهمة جدًا لإدارة الطاقة، لأنّها تُستخدم لتنشيط الكيانات المعنية من حالات الطاقة المنخفضة. تساعد مراقبة هذه الأعداد في تصحيح الأخطاء المتعلقة بالطاقة، مثل عمليات التنشيط غير المتوقعة أو عدم الدخول في وضع السكون.
- الطوابع الزمنية: يوفّر الحدث عدة طوابع زمنية، بما في ذلك وقت آخر إشارة تنبيه وآخر إعادة ضبط لواجهة HCI. تساعد هذه الطوابع الزمنية في تحديد المشاكل المتعلّقة بالتوقيت وحلّها، كما توفّر نقطة مرجعية لمعرفة وقت حدوث أحداث معيّنة.
- موقّت المراقبة: تشير علامة معيّنة إلى ما إذا كان الحدث قد تم إنشاؤه كتحذير مبكر من أنّ موقّت المراقبة الخاص بوحدة التحكّم على وشك انتهاء صلاحيته. هذا تنبيه أمان بشأن احتمال توقّف وحدة التحكّم عن العمل أو حدوث أعطال فيها.
- حالة الربط: يلخّص التقرير الحالة الحالية لعمليات الربط النشطة، بما في ذلك إجمالي عدد عمليات الربط BR/EDR وLE وCIS (البث المتزامن المرتبط). ويشير أيضًا إلى ما إذا كانت أي روابط SCO (متزامنة وموجّهة نحو الاتصال) نشطة. تقدّم هذه المعلومات لمحة سريعة عن عدد الأجهزة المتصلة حاليًا بوحدة التحكّم.
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
Quality_Report_Id |
1 Octet | 0xB~0xC 0x0B: تقارير لمرة واحدة أو يتم تشغيلها عند وقوع حدث 0x0C: تقارير دورية |
Packet_Count_Host_to_Controller |
4 وحدات ثمانية | إجمالي عدد الحِزم المُرسَلة من المضيف إلى وحدة التحكّم عبر نقل HCI يُستخدَم هذا الحقل بغرض تصحيح أخطاء واجهة الجهاز البشري (HCI) (مثل UART). السلوك: تتم إعادة ضبط العدادات عندما تتلقّى وحدة التحكّم أمر إعادة ضبط HCI. |
Packet_Count_Controller_to_Host |
4 وحدات ثمانية | إجمالي عدد حِزم أحداث HCI التي تم إرسالها إلى الجهاز المضيف يُستخدَم هذا الحقل بغرض تصحيح أخطاء واجهة الجهاز البشري (HCI) (مثل UART). السلوك: تتم إعادة ضبط العدادات عندما يتلقّى جهاز التحكّم أمر إعادة ضبط HCI. |
Last_Packet_Length_Host_to_Controller |
2 Octets | طول آخر حزمة HCI تم إرسالها إلى Host UART Note: HCI Packet Length max 2 octet (Include HCI, ACL, SCO, ISO) |
Last_Packet_Length_Controller_To_host |
2 Octets | طول حزمة HCI الأخيرة التي تم تلقّيها من Host UART ملاحظة: الحد الأقصى لطول حزمة HCI هو 2 أوكتت (بما في ذلك HCI وACL وSCO وISO) |
Total_BT_Wake_Count |
4 وحدات ثمانية | تمثّل هذه السمة إجمالي عدد تأكيدات رمز BT_Wake التي أجراها الكيان المضيف. يعمل هذا الحقل كأداة تشخيص لتحديد المشاكل المتعلقة بالطاقة وحلّها. السلوك: تتم إعادة ضبط العدادات عندما تتلقّى وحدة التحكّم أمر إعادة ضبط HCI. |
Total_HOST_Wake_Count |
4 وحدات ثمانية | عملية حسابية مجمّعة لتأكيدات رقم التعريف الشخصي Host_Wake التي بدأها "وحدة التحكّم". يعمل هذا الحقل كأداة تشخيص لتحديد المشاكل المتعلقة بالطاقة وحلّها. السلوك: تتم إعادة ضبط العدادات عندما تتلقّى وحدة التحكّم أمر إعادة ضبط HCI. |
Last_BT_Wake_TimeStamp |
4 وحدات ثمانية | الطابع الزمني الأخير الذي أكّد فيه المضيف على دبوس BT_Wake.تم تنفيذ هذا الحقل بغرض تصحيح أخطاء مشاكل الطاقة. |
Last_HOST_Wake_TimeStamp |
4 وحدات ثمانية | الطابع الزمني الأخير الذي أكّد فيه وحدة التحكّم على دبوس Host_Wake. يُستخدَم هذا الحقل لتصحيح الأخطاء المتعلقة بمشاكل الطاقة. |
Reset_Timestamp |
4 وحدات ثمانية | طابع زمني يشير إلى إكمال آخر عملية إعادة ضبط لواجهة HCI. يُستخدم هذا الحقل لغرض صريح وهو تسهيل حل المشاكل المتعلّقة بالتوقيت. ويجب أن يكون هذا المقياس بمثابة نقطة التسجيل الأولية التي تتم مقارنة جميع العناصر الأخرى بها. |
Current_Timestamp |
4 وحدات ثمانية | الوقت الحالي عند إنشاء هذا الحدث. يُستخدَم هذا الحقل بغرض تحديد المشاكل وحلّها المتعلّقة باختلافات التوقيت. يجب أن يكون بمثابة نقطة تسجيل المشغّل التي تشير إليها جميع العناصر الأخرى. |
Is_WatchDog_Timer_About_To_Expire |
4 وحدات ثمانية | علم للإشارة إلى أنّ وحدة التحكّم هي التي أنشأت حدث حالة السلامة هذا كتحذير مبكر بشأن انتهاء صلاحية مراقبة الأداء. يتم استخدام الطابع الزمني الحالي للإشارة إلى وقت حدوث الخطأ. |
Coex_Status_Mask |
2 Octets | البت 0 - محجوز |
Total_Links_BR_EDR_LE_Active |
1 Octet | إجمالي عدد الروابط الخاصة بطلبات BR/EDR/LE في الحالة "نشط" |
Total_Links_BR_EDR_Sniff |
1 Octet | إجمالي عدد الروابط في BR/EDR في حالة Sniff/Idle |
Total_Links_CIS |
1 Octet | إجمالي عدد الروابط في ISO |
Is_SCO_Active |
1 Octet | مؤشر لمعرفة ما إذا كان رابط SCO مفعّلاً حاليًا. |
رمز الحدث الفرعي = 0x58 [معرّف تقرير الجودة = 0x11 ~ 0x13، حدث مرتبط بتفريغ السجلّ]
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
Quality_Report_Id |
وحدة ثمانيّة البت |
0x00 ~ 0x10: محجوزة. 0x11: تتبُّع رسائل LMP/LL. 0x12: تتبُّع جدولة البلوتوث للربط المتعدد/التعايش 0x13: تفريغ بيانات معلومات تصحيح الأخطاء في وحدة التحكّم 0x14 ~ 0xFF: محجوزة. |
Connection_Handle |
وحدتا ثمانيّة البت | مقبض الاتصال |
| المَعلمة الخاصة بالمورّد | (إجمالي طول المَعلمة - 4) * وحدات الأوكتات | تنسيق خاص بالمورّد لتتبُّع رسائل LMP، وتتبُّع جدولة Bluetooth Multi-link/Coex وتفريغ بيانات معلومات تصحيح أخطاء وحدة التحكّم |
الحدث الفرعي "ملاحظات حول رابط ISO"
رمز الحدث الفرعي = 0x5C
عند تفعيل هذا الحدث، يجب إنشاؤه خلال كل فاصل زمني ISO.
التفعيل
يتم التفعيل من خلال اختيار رمز المورّدData_Path_ID
0x19 في الأمر العادي HCI_LE_Setup_ISO_Data_Path.
يجب قبول الأمر HCI_Configure_Data_Path مع ضبط Data_Path_ID على
0x19 وضبط Vendor_Specific_Config_Length على 0،
حتى إذا لم يكن من المتوقّع أن يتّخذ عنصر التحكّم أي إجراء عند تلقّي هذا الأمر.
نقطة وقت الإرسال
يتم إصدار الحدث من بداية فاصل زمني ISO (نقطة ارتساء CIG أو BIG) إلى الفاصل الزمني ISO التالي. يشير جهاز التحكّم إلى التأخير مع بداية الفترة الزمنية الفعّالة وفقًا لمعيار ISO باستخدامAnchor_Point_Delay.
مزامنة وحدة التحكّم
في بداية فاصل زمني ISO، يحسب جهاز التحكّم StreamSN عن طريق زيادة القيمة الحالية بمقدارISO_Interval ÷ SDU_Interval الذي تم ضبطه. وفي الفاصل الزمني الأول، يتم ضبط القيمة على 0.بعد ذلك، ينطبق ما يلي على كل حزمة في ISO FIFO:
-
يحسب وحدة التحكّم الفرق في الالتفاف SNdiff بين رقمَي التسلسل:
SNdiff = (SDUSN - StreamSN + 0x10000) mod 0x10000 - عندما
(SNdiff + (FT-1) × ISO_Interval ÷ SDU_Interval) mod 0x10000 <= (FT-1) × ISO_Interval ÷ SDU_Interval:
تكون الحزمة ضمن فترة إعادة الإرسال. كان من المفترض أن يتم تحديد موعد لإرسالها في فترات سابقة، وهي متاحة الآن لإعادة إرسالها. إذا لم يكن الأمر كذلك (لم تتم جدولة عملية الإرسال)، سيتم تصنيفها على أنّها تم استلامها متأخرة. يجب إرسال إشارة إلى المضيف باستخدام السمةIn_Status. ويمكن تجاهل هذه الحِزم أو تحديد موعد لإرسالها، ويكون هذا الخيار محدّدًا حسب التنفيذ. - أو عند
SNdiff < ISO_Interval ÷ SDU_Interval:
يتم تحديد موعد لإرسال الحزمة من هذا الحدث إلى أن تنتهي مهلة الإفراغ. - أو عندما تكون قيمة
SNdiff >= ISO_Interval ÷ SDU_IntervalوSNdiff <= Max_Forward_Buffers:
الحزمة في المستقبل، وسيتم إرسالها مع حدث لاحق. بما أنّ الحِزم يتم إرسالها بالترتيب، تنهي هذه الحالة البحث عن الحِزم لهذه الفترة الزمنية.
لا يتم إبلاغ وحدة التحكّم بالمخازن المؤقتة التي يستخدمها المضيف، ولكن يقتصر حجمها علىMax_Forward_Buffers = 16. - أو في حال عدم استيفاء أي من الشروط أعلاه:
يتم تجاهل الحزمة، أو يتم بلوغ الحد الأقصى لمهلة الإفراغ، أو تم استلام حزمة غير صالحة.
| مَعلمة الحدث الفرعي | الحجم | الغرض |
|---|---|---|
Connection_Handle |
وحدتا ثمانيّة البت |
معرّف الاتصال الخاص بنظام معلومات المستهلك (CIS) أو نظام معلومات العمل (BIS) النطاق: من 0x0000 إلى 0x0EFF |
Sequence_Number |
وحدتا ثمانيّة البت |
الرقم التسلسلي للبث، وتديره وحدة التحكّم. يتم ضبط القيمة المبدئية على 0 عند إنشاء CIS أو BIS، ويتم زيادتها بعدد وحدات بيانات الخدمة (SDU) حسب الفاصل الزمني المتزامن ISO، والمحدّد على أنّه ISO_interval ÷ SDU_Interval،
في كل فاصل زمني ISO.
|
Anchor_Point_Delay |
وحدتا ثمانيّة البت |
تمثّل هذه السمة التأخير بالميكروثانية بين إنشاء الحدث ونقطة الارتكاز الفعّالة لـ BIG أو CIG أو بداية الفاصل الزمني ISO.
يتم تحديد الطابع الزمني لنقطة الارتساء الفعّالة من خلال:Event generation time - Anchor_Point_Delay
النطاق: من 0 إلى فاصل ISO الزمني بالميكرو ثانية |
In_Status |
وحدتا ثمانيّة البت |
حالة المخزن المؤقت لمعيار ISO في وحدة التحكّم في بداية فاصل زمني لمعيار ISO، يتم ضبط كل بت bi عندما تكون وحدة بيانات الخدمة (SDU) (Sequence_Number + i) mod 0x10000 متاحة. عندما لا يكون متاحًا، يتم تحديد وحدة بيانات الخدمة (SDU) على أنّها Not received from the host.تتراوح قيمة i بين 0 و ISO_Interval ÷ SDU_Interval - 1.
بالنسبة إلى القيم الأخرى i، يتم ضبط وحدات البت على 0.
|
Tx_Status |
وحدتا ثمانيّة البت |
حالة الإرسال، بالنسبة إلى وحدات بيانات الخدمة التي تتضمّن أرقام تسلسلية:(Sequence_Number - Flush_Timeout × ISO_Interval ÷ SDU_Interval + i + 0x10000)
mod 0x10000
يتم ضبط كل بت bi عند إرسال جميع وحدات بيانات البروتوكول (PDU) الخاصة بوحدة بيانات الخدمة (SDU) المحدّدة بنجاح، وعند تلقّي إقرار باستلامها، وذلك حسب رقم التسلسل. تتراوح القيمة i بين 0 و ISO_Interval ÷ SDU_Interval - 1.
بالنسبة إلى القيم الأخرى i، يتم ضبط وحدات البت على 0.في مجموعة البث، من المفترض دائمًا أن يتم تأكيد عملية الإرسال. |
دعم المعلِنين المتعدّدين
في ما يلي أهداف ميزة "دعم المعلِنين المتعدّدين":
-
إمكانية عرض إعلانات متعدّدة
(
max_advt_instances) - مستويات طاقة إرسال مختلفة للسماح بنطاق متفاوت
- محتوى إعلاني مختلف
- ردّ مخصّص لكل معلِن
- الخصوصية (غير قابلة للتتبُّع) لكل معلِن
- قابلة للربط
لإبقاء هذه المواصفات قريبة من المعايير الحالية، يتم توفير الأوامر التالية الخاصة بالمورّد. وهي مستمدة من مواصفات Bluetooth Core 4.1.
LE_Multi_Advt_Command
OCF: 0x154
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
Multi_advt_opcode |
وحدة ثمانيّة البت |
0x01 - Set_Advt_Param_Multi_Sub_Cmd0x02 - Set_Advt_Data_Multi_Sub_Cmd0x03 - Set_Scan_Resp_Data_Multi_Sub_Cmd0x04 - Set_Random_Addr_Multi_Sub_Cmd0x05 - Set_Advt_Enable_Multi_Sub_Cmd
|
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Multi_advt_opcode |
وحدة ثمانيّة البت |
0x01 - Set_Advt_Param_Multi_Command0x02 - Set_Advt_Data_Multi_Command0x03 - Set_Scan_Resp_Data_Multi_Command0x04 - Set_Random_Addr_Multi_Command0x05 - Set_Advt_Enable_Multi_Command
|
LE_Multi_Advt_Command: Set_Advt_Param_Multi_Sub_Cmd
المصدر الأساسي: مواصفات Bluetooth Core 4.1، الصفحة 964 (الأمر LE Set Advertising Parameter)
Sub OCF: 0x01
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
Advertising_Interval_Min |
لكل مواصفة | لكل مواصفة |
Advertising_Interval_Max |
لكل مواصفة | لكل مواصفة |
Advertising_Type |
لكل مواصفة | لكل مواصفة |
Own_Address_Type |
لكل مواصفة | لكل مواصفة |
Own_Address |
لكل مواصفة | لكل مواصفة |
Direct_Address_Type |
لكل مواصفة | لكل مواصفة |
Direct_Address |
لكل مواصفة | لكل مواصفة |
Advertising_Channel_Map |
لكل مواصفة | لكل مواصفة |
Adverstising_Filter_Policy |
لكل مواصفة | لكل مواصفة |
Advertising_Instance |
وحدة ثمانيّة البت | تحدّد هذه السمة مدى انطباق المَعلمات أعلاه على مثيل |
Tx_power |
وحدة ثمانيّة البت |
Transmit_Power الوحدة - بالديسيبل ميللي واط (عدد صحيح بعلامة) النطاق (-70 إلى +20) |
يمكن أن تكون المَعلمة Own_Address عنوانًا تم ضبطه من قِبل المضيف
في وقت إعداد مثيل الإعلانات المتعددة هذا. يتيح ذلك الحصول على عنوان خاص يمكن حله عند إرسال أول إشارة. سيستمر عرض الإعلانات على الجهاز الافتراضي بغض النظر عن حالة الاتصال. يمكن لمجموعة برامج البلوتوث المضيفة إصدار أمر لبدء عرض الإعلانات على مثيل بعد الاتصال.
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر كما هو محدّد
في مواصفات Bluetooth Core 4.1، لكل أمر من الأوامر أعلاه. سيستجيب عنصر التحكّم برمز غير ناجح (مَعلمة غير صالحة) إذا كانت مَعلمات مثيل الإعلان أو Tx_Power غير صالحة.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Multi_advt_opcode |
وحدة ثمانيّة البت | 0x01 [Set_Advt_Param_Multi_Sub_Cmd] |
LE_Multi_Advt_Command: Set_Advt_Data_Multi_Sub_Cmd
المستند المرجعي الأساسي: مواصفات Bluetooth Core 4.1، الصفحة 969 (الأمر LE Set Advertising Data)
رمز الوظيفة الفرعية: 0x02
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
Advertising_Data_Length |
لكل مواصفة | لكل مواصفة |
Advertising_Data |
لكل مواصفة | لكل مواصفة |
Advertising_Instance |
وحدة ثمانيّة البت | تحدّد هذه السمة مدى انطباق المَعلمات أعلاه على مثيل |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر كما هو محدّد
في مواصفات Bluetooth Core 4.1، لكل أمر من الأوامر أعلاه. سيستجيب
وحدة التحكّم برمز غير ناجح إذا كانت مَعلمات
مثيل الإعلان أو Tx_Power غير صالحة.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Multi_advt_opcode |
وحدة ثمانيّة البت | 0x02 [Set_Advt_Data_Multi_Sub_Cmd] |
LE_Multi_Advt_Command: Set_Scan_Resp_Data_Multi_Sub_Cmd
المستند الأساسي: مواصفات Bluetooth Core 4.1، الصفحة 970 (أمر بيانات استجابة البحث عن مجموعة LE )
Sub OCF: 0x03
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
Scan_Response_Data_Length |
لكل مواصفة | لكل مواصفة |
Scan_Response_Data |
لكل مواصفة | لكل مواصفة |
Advertising_Instance |
وحدة ثمانيّة البت | تحدّد هذه السمة مدى انطباق المَعلمات أعلاه على مثيل |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر كما هو محدّد
في مواصفات Bluetooth Core 4.1، لكل أمر من الأوامر أعلاه. سيستجيب عنصر التحكّم برمز غير ناجح (مَعلمة غير صالحة) إذا كانت مَعلمات مثيل الإعلان أو Tx_Power غير صالحة.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Multi_advt_opcode |
وحدة ثمانيّة البت | 0x03 [Set_Scan_Resp_Data_Multi_Sub_Cmd] |
LE_Multi_Advt_Command: Set_Random_Addr_Multi_Sub_Cmd
المستند الأساسي: مواصفات Bluetooth Core 4.1، الصفحة 963 (الأمر LE Set Random Address)
رمز العملية الفرعية: 0x04
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
| عنوان عشوائي | لكل مواصفة | لكل مواصفة |
Advertising_Instance |
وحدة ثمانيّة البت | تحدّد هذه السمة مدى انطباق المَعلمات أعلاه على مثيل |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Multi_advt_opcode |
وحدة ثمانيّة البت | 0x04 [Set_Random_Addr_Multi_Sub_Cmd] |
LE_Multi_Advt_Command: Set_Advt_Enable_Multi_Sub_Cmd
المستند الأساسي: مواصفات Bluetooth Core 4.1، الصفحة 971 (الأمر LE Set Advertise Enable Command في هذه المواصفات الأساسية)
OCF: 0x05
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
Advertising_Enable |
وحدة ثمانيّة البت | تشير القيمة 1 إلى التفعيل. تعني أي قيمة أخرى إيقاف الميزة. |
Advertising_Instance |
وحدة ثمانيّة البت | تحدّد هذه السمة مدى انطباق المَعلمات أعلاه على مثيل. يشير المثيل 0 إلى مثيل HCI عادي. |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Multi_advt_opcode |
وحدة ثمانيّة البت | 0x05 [Set_Advt_Enable_Multi_Sub_Cmd] |
إيقاف حلّ العنوان الخاص
تتيح هذه الميزة حلّ مشكلة العنوان الخاص في البرامج الثابتة أو الأجهزة الخاصة بوحدة التحكّم، ما يوفّر المزايا التالية:
- وقت الاستجابة الذي يستغرقه المضيف في حلّ عنوان خاص
- توفير الطاقة من خلال عدم تنبيه الجهاز المضيف
LE_Set_RPA_Timeout
OCF: 0x15C
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
LE_local_IRK |
16 octet | مفتاح حل الهوية(IRK) الخاص بالجهاز المحلي والمستخدَم لإنشاء العناوين العشوائية القابلة للحل. |
tRPA_min |
وحدتا ثمانيّة البت |
الحد الأدنى لمهلة إنشاء RPA بالثواني. يجب أن ينشئ جهاز التحكّم عناوين جديدة قابلة للتحديد لأي أحداث إعلان/بحث/ربط تحدث بعد انتهاء المهلة. النطاق الصحيح: 300-1800 |
tRPA_max |
وحدتا ثمانيّة البت |
الحد الأقصى لمهلة إنشاء رمز RPA بالثواني. يجب أن ينشئ وحدة التحكّم عناوين جديدة قابلة للحلّ لأي أحداث إعلان/فحص/ربط في أو قبل انتهاء المهلة. النطاق الصحيح: tRPA_min-1800
|
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت |
تمثّل هذه السمة حالة الأمر. قيم حالة HCI المقترَحة: 0x00 Success 0x01 Unknown command (إذا لم يكن مدعومًا) 0x12 Invalid command parameters (إذا كانت أي معلَمات خارج النطاق المحدّد) |
LE_RPA_offload_Command
OCF: 0x155
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
RPA_offload_opcode |
وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - إضافة مفتاح حل التتبُّع إلى القائمة 0x3 - إزالة مفتاح حل التتبُّع من القائمة 0x4 - محو قائمة مفاتيح حل التتبُّع 0x5 - قراءة إدخال قائمة مفاتيح حل التتبُّع |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Event_RPA_offload_opcode |
وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - إضافة مفتاح حل التتبُّع إلى القائمة 0x3 - إزالة مفتاح حل التتبُّع من القائمة 0x4 - محو قائمة مفاتيح حل التتبُّع 0x5 - قراءة إدخال قائمة مفاتيح حل التتبُّع |
LE_RPA_offload: Enable_cust_specific_sub_Command
Sub OCF: 0x01
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
enable_customer_specific_feature_set |
وحدة ثمانيّة البت |
0x01 - تفعيل ميزة RPA التي يتم نقل بياناتها 0x00 - إيقاف ميزة RPA التي يتم نقل بياناتها |
يجب أن يفعّل المضيف ميزة نقل مهام RPA استنادًا إلى إمكانات الشريحة. يُرجى الرجوع إلى LE_Get_Vendor_Capabilities_Command.
يمكن أن يكون لكل شريحة max_irk_list_sz مختلف في البرامج الثابتة.
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Event_cust_specific_feature_opcode |
وحدة ثمانيّة البت | 0x01 [تفعيل ميزة خاصة بالعميل] |
LE_RPA_offload: Add_IRK_to_list_sub_Command
رمز الوظيفة الفرعية: 0x02
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
LE_IRK |
16 ثمانية بت | LE IRK (أقل بايت أهمية) |
Address_Type |
وحدة ثمانيّة البت |
0: العنوان العلني 1: العنوان العشوائي |
LE_Device_Address |
6 وحدات ثمانيّة البت | العنوان العام أو العشوائي المرتبط بمفتاح حل التشفير (وحدة البايت الأولى LSB) |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Event_cust_specific_feature_opcode |
وحدة ثمانيّة البت | 0x02 [إضافة مفتاح استرداد إلى القائمة] |
LE_IrkList_AvailableSpaces |
وحدة ثمانيّة البت | إدخالات قائمة IRL المتاحة بعد العملية الحالية |
LE_RPA_offload: Remove_IRK_to_list_sub_Command
Sub OCF: 0x03
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
Address_Type |
وحدة ثمانيّة البت |
0: العنوان العلني 1: العنوان العشوائي |
LE_Device_Address |
6 وحدات ثمانيّة البت | عنوان عام أو عشوائي مرتبط بمفتاح استرداد الهوية |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Event_cust_specific_feature_opcode |
وحدة ثمانيّة البت | 0x03 [إزالة مفتاح حل التتبع العشوائي من القائمة] |
LE_IrkList_AvailableSpaces |
وحدة ثمانيّة البت | إدخالات قائمة IRL المتاحة بعد العملية الحالية |
LE_RPA_offload: Clear_IRK_list_sub_Command
رمز العملية الفرعية: 0x04
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
| بدون |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Event_cust_specific_feature_opcode |
وحدة ثمانيّة البت | 0x04 [محو قائمة مفاتيح حل التتبُّع] |
LE_IrkList_AvailableSpaces |
وحدة ثمانيّة البت |
إدخالات قائمة عناوين URL غير صالحة بعد العملية الحالية [max_irk_list_sz]
|
LE_RPA_offload: Read_IRK_list_sub_Command
Sub OCF: 0x05
| مَعلمة الأمر الفرعي | الحجم | الغرض |
|---|---|---|
LE_read_IRK_list_entry-index |
وحدة ثمانيّة البت | فهرس قائمة مفاتيح الاسترداد [0, max_irk_list_sz-1] |
سيتم إنشاء حدث "اكتمل الأمر" لهذا الأمر.
| معلَمة الإرجاع | الحجم | الغرض |
|---|---|---|
Status |
وحدة ثمانيّة البت | حالة "اكتمل الطلب" |
Event_cust_specific_feature_opcode |
وحدة ثمانيّة البت | 0x05 [Read IRK List Entry] |
LE_Read_IRK_List_entry |
وحدة ثمانيّة البت | فهرس مفتاح استرداد المعلومات (IRK) الذي يريد المضيف قراءته (الحد الأقصى لحجم قائمة مفاتيح استرداد المعلومات هو 32) |
LE_IRK |
16 ثمانية | قيمة IRK |
Address_Type |
وحدة ثمانيّة البت |
0: العنوان العلني 1: العنوان العشوائي |
LE_Device_Address |
6 وحدات ثمانيّة البت | عنوان عام أو عشوائي مرتبط بمفتاح حل التتبع |
LE_Resolved_Private_Address |
6 وحدات ثمانيّة البت | عنوان IRK الخاص الحالي القابل للحل |
Sniff Offload
تتيح ميزة "تفريغ عملية الاستشعار" نقل إدارة وضع الاستشعار من حزمة مضيف البلوتوث إلى وحدة تحكّم البلوتوث. يتيح ذلك لجهاز التحكّم إدارة توقيت الدخول إلى وضع Sniff والخروج منه وتطبيق مَعلمات Sniff ومَعلمات التقييم الفرعي القابلة للضبط، بينما يحتفظ الجهاز المضيف بالتحكّم في اختيار المَعلمات استنادًا إلى تغييرات نشاط ملف Bluetooth.
حالات تفريغ Sniff
يحدّد هذا القسم الحالات التي يكون فيها جهاز التحكّم في البلوتوث بالنسبة إلى وظيفة Sniff Offload. تم تحديد حالتين عامتين لتحديد حالة وحدة التحكّم عبر البلوتوث فيما يتعلق بتفعيل ميزة "تفريغ عمليات البحث". تم تحديد حالتين خاصتين بالاتصال لتحديد حالة اتصال BR/EDR عندما تكون وحدة التحكّم في البلوتوث في حالة "تفعيل ميزة Sniff Offload".
الحالات العالمية
تم تحديد حالتين عامتين لتحديد حالة وحدة التحكّم في البلوتوث فيما يتعلق بتفعيل ميزة "تفريغ بيانات الاستشعار".
Sniff Offload Disabled State
يتم تلقائيًا اعتبار وحدة التحكّم عبر البلوتوث في حالة "إيقاف ميزة Sniff Offload". من المتوقّع أن يتعامل جهاز التحكّم في البلوتوث مع الأوامر HCI_Sniff_Mode وHCI_Exit_Sniff_Mode وHCI_Sniff_Subrating الصادرة من مضيف بلوتوث. يجب أن ترسل وحدة التحكّم التي تعمل بالبلوتوث أيضًا الحدثين HCI_Mode_Change وHCI_Sniff_Subrating إلى مضيف بلوتوث وفقًا لقناع الأحداث الذي يحدّده مضيف البلوتوث.
حالة تفعيل ميزة "تفريغ عمليات البحث"
تُعدّ وحدة التحكّم التي تعمل بتقنية Bluetooth في حالة "تفعيل ميزة Sniff Offload" بعد أن تتعامل بنجاح مع الأمر WriteSniffOffloadEnable لتفعيل ميزة Sniff Offload. في هذه الحالة، من المتوقّع أن تعيد وحدة تحكّم البلوتوث توجيه أحداث HCI_Mode_Change وHCI_Sniff_Subrating إلى مضيف بلوتوث على النحو الذي تحدّده دالة AND المنطقية لقناع الحدث الذي يحدّده مضيف البلوتوث وعلامات منع الأحداث.
حالات الاتصال المحدّدة
عندما يكون جهاز التحكّم Bluetooth في حالة "تفعيل ميزة Sniff Offload"، يمكن أن تكون كل قناة ACL نشطة في إحدى الحالتَين الموضّحتَين أدناه.
حالة المَعلمة في انتظار المراجعة
تُعدّ قائمة التحكّم بالوصول في حالة "في انتظار المَعلمات" عندما يكون جهاز التحكّم في البلوتوث في حالة "تفعيل ميزة Sniff Offload"، ولكن لم يتم إصدار أمر خاص بالمورّد "WriteSniffOffloadParameters" مرة واحدة على الأقل من مضيف البلوتوث لقائمة التحكّم بالوصول الحالية.
الحالة "بدء التحكّم"
تُعتبر قائمة التحكّم بالوصول في حالة "بدء التحكّم" عندما يكون جهاز التحكّم في البلوتوث في حالة "تفعيل ميزة Sniff Offload"، وعندما يتم إصدار أمر خاص بالمورّد باسم WriteSniffOffloadParameters مرة واحدة على الأقل من خلال مضيف البلوتوث لقائمة التحكّم بالوصول الحالية.
WriteSniffOffloadEnable
OCF: 0x310
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
Enable_Sniff_Offload |
وحدة ثمانيّة البت | 0x00 : إيقاف 0x01 : تفعيل |
Subrating_Max_Latency |
وحدتا ثمانيّة البت | يجب استخدام مَعلمة "الحد الأقصى لوقت الاستجابة" لاحتساب الحد الأقصى لمعدل الاستنشاق الفرعي الذي يمكن أن يستخدمه الجهاز البعيد. القيمة التلقائية: T*sniff* Latency = N × 0.625 ms (فتحة واحدة للنطاق الأساسي) النطاق: من 0x0002 إلى 0xFFFE، نطاق الوقت: من 1.25 ملي ثانية إلى 40.9 ثانية |
Subrating_Min_Remote_Timeout |
وحدتا ثمانيّة البت | الحد الأدنى لمهلة وضع الاستشعار (T*sniff_mode_timeout*) التي يمكن للجهاز البعيد استخدامها القيمة التلقائية: 0x0000 المهلة = N × 0.625 ملي ثانية (1 فتحة نطاق أساسي) النطاق: من 0x0000 إلى 0xFFFE الوقت النطاق: من 0 ثانية إلى 40.9 ثانية |
Subrating_Min_Local_Timeout |
وحدتا ثمانيّة البت | الحد الأدنى لمهلة وضع التتبُّع (T*sniff_mode_timeout*) التي يمكن للجهاز المحلي استخدامها القيمة التلقائية: 0x0000، المهلة = N × 0.625 ملي ثانية (فتحة النطاق الأساسي 1)، النطاق: من 0x0000 إلى 0xFFFE، النطاق الزمني: من 0 ثانية إلى 40.9 ثانية |
Suppress_Mode_Change_Event |
وحدة ثمانيّة البت | 0x00 : على وحدة تحكّم البلوتوث إرسال حدث Mode_Change الخاص بواجهة وحدة تحكّم المضيف إلى المضيف
وفقًا للإعدادات المحدّدة في الأمر HCI_Set_Event_Mask. 0x01 : على وحدة تحكّم البلوتوث عدم إرسال حدث Mode_Change الخاص بواجهة وحدة تحكّم المضيف إلى المضيف. |
Suppress_Sniff_Subrating_Event |
وحدة ثمانيّة البت | 0x00 : على وحدة التحكّم في البلوتوث إبلاغ المضيف بحدث HCI Sniff_Subrating
وفقًا للإعدادات المحدّدة في الأمر HCI_Set_Event_Mask. 0x01 : على وحدة التحكّم في البلوتوث عدم إبلاغ المضيف بحدث HCI Sniff_Subrating. |
WriteSniffOffloadParameters
OCF: 0x311
| مَعلمة الأمر | الحجم | الغرض |
|---|---|---|
Connection_Handle |
وحدتا ثمانيّة البت | معرّف اتصال ACL لبروتوكول BR/EDR 16 بت النطاق: من 0x0000 إلى 0x0EFF |
Sniff_Max_Interval |
وحدتا ثمانيّة البت | –النطاق الذي حدّدته مجموعة Bluetooth SIG، ويُستخدم عادةً للدخول إلى وضع "التتبُّع". النطاق: من 0x0002 إلى 0xFFFE، القيم الزوجية فقط هي القيم الصالحة. النطاق الإلزامي: من 0x0006 إلى 0x0540، الوقت = N × 0.625 مللي ثانية، نطاق الوقت: من 1.25 مللي ثانية إلى 40.9 ثانية – الحالات الخاصة 0x0000 : تُستخدَم لتحديد وضع "التشغيل النشط" (Push-Active) لوضع Sniff-Offload. 0x0001 : يُستخدم لتحديد وضع "إيقاف الاستنشاق" مع إعطاء الأولوية للوضع النشط. |
Sniff_Min_Interval |
وحدتا ثمانيّة البت | النطاق: من 0x0002 إلى 0xFFFE، القيم الزوجية فقط هي القيم الصالحة. النطاق الإلزامي: من 0x0006 إلى 0x0540 الوقت = N × 0.625 مللي ثانية نطاق الوقت: من 1.25 مللي ثانية إلى 40.9 ثانية |
Sniff_Attempts |
وحدتا ثمانيّة البت | تمثّل عدد خانات الاستقبال في النطاق الأساسي لمحاولة الاستنشاق. Length = N × 1.25 ms Range: 0x0001 to 0x7FFF Time Range: 1.25 ms to 40.9 s Mandatory Range for Controller: 1 to T*sniff* ÷ 2 |
Sniff_Timeout |
وحدتا ثمانيّة البت | عدد خانات استلام Baseband لمهلة انتهاء وقت البحث. الطول = N × 1.25 ملي ثانية النطاق: من 0x0000 إلى 0x7FFF النطاق الزمني: من 0 ملي ثانية إلى 40.9 ثانية النطاق الإلزامي لوحدة التحكّم: من 0 إلى 0x0028 |
Link_Inactivity_Timeout |
وحدتا ثمانيّة البت | قيمة المهلة بالمللي ثانية تم بدء/إعادة ضبط مؤقت عدم النشاط المرتبط بالرابط عند كل معاملة HCI-ACL. عند انتهاء مدة هذا المؤقت، سيبدأ جهاز التحكّم وضع Sniff. |
Subrating_Max_Latency |
وحدتا ثمانيّة البت | يجب استخدام مَعلمة "الحد الأقصى لوقت الاستجابة" لاحتساب الحد الأقصى لمعدل الاستنشاق الفرعي الذي يمكن أن يستخدمه الجهاز البعيد. القيمة التلقائية: T*sniff* Latency = N × 0.625 ms (فتحة واحدة للنطاق الأساسي) النطاق: من 0x0002 إلى 0xFFFE، نطاق الوقت: من 1.25 ملي ثانية إلى 40.9 ثانية |
Subrating_Min_Remote_Timeout |
وحدتا ثمانيّة البت | الحد الأدنى لمهلة وضع الاستشعار (T*sniff_mode_timeout*) التي يمكن للجهاز البعيد استخدامها القيمة التلقائية: 0x0000 المهلة = N × 0.625 ملي ثانية (1 فتحة نطاق أساسي) النطاق: من 0x0000 إلى 0xFFFE الوقت النطاق: من 0 ثانية إلى 40.9 ثانية |
Subrating_Min_Local_Timeout |
وحدتا ثمانيّة البت | الحد الأدنى لمهلة وضع التتبُّع (T*sniff_mode_timeout*) التي يمكن للجهاز المحلي استخدامها القيمة التلقائية: 0x0000، المهلة = N × 0.625 ملي ثانية (فتحة النطاق الأساسي 1)، النطاق: من 0x0000 إلى 0xFFFE، النطاق الزمني: من 0 ثانية إلى 40.9 ثانية |
Allow_Exit_Sniff_On_Rx |
وحدة ثمانيّة البت | علامة للتحكّم في الخروج من وضع Sniff عند تلقّي معاملة HCI-ACL في اتجاه الاستلام 0x00 : Do not exit sniff on Rx. 0x01 : الخروج من وضع "التنصّت" عند استقبال حزمة في اتجاه الاستقبال من واجهة HCI-ACL، ويتم تحديدها على أنّها حزمة ACL يتم إرسالها من وحدة التحكّم إلى الجهاز المضيف عبر واجهة HCI. |
Allow_Exit_Sniff_On_Tx |
وحدة ثمانيّة البت | علامة للتحكّم في الخروج من وضع "الاستنشاق" عند إجراء معاملة HCI-ACL في اتجاه الإرسال 0x00 : Do not exit sniff on Tx. 0x01 : Exit Sniff on Tx Transmit-direction HCI-ACL is defined as ACL packet transmission from host to controller over HCI. |