تُستخدَم واجهة Host Controller Interface (HCI) للتفاعل مع وحدة تحكّم تعمل بالبلوتوث.
يقدّم هذا المستند قائمة بمتطلبات وحدة التحكّم في المضيف (HCI) لتقنية البلوتوث (BT) وتقنية البلوتوث المنخفضة الاستهلاك (BLE). والهدف من ذلك هو أن يمتثل مورّدو حِزم BT المستضافة ومورّدو أدوات التحكّم في BT لمتطلبات المنصة هذه من أجل استخدام مجموعة الميزات الموضّحة أدناه.
يشير هذا المستند إلى مواصفات Bluetooth Core 5.2 باسم "المواصفات". تتوفّر مواصفات Bluetooth Core 5.2 على الموقع الإلكتروني لـ Bluetooth SIG بالإضافة إلى المستندات الأخرى المعتمَدة.
نظرة عامة على التصميم العام
إمكانات الشريحة وإعداداتها
بما أنّ Android هو نظام أساسي مفتوح، يتضمّن مصفوفة من إصدارات البرامج والمصنّعين الأصليين للأجهزة والمورّدين وإمكانات النظام الأساسي والرقاقة.
لإدارة المنظومة المتنوّعة وإدارة عمليات نقل البيانات، تم توضيح فلسفة التصميم التي تسمح لأجهزة التحكّم في البلوتوث بعرض إمكاناتها (أبعد مما هو مذكور في مواصفات Bluetooth Core 5.2 العادية) في هذا المستند. يمكن بعد ذلك لحزمة BT المضيف استخدام هذه الإمكانات لتحديد الميزات التي يجب تفعيلها.
التوافق مع المعايير المفتوحة
يهدف نظام Android إلى إتاحة المعايير المفتوحة بعد الموافقة عليها في أحد مواصفات تقنية البلوتوث. إذا أصبحت إحدى الميزات الموضّحة أدناه متاحة في طرق HCI العادية في مواصفات مستقبلية لتقنية البلوتوث، سنميل إلى جعل هذا النهج هو الإعداد التلقائي.
الإمكانات الخاصة بالمورّد
الأمر الخاص بالمورّد: LE_Get_Vendor_Capabilities_Command
حقل رمز التشغيل (OCF): 0x153
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
NA | قائمة مَعلمات الأمر فارغة |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
max_advt_instances (ميزة متوقّفة نهائيًا) |
1 وحدة ثمانيّة البت |
عدد مثيلات الإعلانات المتوافقة. محجوز بعد الإصدار 0.98. تم إيقاف هذه المَعلمة نهائيًا في الإصدار 0.98 من مواصفات ميزات Google والإصدارات الأحدث، وذلك لصالح الإعلان الموسّع في LE المتاح في الإصدار 5.0 من مواصفات BT والإصدارات الأحدث. |
offloaded_resolution_of_private-address (ميزة متوقّفة نهائيًا) |
1 وحدة ثمانيّة البت |
إمكانات شريحة BT في تكنولوجيات الذكاء الاصطناعي المعالجة للعمليات إذا كانت الشريحة تتيح ذلك، يجب أن يفعّلها المضيف. 0 = غير متوافق 1 = متوافق محجوز بعد الإصدار 0.98. تم إيقاف هذه المَعلمة نهائيًا في الإصدار 0.98 من مواصفات ميزات Google والإصدارات الأحدث، وذلك لصالح ميزة الخصوصية المتوفّرة في الإصدار 4.2 من مواصفات BT والإصدارات الأحدث. |
total_scan_results_storage |
وحدتان ثمانيتَان | مساحة التخزين لنتائج الفحص بالبايت |
max_irk_list_sz |
1 وحدة ثمانيّة البت | عدد إدخالات مفتاح الربط المؤقت (IRK) المتوافقة في البرامج الثابتة |
filtering_support |
1 وحدة ثمانيّة البت |
توفُّر ميزة الفلترة في وحدة التحكّم 0 = غير متوفّرة 1 = متوفّرة |
max_filter |
1 وحدة ثمانيّة البت | عدد الفلاتر المتاحة |
activity_energy_info_support |
1 وحدة ثمانيّة البت |
يتيح إعداد تقارير عن معلومات النشاط والطاقة 0 = غير مزوّد بهذه الميزة 1 = مزوّد بهذه الميزة |
version_supported |
وحدتان ثمانيتَان |
يحدِّد الإصدار المتوافق من مواصفات ميزات Google البايت[0] = الرقم الرئيسي البايت[1] = الرقم الثانوي الإصدار 1.05 البايت[0] = 0x01 البايت[1] = 0x05 |
total_num_of_advt_tracked |
وحدتان ثمانيتَان |
إجمالي عدد المعلِنين الذين يتم تتبُّعهم لأغراض OnLost /OnFound
|
extended_scan_support |
1 وحدة ثمانيّة البت | يتيح استخدام فترة فحص وفواصل زمنية ممتدة |
debug_logging_supported |
1 وحدة ثمانيّة البت | إتاحة تسجيل معلومات تصحيح الأخطاء الثنائية من وحدة التحكّم |
LE_address_generation_offloading_support (ميزة متوقّفة نهائيًا) |
1 وحدة ثمانيّة البت |
0 = غير متاح 1 = متاح محجوز بعد الإصدار 0.98. تم إيقاف هذه المَعلمة نهائيًا في الإصدار 0.98 من مواصفات ميزات Google والإصدارات الأحدث، وذلك لصالح ميزة الخصوصية المتوفّرة في الإصدار 4.2 من مواصفات BT والإصدارات الأحدث. |
A2DP_source_offload_capability_mask |
4 ثُمانيات |
أقنعة الوحدات بت لأنواع برامج الترميز المتوافقة البت 0: SBC البت 1: الترميز المتقدّم للصوت البت 2: APTX البت 3: APTX HD البت 4: LDAC يتم حجز البتات من 5 إلى 31 |
bluetooth_quality_report_support |
1 وحدة ثمانيّة البت |
يتيح الإبلاغ عن أحداث جودة البلوتوث 0 = غير متوافق 1 = متوافق |
dynamic_audio_buffer_support |
4 وحدات ثمانيّة |
يتوافق مع وحدة تخزين مؤقت ديناميكية للصوت في وحدة تحكّم البلوتوث أقنعة الوحدات لأنواع برامج الترميز المتوافقة الرمز 0: SBC الرمز 1: الترميز المتقدّم للصوت الرمز 2: APTX الرمز 3: APTX HD الرمز 4: LDAC الرمز من 5 إلى 31 محجوز |
a2dp_offload_v2_support |
1 وحدة ثمانيّة البت |
توفُّر أوامر A2DP offload v2 في وحدة التحكّم في البلوتوث (راجِع
بدء نقل بيانات A2DP،
إيقاف نقل بيانات A2DP) 0 = غير متاحة 1 = متاحة |
iso_link_feedback_support |
1 وحدة ثمانيّة البت |
يتيح الحدث ISO Link Feedback 0 = غير متاحة 1 = متاحة |
نتائج فحص الدفعات
يهدف التصميم إلى تحسين طريقة إرسال إشعارات حدث "استجابة المسح الضوئي في البلوتوث منخفض الطاقة" إلى المضيف، وذلك لتوفير الطاقة في المضيف.
من خلال تقليل عدد المرات التي يُرسِل فيها جهاز التحكّم إشعارًا إلى معالج التطبيق المضيف
لفحص النتائج، يمكن أن يظل معالج التطبيق المضيف في حالة راحة/إيقاف لفترة أطول. ويؤدي ذلك إلى تقليل استهلاك الطاقة في المضيف. تشير المَعلمة return
total_scan_results_storage
من
LE_Get_Vendor_Capabilities_Command
إلى قدرة الشريحة
على تخزين نتائج المسح.
تركّز هذه الميزة على إدارة وضبط ميزة "البحث منخفض الطاقة" ومرافق تخزين النتائج في وحدة تحكّم البلوتوث. يتم استخدام مساحة التخزين لتجميع بيانات الإعلانات مؤقتًا وفحص البيانات والبيانات الوصفية التي يتلقّاها جهاز التحكّم لتسليمها لاحقًا إلى المضيف.
يجب أن تتيح البرامج الثابتة نوعَين من تجميع البيانات، ويمكن تفعيلهما في الوقت نفسه:
- تم اقتطاعها. يحتوي على عناصر المعلومات التالية: {MAC, TX Power, RSSI, Timestamp}
- كامل يحتوي على عناصر المعلومات التالية: {MAC, TX Power, RSSI, Timestamp, Adv Data, Scan Response}
LE_Batch_Scan_Command
OCF: 0x156
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
Batch_Scan_opcode |
1 وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - ضبط مَعلمات مساحة تخزين "البحث المجمّع" 0x3 - ضبط مَعلمات "البحث المجمّع" 0x4 - قراءة مَعلمات نتيجة "البحث المجمّع" |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر. لا يؤدي تفعيل الميزة الخاصة بالعميل إلى بدء عملية المسح.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Batch_Scan_opcode |
1 وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - ضبط مَعلمات مساحة تخزين "البحث المجمّع" 0x3 - ضبط مَعلمات "البحث المجمّع" 0x4 - قراءة مَعلمات نتيجة "البحث المجمّع" |
LE_Batch_Scan_Command: تفعيل ميزة خاصة بالعميل
رقم تعريف التحكم الفرعي في الإطار: 0x01
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
enable_customer_specific_feature_set |
1 وحدة ثمانيّة البت |
0x01 - تفعيل ميزة "مسح ملفات متعددة ضوئيًا" 0x00 - إيقاف ميزة "مسح ملفات متعددة ضوئيًا" |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Batch_Scan_opcode |
1 وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - ضبط مَعلمات مساحة تخزين "البحث المجمّع" 0x3 - ضبط مَعلمات "البحث المجمّع" 0x4 - قراءة مَعلمات نتيجة "البحث المجمّع" |
LE_Batch_Scan_Command: الأمر الفرعي لضبط مَعلمة مساحة التخزين للمسح المجمّع
التحكم الفرعي في حدود الجلسة: 0x02
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
Batch_Scan_Full_Max |
1 وحدة ثمانيّة البت |
الحد الأقصى لمساحة التخزين (بالنسبة المئوية) المخصّصة للأسلوب الكامل [النطاق: 0-100] |
Batch_Scan_Truncated_Max |
1 وحدة ثمانيّة البت |
الحد الأقصى لمساحة التخزين (بالنسبة المئوية) المخصّصة للأسلوب المقتطع [النطاق: 0-100] |
Batch_Scan_Notify_Threshold |
1 وحدة ثمانيّة البت |
إعداد مستوى الإشعار (بالنسبة المئوية) لمجموعة تخزين فردية
[النطاق: 0-100] سيؤدي ضبط القيمة على 0 إلى إيقاف الإشعار. يتم توليد حدث HCI خاص بالمورّد (حدث فرعي لانتهاك حدّ مساحة التخزين) |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Batch_scan_opcode |
1 وحدة ثمانيّة البت | 0x02 [ضبط مَعلمات "البحث المجمّع"] |
LE_Batch_Scan_Command: الأمر الفرعي لضبط مَعلمة البحث المجمّع
Sub OCF: 0x03
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
Batch_Scan_Mode |
1 وحدة ثمانيّة البت |
0x00 – البحث المجمّع غير مفعّل 0x01 – وضع الاقتطاع مفعّل 0x02 – وضع العرض الكامل مفعّل 0x03 – وضعا الاقتطاع والعرض الكامل مفعّلان |
Duty_cycle_scan_window |
4 وحدات ثمانيّة | وقت فحص "البحث المجمّع" (عدد الفتحات) |
Duty_cyle_scan_interval |
4 وحدات ثمانيّة | مدة الفاصل الزمني لفحص الدفعات (عدد الفترات) |
own_address_type |
1 وحدة ثمانيّة البت |
0x00 - عنوان الجهاز العام 0x01 - عنوان جهاز عشوائي |
Batch_scan_Discard_Rule |
1 وحدة ثمانيّة البت |
0 - تجاهل أقدم إعلان 1 - تجاهل الإعلان الذي يتضمن أدنى قيمة لـ RSSI |
سيؤدي هذا الأمر الفرعي إلى بدء فحص الدفعات، في حال كان مفعّلاً. في فحص
المقتطفات، يتم تخزين النتائج بشكل مقتطف حيث يكون المفتاح الفريد لأسلوب
المقتطفات = {BD_ADDR,
scan_interval}. وهذا يعني أنّه سيتم تسجيل
قيمة BD_ADDR will
واحدة فقط لكل فاصل فحص. يليه
السجلّ المطلوب الاحتفاظ به في الوضع المقتطع: {BD_ADDR
,
Tx Power, RSSI, Timestamp}
عند تفعيل "الوضع الكامل"، سيتم استخدام ميزة "المسح النشط" وتسجيل "استجابات المسح"
. المفتاح الفريد للأسلوب الكامل = {MAC، حزمة الإعلان}،
بغض النظر عن فاصل المسح. السجلّ المطلوب الاحتفاظ به في "الوضع الكامل" هو
{BD_ADDR
, Tx Power, RSSI, Timestamp, Ad packet, Scan
Response}. في النمط الكامل، يتم تسجيل حزمة الإعلانات نفسها مرة واحدة فقط عند ظهورها عدة مرات
على مدار فواصل فحص مختلفة. في المقابل، في
الوضع المقتطع، تكون رؤية BA_ADDR
على مستوى
فواصل فحص مختلفة هي ما يهمّ (مرة واحدة لكل فاصل فحص).
RSSI هي متوسط قيمة جميع النُسخ المكرّرة من إعلان فريد
خلال فاصل فحص.
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Batch_scan_opcode |
1 وحدة ثمانيّة البت | 0x03 [ضبط مَعلمات البحث المجمّع] |
LE_Batch_Scan_Command: الأمر الفرعي لقراءة نتائج الفحص المجمّع
Sub OCF: 0x04
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
Batch_Scan_Data_read |
1 وحدة ثمانيّة البت |
0x01 - بيانات الوضع المقتطع 0x02 - بيانات الوضع الكامل |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر. عندما يُصدر المضيف هذا الأمر، قد لا تتسع جميع النتائج في وحدة التحكّم في حدث اكتمال الأمر. سيكرّر المضيف إصدار هذا الأمر إلى أن تشير النتائج المقابلة في حدث "اكتمال الأمر" إلى 0 في عدد السجلّات، ما يشير إلى أنّ وحدة التحكّم لم تعد لديها سجلّات لإرسالها إلى المضيف. يمكن أن يحتوي كل حدث من أحداث Command Complete على سجلّات متعدّدة من نوع واحد فقط من البيانات (كاملة أو مقطوعة).
لم تتم مزامنة مراجع الوقت الخاصة بجهاز التحكّم وجهاز الاستضافة. وحدة
الطابع الزمني هي 50 ملي ثانية. تستند قيمة الطابع الزمني إلى وقت تقديم القيمة
Read_Batch_Scan_Results_Sub_cmd
من قِبل المضيف. إذا كان وقت وصول الأمر هو
T_c
في البرامج الثابتة، يكون الوقت الفعلي الذي تم فيه تسجيل الطابع الزمني
في البرامج الثابتة هو T_fw
. سيكون وقت إعداد التقارير:
(T_c
- T_fw
). T_c
و
T_fw
في نطاق وقت البرامج الثابتة. يتيح ذلك للمضيف محاسبة المدة التي مضت على وقوع الحدث.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Batch_scan_opcode |
1 وحدة ثمانيّة البت | 0x03 [ضبط مَعلمات البحث المجمّع] |
Batch_Scan_data_read |
1 وحدة ثمانيّة البت | لتحديد التنسيق (مقتطع أو كامل) |
num_of_records |
1 وحدة ثمانيّة البت | عدد سجلّات Batch_Scan_data_read |
format_of_data |
متغير |
الوضع المقتطع: Address[0]: 6 وحدات ثمانية Address_Type[0]: وحدة ثمانية واحدة Tx_Pwr[0]: وحدة ثمانية واحدة RSSI[0] : وحدة ثمانية واحدة Timestamp[0]: وحدتان ثمانيتان [سجلّات متعددة ( num_of_records ) بالتنسيق أعلاه]الوضع الكامل: Address[0]: 6 وحدات ثمانية Address_Type[0]: وحدة ثمانية واحدة Tx_Pwr[0]: وحدة ثمانية واحدة RSSI[0]: وحدة ثمانية واحدة Timestamp[0]: وحدتان ثمانيتان Adv packet_len[0]: وحدة ثمانية واحدة Adv_packet[0]: Adv_packet_len وحدات ثمانية Scan_data_resp_len[0]: وحدة ثمانية واحدة Scan_data_resp[0]: Scan_data_resp وحدة ثمانية[سجلّات متعددة بالتنسيق أعلاه ( num_of_records )]
|
فلتر محتوى الحِزم الإعلانية
استخدِم هذا الإجراء لتفعيل/إيقاف/إعداد فلتر محتوى حِزم الإعلانات (APCF) في وحدة التحكّم. تصفِّر ميزة "فلترة الإعلانات" تقارير الإعلانات في وحدة التحكّم، ولكنّها لا تصفِّر الإعلانات الدورية.
LE_APCF_Command
OCF: 0x157
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
APCF_opcode |
1 وحدة ثمانيّة البت |
0x00 - تفعيل APCF 0x01 - ضبط مَعلمات الفلترة في APCF 0x02 - عنوان المُرسِل في APCF 0x03 - معرّف UUID للخدمة في APCF 0x04 - معرّف UUID لطلب الخدمة في APCF 0x05 - الاسم المحلي في APCF 0x06 - بيانات الشركة المصنّعة في APCF 0x07 - بيانات الخدمة في APCF 0x08 - خدمة اكتشاف النقل في APCF 0x09 - فلتر نوع الإعلان في APCF 0x10 ~ 0xAF - محجوزة للاستخدام في المستقبل 0xB0 ~ 0xDF - محجوزة لمورّدي الأجهزة 0xE0 ~ 0xFE - محجوزة للاستخدام في المستقبل 0xFF - قراءة الميزات الموسّعة في APCF |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة الإرجاع |
APCF_opcode |
1 وحدة ثمانيّة البت |
0x00 - تفعيل APCF 0x01 - ضبط مَعلمات الفلترة في APCF 0x02 - عنوان المُرسِل في APCF 0x03 - معرّف UUID للخدمة في APCF 0x04 - معرّف UUID لطلب الخدمة في APCF 0x05 - الاسم المحلي في APCF 0x06 - بيانات الشركة المصنّعة في APCF 0x07 - بيانات الخدمة في APCF 0x08 - خدمة اكتشاف النقل في APCF 0x09 - فلتر نوع الإعلان في APCF 0x10 ~ 0xAF - محجوزة للاستخدام في المستقبل 0xB0 ~ 0xDF - محجوزة لمورّدي الأجهزة 0xE0 ~ 0xFE - محجوزة للاستخدام في المستقبل 0xFF - قراءة الميزات الموسّعة في APCF |
LE_APCF_Command: Enable_sub_cmd
التحكم الفرعي في العرض: 0x00
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_enable |
1 وحدة ثمانيّة البت |
0x01 - تفعيل ميزة APCF 0x00 - إيقاف ميزة APCF |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x0 - تفعيل APCF |
APCF_Enable |
1 وحدة ثمانيّة البت | يتم ضبط التفعيل/الإيقاف من خلال APCF_enable |
LE_APCF_Command: set_filtering_parameters_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة مواصفات فلتر أو حذفها أو لمحو قائمة الفلاتر للفلترة على الشريحة.
رقم تعريف التحكم الفرعي في الإطار: 0x01
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_Action |
1 وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى محو الفلتر المحدّد بالإضافة إلى إدخالات الميزة المرتبطة به في الجداول الأخرى. سيؤدي النقر على "محو" إلى محو جميع الفلاتر والإدخالات المرتبطة بها في الجداول الأخرى. |
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (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: أو 1: و في حال اختيار منطق "و"، لن تمر حزمة ADV من الفلتر إلا إذا كانت تحتوي على جميع الإدخالات في القائمة. في حال اختيار منطق "أو"، ستتمكّن حزمة ADV من اجتياز الفلتر إذا كانت تحتوي على أيّ من الإدخالات في القائمة. |
APCF_Filter_Logic_Type |
1 وحدة ثمانيّة البت |
0x00: أو 0x01: و ملاحظة: يكون نوع المنطق "غير متوفّر" للحقول الثلاثة الأولى من APCF_Feature_Selection ، والتي تكون دائمًا منطق "و". ولا تنطبق سوى على الحقول الأربعة (البت 3 إلى البت 6) من APCF_Feature_Selection .
|
rssi_high_thresh |
1 وحدة ثمانيّة البت |
[بالديسيبل] لا يُعتبَر أنّ المعلن مرئي إلا إذا كانت الإشارة أعلى من الحدّ الأقصى لمستوى RSSI. وإلا، يجب أن يتصرف البرنامج الثابت كما لو أنّه لم يرصده مطلقًا. |
delivery_mode |
1 وحدة ثمانيّة البت |
0x00 - immediate 0x01 - on_found 0x02 - batched
|
onfound_timeout |
وحدتان ثمانيتَان |
لا يكون صالحًا إلا إذا كان delivery_mode هو
on_found .[بالملي ثانية] الوقت الذي يستغرقه الإصدار الثابت من البرامج لجمع إعلانات إضافية قبل إعداد التقارير. |
onfound_timeout_cnt |
1 وحدة ثمانيّة البت |
لا يكون صالحًا إلا إذا كان delivery_mode هو
on_found .[count] إذا استمر عرض إعلان في onFound في البرامج الثابتة مدّة
onfound_timeout ، سيتم جمع بعض
الإعلانات ويتم التحقّق من العدد. إذا تجاوز العدد
onfound_timeout_cnt ، يتم الإبلاغ عنه
OnFound بعد ذلك مباشرةً.
|
rssi_low_thresh |
1 وحدة ثمانيّة البت |
لا يكون صالحًا إلا إذا كان delivery_mode هو
on_found .[بالديسيبل] تُعتبر حزمة المعلِن غير مرئية إذا لم يكن مؤشر RSSI للحزمة المُستلَمة فوق الحدّ الأدنى لمؤشر RSSI. |
onlost_timeout |
وحدتان ثمانيتَان |
لا يكون صالحًا إلا إذا كان delivery_mode هو
on_found .[بالملي ثانية] إذا لم يظهر إعلان بشكلٍ متّصل مدّة lost_timeout بعد العثور عليه، سيتم الإبلاغ على الفور عن
فقدانه.
|
num_of_tracking_entries |
وحدتان ثمانيتَان |
لا يكون صالحًا إلا إذا كان delivery_mode هو
on_found .[count] إجمالي عدد المعلِنين المطلوب تتبُّعهم لكل فلتر. |
يجب أن تستخدم قيم RSSI العدد التكميلي 2 لتمثيل القيم السالبة.
يجب أن يتمكّن المضيف من ضبط فلاتر متعددة مع ضبط APCF_Application_Address_type
على 0x02 (لجميع عناوين البث) لإدارة مجموعات الفلاتر المختلفة.
إنّ الفلترة والتجميع وإعداد التقارير هي مفاهيم مترابطة. يجب أن يمر كل
إعلان وردّ فحص ذي صلة بكل
الفلاتر، الواحد تلو الآخر. وبالتالي، تكون الإجراءات الناتجة
(delivery_mode
) مرتبطة ارتباطًا وثيقًا بالفلترة. أوضاع التسليم
هي: report_immediately
batch
وonFound
. ترتبط قيمة
OnLost
بقيمة OnFound
بمعنى
أنّها ستأتي بعد OnFound
عند فقدانها.
يوضّح تسلسل المعالجة هذا النموذج النظري:

عند تلقّي إطار إعلان (أو استجابة مسح ضوئي)، يتم تطبيقه على جميع الفلاتر بترتيب تسلسلي. من الممكن أن يؤدي إعلان إلى إعداد تقارير فورية استنادًا إلى فلتر واحد وتجميعه بسبب إجراء فلتر مختلف.
تمنح الحدود الدنيا والعليا لمستوى RSSI (عالٍ ومنخفض) إمكانية التحكّم في وقت ظهور الإطار لمعالجة الفلتر، حتى عندما يتلقّى جهاز التحكّم بستهامًا صالحًا. في حال ضبط وضع الإرسال على فوري أو مجمّع، يتم اعتبار RSSI للإطار من أجل مزيد من عمليات معالجة وحدة التحكّم. تتطلّب التطبيقات المختلفة سلوكًا مختلفًا في إعداد التقارير وجمع البيانات. يتيح ذلك لعدة تطبيقات إعداد تقارير مباشرة و/أو تجميع النتائج في البرامج الثابتة بشكل متزامن. على سبيل المثال، هناك حالة عندما يكون فحص الحِزم نشطًا من تطبيق واحد، ثم يتم بعد ذلك تنفيذ فحص LE عادي من تطبيق آخر. قبل تنفيذ فحص الحِزم، يضبط الإطار أو التطبيق الفلاتر المناسبة. لاحقًا، عندما يُجري التطبيق الثاني عملية فحص منتظمة، يستمر تجميع البيانات السابق. ومع ذلك، بسبب عملية الفحص العادية، فإنّه يشبه من الناحية المفاهيمية إضافة فلتر خالٍ (بالإضافة إلى جميع الفلاتر الحالية) مع أمر فحص LE. تكون مَعلمات أمر مسح LE لها الأولوية عندما تكون نشطة. عند إيقاف فحص LE العادي، سيعود جهاز التحكّم إلى فحص مجمّع سابق، في حال توفّره.
يستند وضع الإرسال OnFound
إلى الفلاتر التي تم ضبطها. إنّ العبارة
التي تؤدي إلى تنفيذ إجراء الفلتر للنجاح تُعدّ العبارة
التي يتم تتبُّعها في onLost
. الحدث المقابل هو الحدث الفرعي لتتبُّع الإعلانات
في "الحملات الإجرائية".
سيظهر انتقال OnFound/OnLost
لأحد الفلاتر (في حال تفعيله)
على النحو التالي:

سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x01 - APCF Set Filtering Parameters |
APCF_Action |
1 وحدة ثمانيّة البت | APCF_Action لطلب الرد |
APCF_AvailableSpaces |
1 وحدة ثمانيّة البت | عدد الإدخالات المتاحة في جدول الفلاتر |
LE_APCF_Command: broadcast_address_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة عنوان معلِن أو حذفه أو لمحو قائمة عناوين المعلِنين للفلترة على الشريحة.
التحكم الفرعي في حدود الجلسة: 0x02
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_Action |
1 وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي حذف المحتوى إلى حذف عنوان المشغّل المحدّد في الفلتر المحدّد. يؤدي الزر "محو" إلى محو جميع عناوين المشغّلين في الفلتر المحدّد. |
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (0, max_filter-1 ) |
APCF_Broadcaster_Address |
6 وحدات ثمانيّة | عنوان جهاز مكوّن من 6 بايت لإضافته إلى قائمة عناوين المشغّلين أو حذفه منها |
APCF_Application_Address_type |
1 وحدة ثمانيّة البت |
0x00: متاح للجميع 0x01: عشوائي 0x02: غير معروف (تجاهل نوع العنوان) لفلترة تقارير الإعلانات حسب أنواع عناوين الهوية (0x02 و0x03). للحصول على تقارير إعلانية بأنواع العناوين 0x02 و0x03، اضبط هذا الحقل على 0x02: NA (تجاهل نوع العنوان). |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x02 - عنوان مُرسِل APCF |
APCF_Action |
1 وحدة ثمانيّة البت | APCF_Action لطلب الرد |
APCF_AvailableSpaces |
1 وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول عناوين البث |
LE_APCF_Command: service_uuid_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة معرّف UUID للخدمة أو حذفه أو لمحو قائمة معرّفات UUID للخدمة لإجراء الفلترة على الشريحة.
Sub OCF: 0x03
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_Action |
1 وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي الحذف إلى حذف عنوان UUID المحدّد للخدمة في المحدد فلتر. سيؤدي النقر على "محو" إلى محو جميع المعرّفات الفريدة العامة للخدمة في الفلتر المحدّد. |
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter -1) |
APCF_UUID |
2 أو 4 أو 16 وحدة ثمانيّة البت | معرّف UUID للخدمة (16 أو 32 أو 128 بت) لإضافته إلى القائمة أو حذفه منها |
APCF_UUID_MASK |
2 أو 4 أو 16 وحدة ثمانيّة البت |
قناع معرّف الخدمة الفريد (16 أو 32 أو 128 بت) لإضافته إلى القائمة
يجب أن يكون طولها هو نفسه طول APCF_UUID. .
|
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x03 - معرّف فريد عالمي لخدمة APCF |
APCF_Action |
1 وحدة ثمانيّة البت | APCF_Action لطلب الرد |
APCF_AvailableSpaces |
1 وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول Service UUID |
LE_APCF_Command: solicitation_uuid_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة رقم تعريف UUID لطلب أو حذفه أو لمحو قائمة بأرقام تعريف UUID لطلبات الفلترة على الشريحة.
Sub OCF: 0x04
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_Action |
1 وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي حذف الإجراء إلى حذف عنوان UUID للطلب في الفلتر المحدد. سيؤدي النقر على "محو" إلى محو جميع أرقام تعريف UUID للطلبات في الفلتر المحدّد. |
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter -1) |
APCF_UUID |
2 أو 4 أو 16 وحدة ثمانيّة البت | معرّف UUID لطلب الموافقة (16 أو 32 أو 128 بت) لإضافته إلى القائمة أو حذفه منها |
APCF_UUID_MASK |
2 أو 4 أو 16 وحدة ثمانيّة البت |
قناع معرّف UUID لطلب الموافقة (16 بت أو 32 بت أو 128 بت) لإضافته إلى
القائمة يجب أن يكون طولها هو نفسه طول APCF_UUID .
|
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x04 - معرّف فريد عالمي لطلب APCF |
APCF_Action |
1 وحدة ثمانيّة البت | APCF_Action لطلب الرد |
APCF_AvailableSpaces |
1 وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول UUID الخاص بطلبات العروض |
LE_APCF_Command: local_name_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة سلسلة اسم محلي أو حذفها أو لمحو قائمة سلاسل الأسماء المحلية لفلترة على الشريحة.
التحكم الفرعي في العرض: 0x05
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_Action |
1 وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي حذف إلى حذف سلسلة الاسم المحلي المحدّدة في الفلتر المحدّد. سيؤدي الزر "محو" إلى محو جميع سلاسل الأسماء المحلية في الفلتر المحدّد. |
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (0، max_filter -1) |
APCF_LocName_Mandata_or_SerData |
حجم متغيّر |
سلسلة أحرف للاسم المحلي ملاحظات:
|
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x05 - اسم APCF المحلي |
APCF_Action |
1 وحدة ثمانيّة البت | APCF_Action لطلب الرد |
APCF_AvailableSpaces |
1 وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول الأسماء المحلية |
LE_APCF_Command: manf_data_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة سلسلة بيانات الشركة المصنّعة أو حذفها أو لمحو قائمة سلاسل بيانات الشركة المصنّعة للفلترة على الشريحة.
رقم تعريف التحكم الفرعي في الجلسة: 0x06
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_Action |
1 وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي حذف البيانات إلى حذف سلسلة بيانات المصنّع المحدّدة في الفلتر المحدّد. سيؤدي النقر على "محو" إلى محو جميع سلاسل بيانات المصنّع في الفلتر المحدّد. |
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (0, max_filter -1) |
APCF_LocName_Mandata_or_SerData |
حجم متغيّر |
سلسلة أحرف لبيانات الشركة المصنّعة ملاحظات:
|
APCF_ManData_Mask |
حجم متغيّر |
قناع بيانات التصنيع المطلوب إضافته إلى القائمة يجب أن يكون طوله هو
نفسه في APCF_LocName_or_ManData_or_SerData .
|
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x06 - بيانات الشركة المصنّعة وفقًا لبروتوكول APCF |
APCF_Action |
1 وحدة ثمانيّة البت | APCF_Action لطلب الرد |
APCF_AvailableSpaces |
1 وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول "بيانات المصنّعين" |
LE_APCF_Command: service_data_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة سلسلة بيانات خدمة أو حذفها أو لمحو قائمة سلاسل بيانات الخدمة للفلترة على الشريحة.
Sub OCF: 0x07
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_Action |
1 وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي حذف البيانات إلى حذف سلسلة بيانات الخدمة المحدّدة في الفلتر المحدّد. يؤدي الزر "محو" إلى محو جميع سلاسل بيانات الخدمة في الفلتر المحدّد. |
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (0, max_filter -1) |
APCF_LocName_Mandata_or_SerData |
حجم متغيّر |
سلسلة أحرف لبيانات الخدمة ملاحظات:
|
APCF_LocName_Mandata_or_SerData_Mask |
حجم متغيّر |
قناع بيانات الخدمة المطلوب إضافته إلى القائمة يجب أن يكون طوله هو
نفسه في الحقل APCF_LocName_or_ManData_or_SerData. .
|
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x07 - بيانات خدمة APCF |
APCF_Action |
1 وحدة ثمانيّة البت | APCF_Action لطلب الرد |
APCF_AvailableSpaces |
1 وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة لجدول "بيانات الخدمة" |
LE_APCF_Command: ad_type_sub_cmd
يُستخدَم هذا الأمر الفرعي لإضافة نوع إعلان أو حذفه أو لمحو قائمة أنواع الإعلانات
للفلترة على الشريحة. استخدِم
read_extended_features_sub_cmd
للتحقّق مما إذا كان هذا الأمر
متوافقًا أم لا.
عندما تكون القيمة APCF_AD_DATA_Length
هي 0، فلتِر APCF_AD_TYPE
بدون
مقارنة "بيانات إعلان Google" و"قناع بيانات إعلان Google".
إذا تجاوزت طول بيانات حزمة ADV المستلَمة AD_DATA_LENGTH
، قارِن
أوّل AD_DATA_LENGTH
بايت من بيانات AD فقط وتجاهل البيانات المتبقية.
التحكم الفرعي في الإطار: 0x09
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
APCF_Action |
1 وحدة ثمانيّة البت |
0x00 - إضافة 0x01 - حذف 0x02 - محو سيؤدي حذف البيانات إلى حذف نوع الإعلانات المتجاوبة على شبكة البحث المحدّد في الفلتر المحدّد. سيؤدي الزر "محو" إلى محو جميع أنواع الإعلانات في الفلتر المحدّد. |
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (0, max_filter -1) |
APCF_AD_TYPE |
1 وحدة ثمانيّة البت | نوع الإعلان المراد إضافته إلى القائمة أو حذفه منها. تجاهل القيمة عندما يكون APCF_Action = 0x02 (محو) |
APCF_AD_DATA_Length |
1 وحدة ثمانيّة البت |
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 |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0x09 - نوع إعلان APCF |
APCF_Action |
1 وحدة ثمانيّة البت | APCF_Action لطلب الرد |
APCF_AvailableSpaces |
1 وحدة ثمانيّة البت | عدد الإدخالات المجانية التي لا تزال متاحة في جدول "نوع الإعلان" |
LE_APCF_Command: read_extended_features_sub_cmd
يُستخدَم هذا الأمر الفرعي لقراءة ميزات APCF الموسّعة.
التحكم الفرعي في العرض: 0xFF
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
غير سارٍ | مَعلمة الأمر فارغة. |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
APCF_opcode |
1 وحدة ثمانيّة البت | 0xFF - APCF_Read_Extended_Features |
APCF_extended_features |
وحدتان ثمانيّتَان |
أقنعة الوحدات لميزات إضافية متوافقة:
قيمة النقطة
|
طلب معلومات عن نشاط وحدة التحكّم واستهلاك الطاقة
يهدف الهدف من هذه المعلومات إلى أن تحليل وظائف النظام المضيف الأعلى إجمالي أنشطة جميع المكوّنات، بما في ذلك وحدة التحكّم في تقنية بلوتوث وحالتها الشاملة، إلى جانب ما يحدث في التطبيقات والإطار. لإجراء ذلك، يجب توفير المعلومات التالية من حِزمة BT ووحدة التحكّم:
- حِزمة BT: إعداد تقارير عن الحالة التشغيلية الكلية الحالية لجهاز التحكّم
- البرامج الثابتة: الإبلاغ عن معلومات النشاط والطاقة المجمّعة
حالات الماكرو لحزمة البرمجيات الأساسية للمضيف (BT)، كما تم تحديدها على مستوى المستخدم:
- في وضع السكون: [مسح الصفحة ضوئيًا، إعلان LE، مسح الاستفسارات ضوئيًا، مسح LE ضوئيًا]
- المسح الضوئي: [paging/inquiry/trying to connect]
- نشط: [رابط ACL مفعَّل، رابط SCO قيد الإنشاء، وضع الاستماع]
إنّ الأنشطة التي يتتبّعها جهاز التحكّم على مدار فترة عمله هي وقت الإرسال ووقت الاستقبال ووقت السكون وإجمالي الطاقة المستهلَكة. ويتم محو هذه القيم عند قراءتها من المضيف.
LE_Get_Controller_Activity_Energy_Info
هذا أمر خاص بالمورّد.
OCF: 0x159
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
NA | مَعلمات الأوامر الفارغة |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
total_tx_time_ms |
4 وحدات ثمانيّة | إجمالي الوقت المستغرَق في إرسال البيانات |
total_rx_time_ms |
4 وحدات ثمانيّة | إجمالي الوقت المستغرَق في تنفيذ Rx |
total_idle_time_ms |
4 وحدات ثمانيّة | إجمالي الوقت في وضع السكون (حالات الطاقة المنخفضة غير المرتبطة بالنوم) |
total_energy_used |
4 وحدات ثمانيّة | إجمالي الطاقة المستخدَمة [حاصل ضرب شدة التيار (مللي أمبير) والجهد الكهربي (فولت) والوقت (ملي ثانية)] |
الأمر LE extended set scan parameters
يمكن استخدام هذا الأمر لتفعيل فترة زمنية أكبر ونافذة بحث أكبر في وحدة التحكّم. وفقًا لمواصفات BT Core 5.2، يكون الحد الأقصى لوقت الفحص وفترة الفحص هو 10.24 ثانية، ما يعرقل فترات الفحص التي تزيد عن 10.24 ثانية للتطبيقات.
المرجع الأساسي: مواصفات BT Core 5.2، الصفحة 2493 (LE Set Scan Parameters Command)
OCF: 0x15A
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
LE_Ex_Scan_Type |
1 وحدة ثمانيّة البت |
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 وحدات ثمانيّة |
مدة فحص LE يجب أن تكون قيمة LE_Scan_Window أقل
من أو تساوي LE_Scan_Interval .
النطاق: 0x0004 إلى 0xFFFF القيمة التلقائية: 0x0010 (10 مللي ثانية) الوقت = N * 0.625 مللي ثانية النطاق الزمني: من 2.5 مللي ثانية إلى 40.95 ثانية |
Own_Address_Type |
1 وحدة ثمانيّة البت |
0x00 - عنوان الجهاز العلني (تلقائي) 0x01 - عنوان جهاز عشوائي |
LE_Ex_Scan_Filter_Policy |
0x00 - قبول جميع حزم الإعلانات (الإعداد التلقائي) سيتم تجاهل حزم الإعلانات المخصّصة
والتي لا يتم توجيهها إلى هذا الجهاز. 0x01 - تجاهل حزم الإعلانات الواردة من الأجهزة غير المُدرَجة في القائمة البيضاء فقط. سيتم تجاهل الحِزم الإعلانية الموجَّهة التي لا يتم توجيهها إلى هذا الجهاز. |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
الحصول على أمر معلومات تصحيح أخطاء جهاز التحكّم
يهدف عنصر المعلومات هذا إلى الحصول على معلومات تصحيح أخطاء جهاز التحكّم من خلال مضيف، بتنسيق ثنائي، لإجراء المعالجة والتحليل بعد ذلك. يساعد ذلك في تصحيح الأخطاء في الميدان ويزوّد المهندسين بمجموعة أدوات لتسجيل المعلومات بغرض تحليلها. يمكن لجهاز التحكّم تقديم المعلومات عندما يطلبها مضيف من خلال الحدث (الحدث الفرعي "معلومات تصحيح أخطاء جهاز التحكّم") أو بشكل مستقل عندما يريد جهاز التحكّم ذلك. يمكن أن تشمل أمثلة الاستخدامات الإبلاغ عن معلومات حالة البرامج الثابتة ومعلومات عن ملف تتبُّع الأعطال ومعلومات logging وغير ذلك.
OCF: 0x15B
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
لا ينطبق | قائمة مَعلمات الأوامر فارغة |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
إتاحة نقل بيانات الأجهزة عبر بروتوكول A2DP
تتيح ميزة A2DP offload نقل عملية ترميز الصوت في A2DP إلى وحدة معالجة صوتية مرتبطة بوحدة تحكّم في البلوتوث. يتم نقل بث بيانات الصوت المشفَّرة مباشرةً من معالج الصوت إلى وحدة التحكّم في البلوتوث بدون تدخل مضيف البلوتوث. يظل مضيف البلوتوث مسؤولاً عن ضبط جلسة A2DP والتحكّم فيها. يتوفّر إصداران من الطلبات. لا تتيح الأوامر القديمة التي تستخدم الإصدار الفرعي من OCF 0x01-0x02 استخدام برامج الترميز مفتوحة المصدر إلا. إنّ الإصدارات التي تحتوي على 0x03-0x04 Sub-OCF لا تعتمد على برنامج الترميز الذي تم ضبطه.
OCF: 0x15D
بدء نقل بيانات A2DP (قديم)
رقم تعريف التحكم الفرعي في الإطار: 0x01
استخدِم هذا الأمر لضبط عملية نقل بيانات A2DP وبدء نقل بيانات A2DP.
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
Codec |
4 وحدات ثمانيّة |
يحدّد نوع برنامج الترميز 0x01 - SBC 0x02 - AAC 0x04 - APTX 0x08 - APTX HD 0x10 - LDAC |
Max_Latency |
وحدتان ثمانيتَان | الحد الأقصى المسموح به لوقت الاستجابة (بالملي ثانية) تؤدي القيمة صفر إلى إيقاف عملية تفريغ الذاكرة. |
SCMS-T_Enable |
وحدتان ثمانيتَان |
الثمانيت 0: علامة تتيح إضافة عنوان SCMS-T
الثمانيت الأوّل: قيمة لرأس SCMS-T عند تفعيله |
Sampling_Frequency |
4 وحدات ثمانيّة |
0x01 - 44100 هرتز 0x02 - 48000 هرتز 0x04 - 88200 هرتز 0x08 - 96000 هرتز |
Bits_Per_Sample |
1 وحدة ثمانيّة البت |
0x01: 16 بت لكل عيّنة 0x02: 24 بت لكل عيّنة 0x04: 32 بت لكل عيّنة |
Channel_Mode |
1 وحدة ثمانيّة البت |
0x01 - صوت أحادي 0x02 - صوت استيريو |
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:
الثُمانيات من 0 إلى 3: معرّف المورّد
الوحدات الثمانية من 4 إلى 5: معرّف الترميز
الثماني 6: فهرس معدل نقل البيانات:
الثمانيت 7: وضع قناة LDAC الأوكتات من 8 إلى 31: محجوزة جميع برامج الترميز الأخرى: الثُمانِي من 0 إلى 31: محجوز |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Sub_Opcode |
1 وحدة ثمانيّة البت | 0x01 - بدء نقل بيانات A2DP |
بدء نقل بيانات A2DP
Sub OCF: 0x03
استخدِم هذا الأمر لضبط عملية نقل بيانات A2DP وبدء نقل بيانات A2DP.
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
Connection Handle |
وحدتان ثمانيتَان | معرّف اتصال HCI النشط |
L2CAP_Channel_ID |
وحدتان ثمانيتَان | معرّف قناة L2CAP التي تم فتحها لبث A2DP |
Data_Path_Direction |
1 وحدة ثمانيّة البت |
0x00 - الإخراج (مصدر/دمج AVDTP) 0x01 - الإدخال (مستلِم/تقسيم AVDTP) |
Peer_MTU |
وحدتان ثمانيتَان | الحد الأقصى لحجم حزم L2CAP، التي يتم التفاوض عليها مع الجهاز المشابه |
CP_Enable_SCMS_T |
1 وحدة ثمانيّة البت |
0x00 - إيقاف عنوان حماية المحتوى SCMS-T 0x01 - تفعيل عنوان حماية المحتوى SCMS-T |
CP_Header_SCMS_T |
1 وحدة ثمانيّة البت |
عند تفعيل عنوان حماية المحتوى SCMS-T (CP_SCMS_T_Enable
يتم ضبطه على 0x01)، يتم تحديد قيمة العنوان التي تسبق المحتوى الصوتي (يُرجى الرجوع
إلى A2DP، الفقرة 3.2.1-2) على النحو المحدّد في الأرقام المحدّدة من قِبل البلوتوث، الفقرة
6.3.2.يتم تجاهلها عندما لا تكون حماية المحتوى SCMS-T مفعَّلة. |
Vendor_Specific_Parameters_Length |
1 وحدة ثمانيّة البت |
طول المَعلمات الخاصة بالمورّد، في النطاق من 0 إلى 128 يتم استخدام القيمة 0 في حال عدم تقديم أي مَعلمات إضافية. |
Vendor_Specific_Parameters |
من 0 إلى 128 أوكتت |
المَعلمات الخاصة بالمورّد التي يوفّرها Bluetooth Audio HAL،
CodecParameters.vendorSpecificParameters[] .
|
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Sub_Opcode |
1 وحدة ثمانيّة البت | 0x03 - بدء نقل بيانات A2DP |
إيقاف نقل بيانات A2DP (قديم)
التحكم الفرعي في حدود الجلسة: 0x02
يُستخدَم هذا الأمر لإيقاف بث A2DP.
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
لا ينطبق | قائمة مَعلمات الطلب فارغة. |
لم يتم تحديد أيّ مَعلمات لهذا الأمر.
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Sub_Opcode |
1 وحدة ثمانيّة البت | 0x02 - إيقاف نقل بيانات A2DP |
إيقاف نقل بيانات A2DP
Sub OCF: 0x04
يُستخدَم هذا الأمر لإيقاف بث A2DP.
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
Connection Handle |
وحدتان ثمانيتَان | معرّف اتصال HCI النشط |
L2CAP_Channel_ID |
وحدتان ثمانيتَان | معرّف قناة L2CAP التي تم فتحها لبث A2DP |
Data_Path_Direction |
1 وحدة ثمانيّة البت |
0x00 - الإخراج (مصدر/دمج AVDTP) 0x01 - الإدخال (مستلِم/تقسيم AVDTP) |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Sub_Opcode |
1 وحدة ثمانيّة البت | 0x04 - إيقاف نقل بيانات A2DP |
الأمر "تقرير جودة البلوتوث"
تبدأ ميزة الأمر "تقرير جودة البلوتوث" الآلية في وحدة تحكّم البلوتوث للإبلاغ عن أحداث جودة البلوتوث إلى المضيف. يمكنك تفعيل أربعة خيارات:
- وضع مراقبة الجودة: يُرسِل جهاز التحكّم بشكل دوري حدثًا فرعيًا لطلب إعادة التوجيه (BQR) مرتبطًا بالجودة إلى المضيف.
- Approaching LSTO (الاقتراب من وقت انتهاء مهلة الإشراف على الرابط): إذا لم يتم استلام أي حزم من جهاز BT المتصل لأكثر من نصف قيمة وقت انتهاء مهلة الإشراف على الرابط (LSTO)، يُبلغ جهاز التحكّم المضيف بحدث Approaching LSTO.
- الصوت غير المتّسق في A2DP: عندما يرصد جهاز التحكّم عوامل تؤدي إلى عدم اتساق الصوت، يُبلغ جهاز التحكّم المضيف عن حدث "الصوت غير المتّسق في A2DP".
- (e)SCO Voice Choppy: عندما يرصد جهاز التحكّم عوامل تؤدي إلى الصوت المقطّع، يُبلغ جهاز التحكّم عن حدث (e)SCO Voice Choppy إلى المضيف.
- التهاب الجذر: يُرسِل جهاز التحكّم هذا الحدث إلى الحزمة عندما يواجه HAL أو جهاز التحكّم خطأً فادحًا ويحتاج إلى إعادة تشغيل البلوتوث.
- تتبُّع رسالة LMP/LL: يُرسِل جهاز التحكّم رسالة LMP/LL للتفاهم مع الجهاز البعيد إلى المضيف.
- تتبُّع جدولة تقنية Bluetooth المتعدّدة الملفات/التوافق المشترَك: يُرسِل جهاز التحكّم معلومات الجدول الزمني للتعامل مع الملفات المتعددة في Bluetooth والتوافق اللاسلكي في نطاق 2.4 غيغاهرتز إلى المضيف.
- آلية معلومات تصحيح الأخطاء في جهاز التحكّم: عند تفعيلها، يمكن لجهاز التحكّم الإبلاغ بشكل مستقل عن معلومات تسجيل تصحيح الأخطاء من خلال حدث ملف sublinar الخاص بمعلومات تصحيح أخطاء جهاز التحكّم إلى المضيف.
- LE Audio Choppy: عندما يرصد جهاز التحكّم عوامل تؤدي إلى انقطاع الصوت، يُبلغ جهاز التحكّم المضيف بحدث LE Audio Choppy.
-
وضع "إحصاءات التردد اللاسلكي" المتقدّم: يُبلغ جهاز التحكّم عن معلومات إحصاءات التردد اللاسلكي
للمضيف، ما يتيح حالتَي استخدام للتقارير:
- التقارير الدورية
- عوامل تشغيل الأحداث (بدء/إيقاف البث وعامل تشغيل حدث جودة الرابط)
- BQR_Report_Action من أمر تقرير جودة البلوتوث: يمكن للمضيف استخدام أمر HCI هذا للحصول على طلب بحث لمرة واحدة في وضع مراقبة الجودة أو وضع مراقبة الطاقة أو وضع إحصاءات التردد اللاسلكي المتقدّمة.
OCF: 0x15E
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
BQR_Report_Action |
1 وحدة ثمانيّة البت |
إجراء لإضافة / حذف إعداد تقارير أحداث الجودة في
مَعلمة 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 |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Current_Quality_Event_Mask |
4 وحدات ثمانيّة |
تشير إلى إعداد قناع البتات الحالي. البتّ 0: تم تفعيل وضع مراقبة الجودة. البتّ 1: تم تفعيل إعداد تقارير أحداث الاقتراب من الحدّ الأدنى لمستوى الخدمة. البتّان 2: تم تفعيل إعداد تقارير أحداث الصوت المقطّع في A2DP. البتّ 3: تم تفعيل إعداد تقارير أحداث الصوت غير المتّسق في بروتوكول (e)SCO. البتّ 4: تم تفعيل إعداد تقارير أحداث التهاب الجذر. البتّ 5: تم تفعيل وضع مراقبة الطاقة. البتّ 6: تم تفعيل إعداد تقارير أحداث الصوت غير المتّسق في تقنية LE. البتّ 7: حدث تعذُّر الاتصال. البتّ 8: يتم ضبطه لتفعيل عامل تشغيل حدث وضع "إحصاءات التردد اللاسلكي المتقدّمة". البت 9: يتم ضبطه لتفعيل إعداد تقارير إحصاءات التردد اللاسلكي المتقدّمة بشكل دوري. البتّان 10 و14: محجوزان. الإعداد 15: تم تفعيل إعداد تقارير أحداث الجودة الخاصة بالمورّد. البتّ 16: تم تفعيل تتبُّع رسائل LMP/LL. الإعداد 17: تم تفعيل تتبُّع جدولة تقنية "الربط المتعدّد" أو "الاستجابة المشترَكة" في البلوتوث. الإعداد 18: تم تفعيل آلية معلومات تصحيح أخطاء وحدة التحكّم. البتات من 19 إلى 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
الحصول على ميزة وقت التخزين المؤقت للصوت
رقم تعريف التحكم الفرعي في الإطار: 0x01
استخدِم هذا الأمر للحصول على مدة التخزين المؤقت للصوت من وحدة تحكّم البلوتوث.
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
لا ينطبق | قائمة مَعلمات الأمر فارغة |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Dynamic_Audio_Buffer_opcode |
1 وحدة ثمانيّة البت | 0x01 - الحصول على مدة التخزين المؤقت للصوت |
Audio_Codec_Type_Supported |
4 وحدات ثمانيّة |
أقنعة الوحدات بت لأنواع برامج الترميز المتوافقة الرمز 0: SBC الرمز 1: الترميز المتقدّم للصوت الرمز 2: APTX الرمز 3: APTX HD الرمز 4: LDAC الرمز من 5 إلى 31 محجوز |
Audio_Codec_Buffer_Default_Time_For_Bit_0 |
وحدتان ثمانيتَان |
وقت التخزين المؤقت التلقائي لنوع برنامج ترميز Bit 0 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز النقطة الثنائية 0 متوافقًا. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Maximum_Time_For_Bit_0 |
وحدتان ثمانيتَان |
الحد الأقصى لوقت التخزين المؤقت لنوع برنامج ترميز Bit 0 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز النقطة الثنائية 0 متوافقًا. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Minimum_Time_For_Bit_0 |
وحدتان ثمانيتَان |
الحد الأدنى لوقت التخزين المؤقت لنوع برنامج ترميز Bit 0 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز النقطة الثنائية 0 متوافقًا. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Default_Time_For_Bit_1 |
وحدتان ثمانيتَان |
وقت التخزين المؤقت التلقائي لنوع برنامج ترميز Bit 1 المحدّد في
Audio_Codec_Type_Supported. يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز النقطة الأولى متوافقًا. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Maximum_Time_For_Bit_1 |
وحدتان ثمانيتَان |
الحد الأقصى لوقت التخزين المؤقت لنوع برنامج ترميز Bit 1 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز النقطة الأولى متوافقًا. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Minimum_Time_For_Bit_1 |
وحدتان ثمانيتَان |
الحد الأدنى لوقت التخزين المؤقت لنوع برنامج ترميز النقطة 1 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز النقطة الأولى متوافقًا. الوحدة: ملي ثانية |
...... | ...... | ...... |
Audio_Codec_Buffer_Default_Time_For_Bit_31 |
وحدتان ثمانيتَان |
وقت التخزين المؤقت التلقائي لنوع برنامج ترميز Bit 31 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز الوحدات 31 بت متوافقًا. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Maximum_Time_For_Bit_31 |
وحدتان ثمانيتَان |
الحد الأقصى لوقت التخزين المؤقت لنوع برنامج ترميز Bit 31 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز الوحدات 31 بت متوافقًا. الوحدة: ملي ثانية |
Audio_Codec_Buffer_Minimum_Time_For_Bit_31 |
وحدتان ثمانيتَان |
الحد الأدنى لوقت التخزين المؤقت لنوع برنامج ترميز Bit 31 المحدّد في
Audio_Codec_Type_Supported يجب أن تكون هذه القيمة 0 إذا لم يكن نوع ترميز الوحدات 31 بت متوافقًا. الوحدة: ملي ثانية |
ضبط مدة التخزين المؤقت للصوت
التحكم الفرعي في حدود الجلسة: 0x02
استخدِم هذا الأمر لضبط وقت التخزين المؤقت للصوت في وحدة التحكّم في البلوتوث.
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
Audio_Codec_Buffer_Time |
وحدتان ثمانيتَان |
وقت التخزين المؤقت المطلوب للصوت لبرنامج الترميز المستخدَم حاليًا. الوحدة: ملي ثانية |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Dynamic_Audio_Buffer_opcode |
1 وحدة ثمانيّة البت | 0x02 - ضبط وقت التخزين المؤقت للصوت |
Audio_Codec_Buffer_Time |
وحدتان ثمانيتَان |
مدة التخزين المؤقت الحالية للصوت في وحدة التحكّم في البلوتوث الوحدة: ملي ثانية |
حدث HCI (خاص بالمورّد)
تكون أحداث HCI الخاصة بالمورّد مطلوبة في بعض الحالات. يُرجى الرجوع إلى الشكل 5.4 في الصفحة 1897 من مواصفات BT Core 5.2. ستحتوي مَعلمة الحدث 0 دائمًا على رمز الحدث الفرعي الأول، استنادًا إلى ذلك يتم فك ترميز بقية حدث HCI.
مَعلمة الحدث | الحجم | الغرض |
---|---|---|
HCI_vendor_specific_event_code |
1 وحدة ثمانيّة البت | 0xFF |
sub_event_code |
1 وحدة ثمانيّة البت | سيكون حجم رمز الحدث الفرعي ثماني بتات، وهو البايت الذي يلي طول المَعلمة مباشرةً في حزمة حدث HCI. |
الحدث الفرعي لانتهاك الحدّ الأدنى لمساحة التخزين
يشير هذا الحدث إلى أنّه تم تجاوز الحدّ الأقصى المسموح به لمساحة التخزين.
رمز الحدث الفرعي = 0x54
مَعلمة الحدث الفرعي | الحجم | الغرض |
---|---|---|
بدون تحديد نمط |
الحدث الفرعي لتغيير حالة الإعلانات المتعددة في وضع "العرض على الويب"
يشير هذا الحدث إلى أنّ مثيل إعلانيًا قد غيّر حالته. في الوقت الحالي، لا يُستخدَم هذا الحدث إلّا للإشارة إلى مثيل الإعلان الذي تم إيقافه نتيجة اتصال.
رمز الحدث الفرعي = 0x55
مَعلمة الحدث الفرعي | الحجم | الغرض |
---|---|---|
Advertising_instance |
1 وحدة ثمانيّة البت |
لتحديد مثيل الإعلان المحدّد القيم الصالحة هي من 0 إلى 1- max_advt_instances
|
State_Change_Reason |
1 وحدة ثمانيّة البت | 0x00: تم استلام عملية الربط |
Connection_handle |
وحدتان ثمانيتَان |
لتحديد الاتصال الذي أدّى إلى إيقاف مثيل advt (0xFFFF إذا كان غير صالح)
|
الحدث الفرعي لتتبُّع الإعلانات على شبكة البحث
يشير هذا الحدث إلى الحالات التي يتم فيها العثور على المعلِن أو فقدانه.
رمز الحدث الفرعي = 0x56
مَعلمة الحدث الفرعي | الحجم | الغرض |
---|---|---|
APCF_Filter_Index |
1 وحدة ثمانيّة البت | فهرس الفلتر (0, max_filter -1) |
Advertiser_State |
1 وحدة ثمانيّة البت |
0x00: تم العثور على المعلِن 0x01: فقدان المعلِن |
Advt_Info_Present |
1 وحدة ثمانيّة البت |
0x00: معلومات المعلِن (Advt_Info ) متوفّرة0x01: معلومات المعلِن ( Advt_Info ) غير متوفّرة
|
Advertiser_Address |
6 وحدات ثمانيّة | عنوان علني أو عشوائي |
Advertiser_Address_Type |
1 وحدة ثمانيّة البت |
0x00: عنوان علني 0x01: عنوان عشوائي |
Advt_Info |
Tx_Pwr[0] : ثماني بتRSSI[0] : ثماني بتTimestamp[0] : ثماني بتAdv packet_len[0] : ثماني بتAdv_packet[0] : Adv_packet_len ثماني بتScan_data_resp_len[0] : ثماني بتScan_data_resp[0] : Scan_data_resp ثماني بت
|
الحدث الفرعي لمعلومات تصحيح أخطاء جهاز التحكّم
يستخدم جهاز التحكّم هذا الحدث لتقديم معلومات تصحيح أخطاء ثنائية إلى مضيف.
رمز الحدث الفرعي = 0x57
مَعلمة الحدث الفرعي | الحجم | الغرض |
---|---|---|
debug_block_byte_offset_start |
وحدتان ثمانيتَان | تصحيح أخطاء إزاحة وحدات البايت في الكتلة من البداية |
last_block |
1 وحدة ثمانيّة البت |
0x00: تتوفر المزيد من بيانات تصحيح الأخطاء 0x01: آخر كتلة ثنائية، ما مِن بيانات تصحيح أخطاء أخرى |
cur_pay_load_sz |
وحدتان ثمانيتَان | حجم الكتلة الثنائية في حدث حالي |
Debug_Data |
متغير | بيانات تصحيح الأخطاء لسمة cur_payload_sz |
الحدث الفرعي "تقرير جودة البلوتوث"
يشير هذا الحدث إلى أحد الإجراءَين التاليَين: حدث جودة البلوتوث حدث، أو حمّل جهاز التحكّم في تتبع رسائل LMP/LL وتتبُّع جدولة تقنية Bluetooth Multi-link/Coex، أو تخلص جهاز التحكّم من بيانات معلومات debugging.
رمز الحدث الفرعي = 0x58 [Quality_Report_Id = 0x01 ~ 0x04، حدث مرتبط بجودة الرابط]
مَعلمة الحدث الفرعي | الحجم | الغرض |
---|---|---|
Quality_Report_Id |
1 وحدة ثمانيّة البت |
0x01: إعداد تقارير الجودة في وضع المراقبة 0x02: اقتراب LSTO 0x03: صوت A2DP متقطّع. 0x04: (e)SCO Voice Choppy. 0x05 ~ 0x06: محجوزة. 0x07: صوت LE متقطّع 0x08: تعذّر الاتصال. 0x09 ~ 0xFF: محجوزة. |
Packet_Types |
1 وحدة ثمانيّة البت |
0x01: رمز التعريف 0x02: رمز فارغ 0x03: طلب 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 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: محجوز 0x51: حزمة ISO 0x52 ~ 0xFF: محجوز |
Connection_Handle |
وحدتان ثمانيتَان | معرّف اتصال ACL/(e)SCO/ISO |
Connection_Role |
1 وحدة ثمانيّة البت |
دور الربط 0x00: وحدة مركزية 0x01: وحدة محيطية 0x02 ~ 0xFF: محجوز |
TX_Power_Level |
1 وحدة ثمانيّة البت |
مستوى الطاقة الحالي للإرسال لـ Connection_Handle المحدّد
يجب أن تكون هذه القيمة هي نفسها قيمة استجابة وحدة التحكّم لطلب HCI HCI_Read_Transmit_Power_Level. |
RSSI |
1 وحدة ثمانيّة البت |
[بالديسيبل ميلي واط]
قيمة مؤشر قوة الإشارة المستلَمة (RSSI) لـ
Connection_Handle المحدّد |
SNR |
1 وحدة ثمانيّة البت |
[بالديسيبل]
قيمة نسبة الإشارة إلى الضوضاء (SNR) لسمة
Connection_Handle المحدّدة |
Unused_AFH_Channel_Count |
1 وحدة ثمانيّة البت |
يشير إلى عدد القنوات غير المستخدَمة في AFH_channel_map. 0x4F ~ 0xFF: محجوزة. |
AFH_Select_Unideal_Channel_Count |
1 وحدة ثمانيّة البت |
يشير إلى عدد القنوات التي تتداخل فيها إشارات البث وتكون ذات جودة
سيئة، ولكن لا يزال يتم اختيارها للبث المباشر بدون إنترنت. الحد الأدنى لعدد القنوات المسموح به في مواصفات البلوتوث هو 20 قناة، لذلك حتى إذا كانت هناك تداخلات في جميع القنوات الـ 79 وكانت جودة الاتصال سيئة، سيظلّ على وحدة التحكّم اختيار 20 قناة على الأقل لاستخدام تقنية AFH. |
LSTO |
وحدتان ثمانيتَان |
الإعداد الحالي لمهلة الإشراف على الروابط الوقت = N * 0.625 ملي ثانية النطاق الزمني: من 0.625 ملي ثانية إلى 40.9 ثانية |
Connection_Piconet_Clock |
4 وحدات ثمانيّة |
ساعة شبكة Piconet الخاصة بـ Connection_Handle المحدّد يجب أن تكون هذه القيمة هي نفسها قيمة الاستجابة لجهاز التحكّم لطلب HCI_Read_Clock من HCI باستخدام المَعلمة Which_Clock 0x01 (Piconet Clock). الوحدة: N * 0.3125 ملي ثانية (ساعة بلوتوث واحدة) |
Retransmission_Count |
4 وحدات ثمانيّة |
عدد عمليات إعادة الإرسال منذ آخر حدث ستتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
No_RX_Count |
4 وحدات ثمانيّة |
ما مِن عدد عمليات الاستقبال منذ الحدث الأخير. يزداد العدد عندما لا يتم استلام حزمة في الوقت المُجدوَل أو إذا كانت الحزمة التي تم استلامها تالفة. ستتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
NAK_Count |
4 وحدات ثمانيّة |
عدد الإشعارات برفض الإرسال (NAK) منذ آخر حدث ستتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
Last_TX_ACK_Timestamp |
4 وحدات ثمانيّة |
الطابع الزمني لآخر تأكيد إرسال يستند إلى ساعة البلوتوث في
شبكة piconet المركزية (CLK). الوحدة: N * 0.3125 ملي ثانية (ساعة بلوتوث واحدة) |
Flow_Off_Count |
4 وحدات ثمانيّة |
عدد المرات التي تلقّى فيها جهاز التحكّم إشارة إيقاف تدفق البيانات (STOP) منذ
الحدث الأخير. ستتم إعادة ضبط هذا العدد بعد إبلاغ المضيف. |
Last_Flow_On_Timestamp |
4 وحدات ثمانيّة |
الطابع الزمني لآخر عملية تدفق (GO) يستند إلى ساعة البلوتوث في
شبكة piconet المركزية (CLK). الوحدة: N * 0.3125 ملي ثانية (ساعة بلوتوث واحدة) |
Buffer_Overflow_Bytes |
4 وحدات ثمانيّة |
[بوحدة البايت]
عدد حالات تجاوز سعة المخزن المؤقت منذ آخر حدث |
Buffer_Underflow_Bytes |
4 وحدات ثمانيّة |
[بوحدة البايت]
عدد حالات انخفاض عدد العناصر في المخزن المؤقت منذ آخر حدث |
bdaddr |
6 وحدات ثمانيّة | عنوان الجهاز البعيد |
cal_failed_item_count |
1 وحدة ثمانيّة البت | عدد العناصر التي تعذّر معايرتها |
TX_Total_Packets |
4 وحدات ثمانيّة | عدد الحِزم التي يتم إرسالها |
TX_UnAcked_Packets |
4 وحدات ثمانيّة |
عدد الحِزم التي لا تتلقّى إشعارًا بالاستلام تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف به. |
TX_Flushed_Packets |
4 وحدات ثمانيّة |
عدد الحِزم التي لا يتم إرسالها من خلال نقطة تفريغها تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف به. |
TX_Last_Subevent_Packets |
4 وحدات ثمانيّة |
عدد الحِزم التي تُرسِل طبقة الربط وحدة بيانات PDU لبروتوكول CIS في الحدث الفرعي الأخير لحدث CIS تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف به. تكون القيمة صفرًا إذا لم تتوفّر قيمة صالحة للرابط. |
CRC_Error_Packets |
4 وحدات ثمانيّة |
عدد الحِزم التي تم استلامها وتتضمن خطأ في تسلسل التحقّق من صحة البيانات (CRC) منذ آخر حدث تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف به. |
RX_Duplicate_Packets |
4 وحدات ثمانيّة |
عدد الحِزم المكرّرة (المُعاد إرسالها) التي تم استلامها منذ آخر حدث تتم إعادة ضبط هذا العدد بعد إبلاغ المضيف به. |
RX_Unreceived_Packets |
4 وحدات ثمانيّة |
يكون عدد الحِزم غير المستلَمة هو نفسه عدد الحِزم في مَعلمة الأمر LE READ ISO Link
Quality (اطّلِع على الإصدار 5.4 من مواصفات Bluetooth الأساسية). مصادر البيانات المرتبطة
هي CIS وBIS. عند زيادة هذه القيمة، لا تتلقّى طبقة الربط حمولة محددة من قِبل نقطة تفريغها (في رابط CIS) أو في نهاية الحدث المرتبط بها (في رابط BIS، راجِع مواصفات Bluetooth الأساسية، الإصدار 5.4، المجلد 6، الجزء B، القسم 4.4.6.6). |
Coex_Info_Mask |
وحدتان ثمانيتَان |
البتّ 0 - CoexInvolvement: يتم ضبطه للإشارة إلى أنّه يُشتبه في أنّ أنشطة وضع "التعاون" متورّطة عند إنشاء هذا التقرير (على سبيل المثال، انقطاع الاتصال في A2DP واقتراب LSTO). البتّ 1 - WL 2G Radio Active (الراديو 2G في شبكة WLAN نشط): يتم ضبطه للإشارة إلى أنّ الراديو 2G في شبكة WLAN نشط. البتّ 2 - WL 2G Connected (اتصال بشبكة WLAN 2G): يتم ضبطه للإشارة إلى أنّ شبكة WLAN 2G نشطة ومتصلة. البتّ 3: WL 5G/6G Radio Active (الراديو 5G/6G في شبكة WLAN نشط): يتم ضبطه للإشارة إلى أنّ الراديو 5G/6G في شبكة WLAN نشط. البتّان 4 و15 - محجوزان |
مَعلمة خاصة بالمورّد | (إجمالي طول المَعلمة - لم يتم تحديده بعد) * وحدات ثمانيّة | ليحصل موفِّر وحدة التحكّم على المزيد من المَعلمات الخاصة بالموفِّر |
رمز الحدث الفرعي = 0x58 [Quality_Report_Id = 0x05، حدث التهاب الجذر]
يشير هذا الحدث إلى أنّ Bluetooth HAL أو وحدة التحكّم واجهت خطأً فادحًا وتحتاج إلى حِزمة Bluetooth لتسجيل هذا الموقف وإعادة التشغيل. يجب أن يُرسِل جهاز التحكّم حدث Root_Inflammation_Event إلى تسلسل Bluetooth قبل إرسال القطعة الأولى من أحداث معلومات تصحيح الأخطاء في أي حال.
تحتوي المَعلمة Error_Code على رمز خطأ تم الإبلاغ عنه من HAL/Controller، أو 0 إذا كان خطأ خاصًا بمورّد شريحة المعالجة. يحتوي رمز الخطأ Vendor_Specific_Error_Code على رمز خطأ خاص بمزوّد شريحة المعالجة من HAL/وحدة التحكّم. يجب ضبطها على 0 إذا لم تكن المَعلمة Error_Code هي 0. يجب ألا يكون المَعلمتَان Error_Code وVendor_Specific_Error_Code كلاهما 0.
مَعلمة الحدث الفرعي | الحجم | الغرض |
---|---|---|
Quality_Report_Id |
1 وحدة ثمانيّة البت |
0x00 ~ 0x04: محجوزة 0x05: التهاب الجذر 0x06 ~ 0xFF: محجوزة. |
Error_Code |
1 وحدة ثمانيّة البت |
0x00: تم تضمين رمز خطأ خاص بمورّد مجموعة الشرائح. 0x01 ~ 0xFF: حدث خطأ في وحدة التحكّم. راجِع مواصفات البلوتوث [المجلد 2] الجزء "د"، رموز الأخطاء للحصول على قائمة برموز الأخطاء والأوصاف. |
Vendor_Specific_Error_Code |
1 وحدة ثمانيّة البت |
0x00: لا يتضمّن هذا الرمز أي رمز خطأ خاص بمورّد شريحة المعالجة. 0x01 ~ 0xFF: رمز خطأ خاص بمورّد شريحة المعالجة |
مَعلمة خاصة بالمورّد | (إجمالي طول المَعلمة - 4) * وحدات ثماني | ليحصل موفِّر وحدة التحكّم على المزيد من المَعلمات الخاصة بالموفِّر |
رمز الحدث الفرعي = 0x58 [Quality_Report_Id = 0x11 ~ 0x13، حدث مرتبط بتفريغ السجلّ]
مَعلمة الحدث الفرعي | الحجم | الغرض |
---|---|---|
Quality_Report_Id |
1 وحدة ثمانيّة البت |
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، يحسب جهاز التحكّم رقمSN للبث من خلال زيادة القيمة الحالية بمقدارISO_Interval ÷ SDU_Interval
الذي تم ضبطه. وفي أول
فاصل، يتم إعداده على القيمة 0.بعد ذلك، تنطبق القواعد التالية على كل حزمة في "الترتيب الأوّلي للوصول إلى الذاكرة" (FIFO) وفقًا لمعيار ISO:
-
يحسب جهاز التحكّم الفرق في التفاف الرقم التسلسلي 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 |
وحدتان ثمانيتَان |
التأخير بالميكرو ثانية بين إنشاء الحدث ونقطة الربط أو بدء الفاصل الزمني ISO لنقطة مرجعية BIG أو CIG
الفعّالة
يتم تحديد الطابع الزمني لنقطة الربط الفعالة من خلال: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 عند إرسال جميع وحدات البيانات الصغرى للوحدة الصغرى المحدّدة، والتي تم تحديدها من خلال رقم التسلسل، وإرسالها بنجاح وإقرارها. تتراوح القيمة 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 |
1 وحدة ثمانيّة البت |
0x01 - Set_Advt_Param_Multi_Sub_Cmd 0x02 - Set_Advt_Data_Multi_Sub_Cmd 0x03 - Set_Scan_Resp_Data_Multi_Sub_Cmd 0x04 - Set_Random_Addr_Multi_Sub_Cmd 0x05 - Set_Advt_Enable_Multi_Sub_Cmd
|
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Multi_advt_opcode |
1 وحدة ثمانيّة البت |
0x01 - Set_Advt_Param_Multi_Command 0x02 - Set_Advt_Data_Multi_Command 0x03 - Set_Scan_Resp_Data_Multi_Command 0x04 - Set_Random_Addr_Multi_Command 0x05 - Set_Advt_Enable_Multi_Command
|
LE_Multi_Advt_Command: Set_Advt_Param_Multi_Sub_Cmd
المرجع الأساسي: مواصفات Bluetooth Core 4.1، الصفحة 964 (LE Set Advertising Parameter Command)
رقم تعريف التحكم الفرعي في الإطار: 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 |
1 وحدة ثمانيّة البت | تُحدِّد مدى انطباق المَعلمات أعلاه على مثيل. |
Tx_power |
1 وحدة ثمانيّة البت |
Transmit_Power الوحدة: بوحدة ديسيبل ميللي واط (عدد صحيح بعلامة) النطاق (-70 إلى +20) |
يمكن أن تكون المَعلمة Own_Address
عنوانًا تم ضبطه من قِبل المضيف
في وقت إعداد مثيل الإعلانات المتعدّدة هذا. يوفر ذلك
إمكانية الحصول على عنوان خاص قابل للحل في وقت
إرسال الإشارة الأولى. سيستمر عرض الإعلان في إحدى النُسخ
بغض النظر عن الاتصال. يمكن أن يُصدر حِزمة BT للمضيف أمرًا لبدء الإعلان على إحدى النُسخ بعد الاتصال.
سيتم إنشاء حدث "اكتمال الأمر" لهذا الأمر كما هو محدّد
في مواصفات Bluetooth Core 4.1، وفقًا للأمر أعلاه. سيستجيب عنصر التحكّم
برمز عدم النجاح (مَعلمة غير صالحة) إذا كانت
حالة الإعلان أو مَعلمات Tx_Power
غير صالحة.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Multi_advt_opcode |
1 وحدة ثمانيّة البت | 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 Command)
التحكم الفرعي في حدود الجلسة: 0x02
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
Advertising_Data_Length |
حسب المواصفات | حسب المواصفات |
Advertising_Data |
حسب المواصفات | حسب المواصفات |
Advertising_Instance |
1 وحدة ثمانيّة البت | تُحدِّد مدى انطباق المَعلمات أعلاه على مثيل. |
سيتم إنشاء حدث "اكتمال الأمر" لهذا الأمر كما هو محدّد
في مواصفات Bluetooth Core 4.1، وفقًا للأمر أعلاه. سيستجيب عنصر التحكّم
برمز عدم النجاح إذا كانت مثيل الإعلان
أو مَعلمات Tx_Power
غير صالحة.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Multi_advt_opcode |
1 وحدة ثمانيّة البت | 0x02 [Set_Advt_Data_Multi_Sub_Cmd] |
LE_Multi_Advt_Command: Set_Scan_Resp_Data_Multi_Sub_Cmd
المرجع الأساسي: مواصفات Bluetooth Core 4.1، الصفحة 970 (LE Set Scan Response Data Command)
Sub OCF: 0x03
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
Scan_Response_Data_Length |
حسب المواصفات | حسب المواصفات |
Scan_Response_Data |
حسب المواصفات | حسب المواصفات |
Advertising_Instance |
1 وحدة ثمانيّة البت | تُحدِّد مدى انطباق المَعلمات أعلاه على مثيل. |
سيتم إنشاء حدث "اكتمال الأمر" لهذا الأمر كما هو محدّد
في مواصفات Bluetooth Core 4.1، وفقًا للأمر أعلاه. سيستجيب عنصر التحكّم
برمز عدم النجاح (مَعلمة غير صالحة) إذا كانت
حالة الإعلان أو مَعلمات Tx_Power
غير صالحة.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Multi_advt_opcode |
1 وحدة ثمانيّة البت | 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 Command)
Sub OCF: 0x04
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
عنوان عشوائي | حسب المواصفات | حسب المواصفات |
Advertising_Instance |
1 وحدة ثمانيّة البت | تُحدِّد مدى انطباق المَعلمات أعلاه على مثيل. |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Multi_advt_opcode |
1 وحدة ثمانيّة البت | 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 في هذه المواصفات الأساسية)
OCF: 0x05
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
Advertising_Enable |
1 وحدة ثمانيّة البت | تعني القيمة 1 تفعيل الميزة. وتعني أي قيمة أخرى إيقاف الميزة. |
Advertising_Instance |
1 وحدة ثمانيّة البت | تُحدِّد مدى انطباق المَعلمات أعلاه على مثيل. يشير المثيل 0 إلى مثيل HCI عادي. |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Multi_advt_opcode |
1 وحدة ثمانيّة البت | 0x05 [Set_Advt_Enable_Multi_Sub_Cmd] |
تمّ نقل بيانات حلّ عنوان خاص
تؤدي هذه الميزة إلى ترجمة عنوان خاص في البرامج الثابتة لوحدة التحكّم أو في الجهاز، ما يقدّم المزايا التالية:
- وقت الاستجابة المرتبط بالمضيف في حلّ عنوان خاص
- توفير الطاقة من خلال الامتناع عن تنشيط المضيف
LE_Set_RPA_Timeout
OCF: 0x15C
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
LE_local_IRK |
16 وحدة ثمانيّة | مفتاح الربط المؤقت للجهاز المحلي المستخدَم لإنشاء عناوين قابلة للحلّ عشوائية |
tRPA_min |
وحدتان ثمانيتَان |
الحد الأدنى لمهلة إنشاء RPA بالثواني على وحدة التحكّم
إنشاء عناوين جديدة قابلة للحلّ لأي
أحداث إعلانية/فحص/اتصال في وقت انتهاء المهلة هذا أو بعده. النطاق المسموح به: من 300 إلى 1800 |
tRPA_max |
وحدتان ثمانيتَان |
الحد الأقصى لمهلة إنشاء RPA بالثواني. يجب أن ينشئ جهاز التحكّم
عناوين جديدة قابلة للحل لأي
أحداث إعلانية/فحص/اتصال في وقت الاستراحة هذا أو قبله. النطاق المسموح به: tRPA_min -1800
|
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت |
حالة الطلب قيم حالة HCI المقترَحة: 0x00 نجاح 0x01 أمر غير معروف (إذا لم يكن متوافقًا) 0x12 مَعلمات أمر غير صالحة (إذا كانت أي مَعلمات خارج النطاق المحدَّد) |
LE_RPA_offload_Command
OCF: 0x155
مَعلمة الأمر | الحجم | الغرض |
---|---|---|
RPA_offload_opcode |
1 وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - إضافة IRK إلى القائمة 0x3 - إزالة IRK من القائمة 0x4 - محو قائمة IRK 0x5 - قراءة إدخال قائمة IRK |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Event_RPA_offload_opcode |
1 وحدة ثمانيّة البت |
0x1 - تفعيل ميزة خاصة بالعميل 0x2 - إضافة IRK إلى القائمة 0x3 - إزالة IRK من القائمة 0x4 - محو قائمة IRK 0x5 - قراءة إدخال قائمة IRK |
LE_RPA_offload: Enable_cust_specific_sub_Command
رقم تعريف التحكم الفرعي في الإطار: 0x01
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
enable_customer_specific_feature_set |
1 وحدة ثمانيّة البت |
0x01 - تفعيل ميزة تكنولوجيات الذكاء الاصطناعي المعالجة المحدودة (RPA) التي تم نقلها إلى الأجهزة 0x00 - إيقاف ميزة تكنولوجيات الذكاء الاصطناعي المعالجة المحدودة (RPA) التي تم نقلها إلى الأجهزة |
يجب أن يفعّل المضيف ميزة RPA offload استنادًا إلى قدرة الرقاقة. يُرجى الرجوع إلى LE_Get_Vendor_Capabilities_Command
.
يمكن أن يكون لكل شريحة max_irk_list_sz
مختلف في البرامج الثابتة.
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Event_cust_specific_feature_opcode |
1 وحدة ثمانيّة البت | 0x01 [تفعيل ميزة خاصة بالعميل] |
LE_RPA_offload: Add_IRK_to_list_sub_Command
التحكم الفرعي في حدود الجلسة: 0x02
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
LE_IRK |
16 أوكتت | LE IRK (أول بايت LSB) |
Address_Type |
1 وحدة ثمانيّة البت |
0: عنوان علني 1: عنوان عشوائي |
LE_Device_Address |
6 وحدات ثمانيّة | عنوان عام أو عشوائي مرتبط بـ IRK (البايت الأول LSB) |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Event_cust_specific_feature_opcode |
1 وحدة ثمانيّة البت | 0x02 [إضافة مفتاح الربط المؤقت (IRK) إلى القائمة] |
LE_IrkList_AvailableSpaces |
1 وحدة ثمانيّة البت | إدخالات قائمة IRL المتاحة بعد العملية الحالية |
LE_RPA_offload: Remove_IRK_to_list_sub_Command
Sub OCF: 0x03
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
Address_Type |
1 وحدة ثمانيّة البت |
0: عنوان علني 1: عنوان عشوائي |
LE_Device_Address |
6 وحدات ثمانيّة | عنوان عام أو عشوائي مرتبط بـ IRK |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Event_cust_specific_feature_opcode |
1 وحدة ثمانيّة البت | 0x03 [إزالة مفتاح الربط المؤقت من القائمة] |
LE_IrkList_AvailableSpaces |
1 وحدة ثمانيّة البت | إدخالات قائمة IRL المتاحة بعد العملية الحالية |
LE_RPA_offload: Clear_IRK_list_sub_Command
Sub OCF: 0x04
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
بدون تحديد نمط |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Event_cust_specific_feature_opcode |
1 وحدة ثمانيّة البت | 0x04 [محو قائمة مفاتيح الالتقاط العشوائي للبيانات] |
LE_IrkList_AvailableSpaces |
1 وحدة ثمانيّة البت |
إدخالات قائمة IRL المتاحة بعد العملية الحالية [max_irk_list_sz]
|
LE_RPA_offload: Read_IRK_list_sub_Command
التحكم الفرعي في العرض: 0x05
مَعلمة الأمر الفرعي | الحجم | الغرض |
---|---|---|
LE_read_IRK_list_entry-index |
1 وحدة ثمانيّة البت | فهرس قائمة IRK [0, max_irk_list_sz-1] |
سيتمّ إنشاء حدث "اكتمال الأمر" لهذا الأمر.
مَعلمة الإرجاع | الحجم | الغرض |
---|---|---|
Status |
1 وحدة ثمانيّة البت | حالة اكتمال الأمر |
Event_cust_specific_feature_opcode |
1 وحدة ثمانيّة البت | 0x05 [قراءة إدخال قائمة مفتاح الربط المؤقت (IRK)] |
LE_Read_IRK_List_entry |
1 وحدة ثمانيّة البت | فهرس مفتاح الربط المؤقت الذي يريد المضيف قراءته (الحد الأقصى لحجم قائمة مفاتيح الربط المؤقت هو 32) |
LE_IRK |
16 أوكتت | قيمة IRK |
Address_Type |
1 وحدة ثمانيّة البت |
0: عنوان علني 1: عنوان عشوائي |
LE_Device_Address |
6 وحدات ثمانيّة | عنوان عام أو عشوائي مرتبط بـ IRK |
LE_Resolved_Private_Address |
6 وحدات ثمانيّة | العنوان الخاص الحالي الذي تم حلّه لهذا مفتاح الربط الدولي |