ข้อกำหนด HCI

อินเทอร์เฟซตัวควบคุมโฮสต์ (HCI) ใช้สำหรับการโต้ตอบกับตัวควบคุมบลูทูธ

เอกสารนี้แสดงรายการข้อกำหนด HCI ของบลูทูธ (BT) และบลูทูธพลังงานต่ำ (BLE) เป้าหมายคือการที่ผู้ให้บริการสแต็ก BT ของโฮสต์และผู้ให้บริการตัวควบคุม BT ปฏิบัติตามข้อกำหนดของแพลตฟอร์มเหล่านี้เพื่อใช้ชุดฟีเจอร์ที่อธิบายไว้ด้านล่าง

เอกสารนี้อ้างถึงข้อมูลจำเพาะของ Bluetooth Core 5.2 ว่าเป็น "ข้อมูลจำเพาะ" ข้อมูลจำเพาะของ Bluetooth Core 5.2 มีอยู่ใน เว็บไซต์ Bluetooth SIG พร้อมกับเอกสารอื่นๆ ที่นำมาใช้

ภาพรวมการออกแบบทั่วไป

ความสามารถของชิปและการกำหนดค่า

ในฐานะแพลตฟอร์มแบบเปิด Android มีเมทริกซ์ของรุ่นซอฟต์แวร์, OEM, ผู้ให้บริการ รวมถึงความสามารถของแพลตฟอร์มและชิป

ในการจัดการกับภูมิทัศน์ที่แตกต่างกันและจัดการการย้ายข้อมูล ปรัชญาการออกแบบในการอนุญาตให้ตัวควบคุม BT แสดงขีดความสามารถ (นอกเหนือจากข้อมูลจำเพาะของ Bluetooth Core 5.2 มาตรฐาน) ไว้ในเอกสารนี้ จากนั้นสแต็กโฮสต์ BT จะใช้ความสามารถเหล่านี้เพื่อกำหนดฟีเจอร์ที่จะเปิดใช้ได้

การรองรับมาตรฐานแบบเปิด

เป้าหมายอย่างหนึ่งของ Android คือการรองรับมาตรฐานแบบเปิดหลังจากให้สัตยาบันในข้อกำหนดของบลูทูธ หากฟีเจอร์ที่อธิบายด้านล่างพร้อมใช้งานในเมธอด HCI มาตรฐานในข้อกำหนดของบลูทูธในอนาคต เราจะใช้วิธีการนั้นเป็นค่าเริ่มต้น

ความสามารถเฉพาะผู้ให้บริการ

คำสั่งเฉพาะผู้ให้บริการ: LE_Get_Vendor_Capabilities_Command

ช่องคำสั่ง OpCode (OCF): 0x153

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
ไม่มี รายการพารามิเตอร์คำสั่งว่างเปล่า

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
max_advt_instances
(เลิกใช้งาน)
1 อ็อกเท็ต จำนวนอินสแตนซ์โฆษณาที่รองรับ

จองหลังเวอร์ชัน 0.98
เราจะเลิกใช้งานพารามิเตอร์นี้ในข้อมูลจำเพาะของฟีเจอร์ v0.98 และสูงกว่าของ Google เพื่อเปลี่ยนไปใช้ LE Extended Advertising ที่มีใน BT spec เวอร์ชัน 5.0 ขึ้นไป
offloaded_resolution_of_private-address
(เลิกใช้งาน)
1 อ็อกเท็ต ความสามารถของชิป BT ของ RPA
หากชิปรองรับ ก็จะต้องให้โฮสต์เปิดใช้
0 = ไม่มีความสามารถ
1 = ใช้งานได้

จองหลัง v0.98
เราจะเลิกใช้งานพารามิเตอร์นี้ในข้อมูลจำเพาะของฟีเจอร์ Google เวอร์ชัน 0.98 ขึ้นไป เพื่อเปลี่ยนไปใช้ฟีเจอร์ความเป็นส่วนตัวที่มีอยู่ในข้อมูลจำเพาะของ BT เวอร์ชัน 4.2 ขึ้นไป
total_scan_results_storage 2 อ็อกเท็ต พื้นที่เก็บข้อมูลสำหรับผลการสแกนในหน่วยไบต์
max_irk_list_sz 1 อ็อกเท็ต จำนวนรายการ IRK ที่รองรับในเฟิร์มแวร์
filtering_support 1 อ็อกเท็ต รองรับการกรองในตัวควบคุม
0 = ไม่รองรับ
1 = รองรับ
max_filter 1 อ็อกเท็ต จำนวนตัวกรองที่รองรับ
activity_energy_info_support 1 อ็อกเท็ต รองรับการรายงานกิจกรรมและข้อมูลพลังงาน
0 = ไม่สามารถทำได้
1 = มีขีดจำกัด
version_supported 2 อ็อกเท็ต ระบุเวอร์ชันข้อมูลจำเพาะของฟีเจอร์ Google ที่รองรับ
bytes[0] = Major number
bytes[1] = หมายเลขรอง

v1.04
bytes[0] = 0x01
bytes[1] = 0x04
total_num_of_advt_tracked 2 อ็อกเท็ต จำนวนผู้ลงโฆษณาทั้งหมดที่ติดตามเพื่อวัตถุประสงค์ OnLost/OnFound
extended_scan_support 1 อ็อกเท็ต รองรับช่วงเวลาและกรอบเวลาการสแกนเพิ่มเติม
debug_logging_supported 1 อ็อกเท็ต รองรับการบันทึกข้อมูลการแก้ไขข้อบกพร่องแบบไบนารีจากตัวควบคุม
LE_address_generation_offloading_support
(เลิกใช้งาน)
1 อ็อกเท็ต 0 = ไม่รองรับ
1 = รองรับ

จองหลังเวอร์ชัน 0.98
เราจะเลิกใช้งานพารามิเตอร์นี้ในข้อมูลจำเพาะของฟีเจอร์ Google เวอร์ชัน 0.98 ขึ้นไป เพื่อเปลี่ยนไปใช้ฟีเจอร์ความเป็นส่วนตัวที่มีอยู่ในข้อมูลจำเพาะของ BT เวอร์ชัน 4.2 ขึ้นไป
A2DP_source_offload_capability_mask 4 อ็อกเท็ต มาสก์บิตสำหรับประเภทตัวแปลงรหัสที่รองรับ
บิต 0 - SBC
บิต 1 - AAC
บิต 2 - APTX
บิต 3 - APTX HD
บิต 4 - LDAC
สงวนบิต 5-31 ไว้
bluetooth_quality_report_support 1 อ็อกเท็ต รองรับการรายงานเหตุการณ์เกี่ยวกับคุณภาพของบลูทูธ
0 = ไม่สามารถดำเนินการได้
1 = มีความสามารถ
dynamic_audio_buffer_support 4 อ็อกเท็ต รองรับบัฟเฟอร์เสียงแบบไดนามิกในตัวควบคุมบลูทูธ
บิตมาสก์สำหรับประเภทตัวแปลงรหัสที่รองรับ
บิต 0 - SBC
บิต 1 - AAC
Bit 2 - APTX
Bit 3 - APTX HD
Bit 4 - LDAC
บิต 5-31 สงวนไว้
a2dp_offload_v2_support 1 อ็อกเท็ต รองรับคำสั่ง A2dp Offload v2 ในตัวควบคุมบลูทูธ (โปรดดู เริ่มต้นการลด A2DP, หยุด A2DP Offload)
0 = ไม่รองรับ
1 = รองรับ

ผลการสแกนแบบกลุ่ม

เป้าหมายในการออกแบบคือการปรับปรุงวิธีการส่งการแจ้งเตือนเหตุการณ์เกี่ยวกับบลูทูธ LE SL ไปยังโฮสต์เพื่อประหยัดพลังงานในโฮสต์

การลดความถี่ที่ตัวควบคุมจะแจ้งเตือนตัวประมวลผลแอปพลิเคชันโฮสต์เพื่อสแกนผลลัพธ์ จะทำให้ตัวประมวลผลแอปพลิเคชันโฮสต์อยู่ในสถานะไม่มีการใช้งาน/อยู่ในโหมดสลีปได้นานขึ้น ซึ่งจะลดการใช้พลังงานในโฮสต์ พารามิเตอร์การแสดงผล total_scan_results_storage ของ LE_Get_Vendor_Capabilities_Command ระบุความสามารถของชิปในการจัดเก็บข้อมูลผลการสแกน

ฟีเจอร์นี้มุ่งเน้นที่การจัดการและการกำหนดค่าของพื้นที่เก็บข้อมูล LEสแกนผลลัพธ์ในตัวควบคุมบลูทูธ ระบบจะใช้พื้นที่เก็บข้อมูลเพื่อจัดกลุ่มข้อมูลโฆษณาไว้ชั่วคราว รวมทั้งสแกนข้อมูลและข้อมูลเมตาที่ตัวควบคุมได้รับเพื่อส่งไปยังโฮสต์ในภายหลัง

เฟิร์มแวร์ต้องรองรับการทำงานแบบกลุ่ม 2 ประเภท ซึ่งมีส่วนร่วมได้พร้อมกัน:

  • ตัด ประกอบด้วยองค์ประกอบข้อมูลต่อไปนี้ {MAC, TX Power, RSSI, Timestamp}
  • เต็ม ประกอบด้วยองค์ประกอบข้อมูลต่อไปนี้ {MAC, TX Power, RSSI, Timestamp, Adv Data, Scan Response}

คำสั่ง_สแกน_LE_Batch

OCF: 0x156

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
Batch_Scan_opcode 1 อ็อกเท็ต 0x1 - เปิดใช้ฟีเจอร์เฉพาะลูกค้า
0x2 - ตั้งค่าพารามิเตอร์พื้นที่เก็บข้อมูลการสแกนเป็นกลุ่ม
0x3 - ตั้งค่าพารามิเตอร์การสแกนเป็นกลุ่ม
0x4 - อ่านพารามิเตอร์ผลลัพธ์การสแกนเป็นกลุ่ม

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้ การเปิดใช้ฟีเจอร์เฉพาะลูกค้าจะไม่เริ่มการสแกน

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Batch_Scan_opcode 1 อ็อกเท็ต 0x1 - เปิดใช้ฟีเจอร์เฉพาะลูกค้า
0x2 - ตั้งค่าพารามิเตอร์พื้นที่เก็บข้อมูลการสแกนเป็นกลุ่ม
0x3 - ตั้งค่าพารามิเตอร์การสแกนเป็นกลุ่ม
0x4 - อ่านพารามิเตอร์ผลลัพธ์การสแกนเป็นกลุ่ม

LE_Batch_Scan_Command: เปิดใช้ฟีเจอร์เฉพาะสำหรับลูกค้า

OCF ย่อย: 0x01

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
enable_customer_specific_feature_set 1 อ็อกเท็ต 0x01 - เปิดใช้ฟีเจอร์การสแกนเป็นกลุ่ม
0x00 - ปิดใช้ฟีเจอร์การสแกนเป็นกลุ่ม

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Batch_Scan_opcode 1 อ็อกเท็ต 0x1 - เปิดใช้ฟีเจอร์เฉพาะลูกค้า
0x2 - ตั้งค่าพารามิเตอร์พื้นที่เก็บข้อมูลการสแกนเป็นกลุ่ม
0x3 - ตั้งค่าพารามิเตอร์การสแกนเป็นกลุ่ม
0x4 - อ่านพารามิเตอร์ผลลัพธ์การสแกนเป็นกลุ่ม

LE_Batch_Scan_Command: ตั้งค่าคำสั่งย่อยของพารามิเตอร์สแกนพื้นที่เก็บข้อมูลเป็นกลุ่ม

OCF ย่อย: 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: ตั้งค่าคำสั่งย่อยของพารามิเตอร์การสแกนเป็นกลุ่ม

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 เพียง 1 รายการสำหรับช่วงเวลาการสแกนแต่ละช่วง ระเบียนที่จะเก็บไว้สําหรับโหมดถูกตัดทอนคือ {BD_ADDR, Tx Power, RSSI, Timestamp}

เมื่อเปิดใช้โหมดเต็ม ระบบจะใช้การสแกนที่ใช้งานอยู่และจะบันทึกการตอบกลับการสแกน คีย์ที่ไม่ซ้ำกันของรูปแบบแบบเต็ม = {MAC, Ad Platform} โดยไม่คำนึงถึงช่วงเวลาการสแกน ระเบียนที่จะเก็บไว้สำหรับโหมดเต็มคือ {BD_ADDR, Tx Power, RSSI, Timestamp, Ad Platform, Scan Response} ในโหมดเต็มหน้าจอ ระบบจะบันทึกแพ็กเกต AD เดียวกันหลายครั้งในช่วงการสแกนต่างๆ เพียงครั้งเดียว อย่างไรก็ตาม ในโหมดถูกตัดทอน ค่าจะเป็นการเปิดเผยของ BA_ADDR ในช่วงเวลาการสแกนต่างๆ ที่สนใจ (1 ครั้งต่อช่วงเวลาการสแกน) RSSI คือค่าเฉลี่ยของโฆษณาที่ไม่ซ้ำทั้งหมดที่ซ้ำกันภายในช่วงเวลาการสแกน

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Batch_scan_opcode 1 อ็อกเท็ต 0x03 [ตั้งค่าพารามิเตอร์การสแกนเป็นกลุ่ม]

LE_Batch_Scan_Command: อ่านคำสั่งย่อยของผลลัพธ์การสแกนเป็นกลุ่ม

OCF ย่อย: 0x04

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
Batch_Scan_Data_read 1 อ็อกเท็ต 0x01 – ข้อมูลโหมดตัดทอน
0x02 – ข้อมูลโหมดเต็ม

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้ เมื่อโฮสต์ออกคำสั่งนี้ ผลลัพธ์ทั้งหมดในตัวควบคุมอาจไม่ตรงกับเหตุการณ์คำสั่งเสร็จสมบูรณ์เพียงเหตุการณ์เดียว โฮสต์จะออกคำสั่งนี้ซ้ำจนกว่าผลลัพธ์ที่สอดคล้องกันในเหตุการณ์คำสั่งเสร็จสมบูรณ์จะระบุว่าเป็น 0 ในจำนวนระเบียน ซึ่งระบุว่าตัวควบคุมไม่มีระเบียนที่จะสื่อสารกับโฮสต์แล้ว เหตุการณ์คำสั่งเสร็จสมบูรณ์แต่ละรายการอาจมีระเบียนข้อมูลเพียงประเภทเดียวหลายรายการ (แบบเต็มหรือถูกตัด)

การอ้างอิงเวลาของตัวควบคุมและโฮสต์จะไม่ซิงค์กัน โดยหน่วยของการประทับเวลาคือ 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 ปรับเปลี่ยนได้ Truncated _1 _samp00
-1octet [0]: 6 octet [0]: 6 octet0
Address_Type[0]: 1 octet
Tx_Pwr[0]: 1 octet
RSSI[0] : 1 octet
การประทับเวลา[0]: 2 octet [octet [octet]
[octet [octet]
[over-data]











num_of_recordsnum_of_recordsScan_data_resp

ตัวกรองเนื้อหาแพ็กเก็ตโฆษณา

ใช้ตัวเลือกนี้เพื่อเปิดใช้/ปิดใช้/ตั้งค่าตัวกรองเนื้อหาแพ็กเก็ตโฆษณา (APCF) ในตัวควบคุม APCF จะกรองรายงานการโฆษณาในตัวควบคุม แต่จะไม่กรองโฆษณาเป็นระยะ

คำสั่ง LE_APCF

OCF: 0x157

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
APCF_opcode 1 อ็อกเท็ต 0x00 - เปิดใช้ APCF ในอนาคต
0x01 - APCF ตั้งค่าพารามิเตอร์การกรอง APCF ~ 0 - 0
0x02 - Fx0 ในอนาคต - 0
0x02 - Fx0 สำรองไว้สำหรับผู้ให้บริการข้อมูล APCF ในอนาคต
0x01 - ใช้ Fx เพื่อกู้คืนผู้ให้บริการข้อมูล APCF ในอนาคต
0x02 - ที่อยู่ผู้ออกอากาศ APCF Fx
0x03 - UUID บริการ APCF - UUID บริการ APCF - APCF - UUID การนำส่งบริการ APCF
0x05 - APCF Transport Name
0x06





ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะการคืนสินค้า
APCF_opcode 1 อ็อกเท็ต 0x00 - เปิดใช้ APCF ในอนาคต
0x01 - APCF ตั้งค่าพารามิเตอร์การกรอง APCF ~ 0 - 0
0x02 - Fx0 ในอนาคต - 0
0x02 - Fx0 สำรองไว้สำหรับผู้ให้บริการข้อมูล APCF ในอนาคต
0x01 - ใช้ Fx เพื่อกู้คืนผู้ให้บริการข้อมูล APCF ในอนาคต
0x02 - ที่อยู่ผู้ออกอากาศ APCF Fx
0x03 - UUID บริการ APCF - UUID บริการ APCF - APCF - UUID การนำส่งบริการ APCF
0x05 - APCF Transport Name
0x06





LE_APCF_Command: Enable_sub_cmd

OCF ย่อย: 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

คำสั่งย่อยนี้ใช้เพื่อเพิ่มหรือลบข้อกำหนดของตัวกรอง หรือล้างรายการตัวกรองสำหรับการกรองบนชิป

OCF ย่อย: 0x01

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
APCF_Action 1 อ็อกเท็ต 0x00 - เพิ่ม
0x01 - ลบ
0x02 - ล้าง
ลบจะล้างตัวกรองบางรายการ รวมถึงรายการฟีเจอร์ที่เกี่ยวข้องในตารางอื่นๆ
"ล้าง" จะล้างตัวกรองและรายการที่เกี่ยวข้องทั้งหมดในตารางอื่นๆ
APCF_Filter_Index 1 อ็อกเท็ต ดัชนีตัวกรอง (0, max_filter-1)
APCF_Feature_Selection 2 อ็อกเท็ต อัตราบิต 8 สำหรับฟีเจอร์ที่เลือกมีดังนี้
บิต 0: ตั้งค่าเพื่อเปิดใช้ตัวกรองที่อยู่การออกอากาศ
บิต 1: ตั้งค่าเพื่อเปิดใช้ตัวกรองการเปลี่ยนแปลงข้อมูลบริการ
Bit 2: ตั้งค่าเพื่อเปิดใช้การตรวจสอบ UUID บริการ
Bit 3: ตั้งค่าเพื่อเปิดใช้การตรวจสอบ UUID การชักชวนบริการ
Bit 4: ตั้งค่าเพื่อเปิดใช้การตรวจสอบชื่อในพื้นที่
Bit 5: ตั้งค่าเพื่อเปิดใช้การตรวจสอบข้อมูลบริการ AD
ตั้งค่าเพื่อเปิดใช้การตรวจสอบข้อมูลบริการ AD
ตั้งค่าเพื่อเปิดใช้การตรวจสอบ UUID ของบริการ
APCF_List_Logic_Type 2 อ็อกเท็ต การดำเนินการเชิงตรรกะสำหรับการเลือกฟีเจอร์แต่ละรายการ (ตำแหน่งต่อบิต) ที่ระบุใน APCF_Feature_Selection
ใช้ได้เมื่อมีการเปิดใช้ฟีเจอร์เท่านั้น
ค่าตำแหน่งบิต:
0: หรือ
1: AND
หากเลือกตรรกะ "AND" แพ็กเก็ต ADV จะส่งตัวกรองก็ต่อเมื่อมีรายการทั้งหมดในรายการเท่านั้น
หากเลือกตรรกะ "OR" แพ็กเกต ADV จะส่งตัวกรองหากมีรายการต่างๆ ในรายการ
APCF_Filter_Logic_Type 1 อ็อกเท็ต 0x00: หรือ
0x01: AND
หมายเหตุ: ประเภทตรรกะเป็น "N/A" สำหรับ 3 ช่องแรกของ APCF_Feature_Selection ซึ่งเป็นตรรกะ "AND" เสมอ ซึ่งใช้ได้เฉพาะกับ (บิต 3 - บิต 6) 4 ช่องของ APCF_Feature_Selection
rssi_high_thresh 1 อ็อกเท็ต [in dBm]
ระบบจะถือว่าผู้ลงโฆษณาเห็นคุณก็ต่อเมื่อสัญญาณสูงกว่าเกณฑ์ที่สูงของ RSSI เท่านั้น ไม่เช่นนั้น เฟิร์มแวร์จะต้องทำงานราวกับว่าไม่เคยเห็นมาก่อน
delivery_mode 1 อ็อกเท็ต 0x00 - immediate
0x01 - on_found
0x02 - batched
onfound_timeout 2 อ็อกเท็ต ใช้ได้เฉพาะเมื่อ delivery_mode คือ on_found
[เป็นมิลลิวินาที]
เวลาที่เฟิร์มแวร์จะอยู่ในการใช้งานต่อและรวบรวมโฆษณาเพิ่มเติมก่อนรายงาน
onfound_timeout_cnt 1 อ็อกเท็ต ใช้ได้เฉพาะเมื่อ delivery_mode คือ on_found
[count]
หากโฆษณาใน onFound อยู่ในเฟิร์มแวร์เป็นเวลา onfound_timeout โฆษณาจะรวบรวมโฆษณา 2-3 รายการและจะมีการตรวจสอบจำนวน หากจำนวนเกิน onfound_timeout_cnt ระบบจะรายงาน OnFound ทันทีหลังจากนั้น
rssi_low_thresh 1 อ็อกเท็ต ใช้ได้เฉพาะเมื่อ delivery_mode คือ on_found
[in dBm]
ระบบจะพิจารณาว่าแพ็กเก็ตของผู้ลงโฆษณาไม่แสดงให้เห็นหาก RSSI ของแพ็กเก็ตที่ได้รับไม่สูงกว่าเกณฑ์ขั้นต่ำของ RSSI
onlost_timeout 2 อ็อกเท็ต ใช้ได้เฉพาะเมื่อ delivery_mode คือ on_found
[เป็นมิลลิวินาที]
หากหลังจากพบโฆษณาแล้ว ไม่มีการเห็นโฆษณาติดต่อกันเป็นเวลา lost_timeout ระบบจะรายงานว่าโฆษณาหายไปทันที
num_of_tracking_entries 2 อ็อกเท็ต ใช้ได้เฉพาะเมื่อ delivery_mode คือ on_found
[count]
จำนวนผู้ลงโฆษณาทั้งหมดที่จะติดตามต่อตัวกรอง

ค่า RSSI ต้องใช้การเสริม 2 เพื่อแสดงค่าลบ

โฮสต์จะต้องกำหนดค่าตัวกรองหลายรายการได้โดยตั้งค่า APCF_Application_Address_type เป็น 0x02 (สำหรับที่อยู่ของผู้ออกอากาศทั้งหมด) เพื่อจัดการชุดค่าผสมตัวกรองต่างๆ

การกรอง การจัดกลุ่ม และการรายงานเป็นแนวคิดที่เกี่ยวข้องกัน โฆษณาและการตอบกลับการสแกนที่เกี่ยวข้องทุกรายการจะต้องผ่านตัวกรองทั้งหมดทีละรายการ ดังนั้น การดำเนินการที่ได้ (delivery_mode) จึงเกี่ยวข้องกับการกรองอย่างมาก วิธีการส่งข้อมูลราคามีดังนี้ report_immediately, batch และ onFound ค่า OnLost เกี่ยวข้องกับ OnFound ในลักษณะที่จะแสดงหลัง OnFound เมื่อสูญหาย

ขั้นตอนการประมวลผลนี้จะแสดงโมเดลแนวคิด ดังนี้

เมื่อได้รับเฟรมโฆษณา (หรือการตอบสนองการสแกน) เฟรมแล้ว ระบบจะใช้เฟรมนั้นกับตัวกรองทั้งหมดตามลำดับ มีความเป็นไปได้ที่โฆษณาอาจทําให้รายงานด่วนโดยอิงตามตัวกรอง 1 รายการและการรวมกลุ่มตัวกรองเดียวกัน เนื่องจากการดำเนินการของตัวกรองที่ต่างกัน

เกณฑ์ระดับ RSSI (สูงและต่ำ) มอบความสามารถในการควบคุมว่าจะให้ตัวควบคุมมองเห็นเฟรมเมื่อใดสำหรับการประมวลผลตัวกรอง แม้ว่าตัวควบคุมจะได้รับแพ็กเก็ตที่ถูกต้องก็ตาม ในกรณีที่ตั้งค่าวิธีการส่งเป็นแบบทันทีหรือเป็นกลุ่ม ระบบจะพิจารณา RSSI ของเฟรมเพื่อประมวลผลตัวควบคุมเพิ่มเติม แอปต่างๆ ต้องการการรายงานและลักษณะการทำงานแบบกลุ่มที่แตกต่างกัน วิธีนี้ช่วยให้แอปหลายแอปมีการรายงานโดยตรงและ/หรือจัดกลุ่มผลลัพธ์ในเฟิร์มแวร์พร้อมกันได้ เช่น กรณีที่มีการใช้งานการสแกนแบบกลุ่มจากแอปหนึ่ง และแอปหนึ่งจะออกการสแกน LE ตามปกติในภายหลัง เฟรมเวิร์ก/แอปจะตั้งค่าตัวกรองที่เหมาะสมก่อนที่จะมีการสแกนแบบกลุ่ม หลังจากนั้น เมื่อแอปที่ 2 ทำการสแกนตามปกติ การจัดกลุ่มก่อนหน้านี้จะดำเนินต่อไป แต่เนื่องจากการสแกนปกติ จึงคล้ายกับการเพิ่มตัวกรอง Null ในแนวคิด (พร้อมด้วยตัวกรองที่มีอยู่ทั้งหมด) พร้อมกับคำสั่ง LE scan พารามิเตอร์คำสั่ง LE scan จะมีความสำคัญเมื่อทำงาน เมื่อปิดใช้การสแกน LE ตามปกติ ตัวควบคุมจะเปลี่ยนกลับไปเป็นการสแกนแบบกลุ่มก่อนหน้า หากมี

วิธีการส่งข้อมูลราคาOnFoundจะอิงตามตัวกรองที่กำหนดค่าไว้ ชุดค่าผสมที่ทริกเกอร์การดำเนินการของตัวกรองให้ประสบความสำเร็จจะถือว่าเป็นเอนทิตีที่จะติดตามสำหรับ onLost เหตุการณ์ที่เกี่ยวข้องคือเหตุการณ์ย่อยของการติดตาม LE Advt

การเปลี่ยน OnFound/OnLost สำหรับตัวกรอง (หากเปิดใช้) จะมีลักษณะดังต่อไปนี้

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
APCF_opcode 1 อ็อกเท็ต 0x01 - พารามิเตอร์การกรองชุด APCF
APCF_Action 1 อ็อกเท็ต APCF_Action ของคำสั่งการย้อนกลับ
APCF_AvailableSpaces 1 อ็อกเท็ต จำนวนรายการที่ใช้ได้ในตารางตัวกรอง

LE_APCF_Command: Broadcast_address_sub_cmd

คำสั่งย่อยนี้ใช้เพื่อเพิ่มหรือลบที่อยู่ผู้ลงโฆษณา หรือล้างรายการที่อยู่ของผู้ลงโฆษณาสำหรับการกรองบนชิป

OCF ย่อย: 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: NA (ไม่คํานึงถึงประเภทที่อยู่)
วิธีกรองรายงานโฆษณาที่มีประเภทที่อยู่ประจําตัว (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 ของบริการสำหรับการกรองบนชิป

OCF ย่อย: 0x03

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
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 อ็อกเท็ต 0x03 - UUID ของบริการ APCF
APCF_Action 1 อ็อกเท็ต APCF_Action ของคำสั่งการย้อนกลับ
APCF_AvailableSpaces 1 อ็อกเท็ต จำนวนรายการฟรีที่ยังคงเข้าถึงได้ในตาราง UUID ของบริการ

LE_APCF_Command: solicitation_uuid_sub_cmd

คำสั่งย่อยนี้ใช้เพื่อเพิ่มหรือลบ UUID คำขอ หรือล้างรายการ UUID การชักชวนสำหรับการกรองบนชิป

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 - UUID การชักชวนของ APCF
APCF_Action 1 อ็อกเท็ต APCF_Action ของคำสั่งการย้อนกลับ
APCF_AvailableSpaces 1 อ็อกเท็ต จำนวนรายการฟรีที่ยังคงเข้าถึงได้ในตาราง UUID การส่งคำขอ

LE_APCF_Command: local_name_sub_cmd

คำสั่งย่อยนี้ใช้เพื่อเพิ่มหรือลบสตริงชื่อในเครื่องหรือเพื่อล้างรายการสตริงชื่อในเครื่องสำหรับการกรองบนชิป

OCF ย่อย: 0x05

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
APCF_Action 1 อ็อกเท็ต 0x00 - เพิ่ม
0x01 - ลบ
0x02 - ล้าง
ลบจะลบสตริงชื่อในเครื่องที่ระบุในตัวกรองที่ระบุ
"ล้าง" จะล้างสตริงชื่อในเครื่องทั้งหมดในตัวกรองที่ระบุ
APCF_Filter_Index 1 อ็อกเท็ต ดัชนีตัวกรอง (0, max_filter-1)
APCF_LocName_Mandata_or_SerData ขนาดสามารถเปลี่ยนแปลงได้ สตริงอักขระสำหรับชื่อท้องถิ่น

หมายเหตุ
  • ขณะนี้สตริงชื่อในเครื่องมีจำนวนอักขระได้สูงสุด 29 ตัว
  • ใช้ไม่ได้เมื่อการดำเนินการเป็นแบบ "ล้าง" (0x2)

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
APCF_opcode 1 อ็อกเท็ต 0x05 - ชื่อท้องถิ่นของ APCF
APCF_Action 1 อ็อกเท็ต APCF_Action ของคำสั่งการย้อนกลับ
APCF_AvailableSpaces 1 อ็อกเท็ต จำนวนรายการฟรีที่ยังคงเข้าถึงได้ในตารางชื่อท้องถิ่น

LE_APCF_Command: manf_data_sub_cmd

คำสั่งย่อยนี้ใช้เพื่อเพิ่มหรือลบสตริงข้อมูลผู้ผลิต หรือเพื่อล้างรายการสตริงข้อมูลผู้ผลิตสำหรับการกรองบนชิป

OCF ย่อย: 0x06

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
APCF_Action 1 อ็อกเท็ต 0x00 - เพิ่ม
0x01 - ลบ
0x02 - ล้าง
ลบจะลบสตริงข้อมูลของผู้ผลิตที่ระบุในตัวกรองที่ระบุ
"ล้าง" จะล้างสตริงข้อมูลผู้ผลิตทั้งหมดในตัวกรองที่ระบุ
APCF_Filter_Index 1 อ็อกเท็ต ดัชนีตัวกรอง (0, max_filter-1)
APCF_LocName_Mandata_or_SerData ขนาดสามารถเปลี่ยนแปลงได้ สตริงอักขระสําหรับข้อมูลผู้ผลิต

หมายเหตุ
  • ขณะนี้สตริงชื่อในเครื่องมีจำนวนอักขระได้สูงสุด 29 ตัว
  • ใช้ไม่ได้เมื่อการดำเนินการเป็นแบบ "ล้าง" (0x2)
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

คำสั่งย่อยนี้ใช้เพื่อเพิ่มหรือลบสตริงข้อมูลบริการ หรือเพื่อล้างรายการสตริงข้อมูลบริการสำหรับการกรองบนชิป

OCF ย่อย: 0x07

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
APCF_Action 1 อ็อกเท็ต 0x00 - เพิ่ม
0x01 - ลบ
0x02 - ล้าง
ลบจะลบสตริงข้อมูลบริการที่ระบุในตัวกรองที่ระบุ
ล้างจะล้างสตริงข้อมูลบริการทั้งหมดในตัวกรองที่ระบุ
APCF_Filter_Index 1 อ็อกเท็ต ดัชนีตัวกรอง (0, max_filter-1)
APCF_LocName_Mandata_or_SerData ขนาดสามารถเปลี่ยนแปลงได้ สตริงอักขระสําหรับข้อมูลบริการ

หมายเหตุ
  • ขณะนี้สตริงชื่อในเครื่องมีจำนวนอักขระได้สูงสุด 29 ตัว
  • ใช้ไม่ได้เมื่อการดำเนินการเป็นแบบ "ล้าง" (0x2)
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

คำสั่งย่อยนี้ใช้เพื่อเพิ่มหรือลบประเภท AD หรือเพื่อล้างรายการประเภท AD สำหรับการกรองบนชิป ใช้ read_extended_features_sub_cmd เพื่อตรวจสอบว่าระบบรองรับคำสั่งนี้หรือไม่
เมื่อ APCF_AD_DATA_Length เท่ากับ 0 ให้กรอง APCF_AD_TYPE โดยไม่เปรียบเทียบข้อมูล AD กับมาสก์ข้อมูล AD หากข้อมูลของแพ็กเก็ต ADV ที่ได้รับมีความยาวเกิน AD_DATA_LENGTH ให้เปรียบเทียบเฉพาะข้อมูล AD จำนวน AD_DATA_LENGTH ไบต์แรกและละเว้นข้อมูลที่เหลือ

OCF ย่อย: 0x09

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
APCF_Action 1 อ็อกเท็ต 0x00 - เพิ่ม
0x01 - ลบ
0x02 - ล้าง
ลบจะลบประเภทโฆษณาที่ระบุในตัวกรองที่ระบุ
"ล้าง" จะล้างโฆษณาทุกประเภทในตัวกรองที่ระบุ
APCF_Filter_Index 1 อ็อกเท็ต ดัชนีตัวกรอง (0, max_filter-1)
APCF_AD_TYPE 1 อ็อกเท็ต ประเภท AD สำหรับการเพิ่มหรือลบออกจากรายการ เพิกเฉยเมื่อ 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 อ็อกเท็ต จำนวนรายการฟรีที่ยังคงเข้าถึงได้ในตารางประเภท AD

LE_APCF_Command: read_extended_features_sub_cmd

คำสั่งย่อยนี้ใช้สำหรับอ่านฟีเจอร์ APCF แบบขยาย

OCF ย่อย: 0xFF

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
ไม่เกี่ยวข้อง พารามิเตอร์คำสั่งว่างเปล่า

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
APCF_opcode 1 อ็อกเท็ต 0xFF - APCF_Read_Extended_Features
APCF_extended_features 2 อ็อกเท็ต

บิตมาสก์สำหรับฟีเจอร์เสริมที่รองรับมีดังนี้

  • บิต 0: ตัวกรองการสนับสนุน Transport Discovery Service
  • บิต 1: รองรับตัวกรองประเภท AD
  • บิต 2 ~15: สงวนไว้สำหรับการใช้งานในอนาคต

ค่าของบิต

  • 0 = ไม่รองรับ
  • 1 = รองรับ

คำสั่งเกี่ยวกับกิจกรรมของตัวควบคุมและข้อมูลพลังงาน

จุดประสงค์ของข้อมูลนี้มีไว้สำหรับฟังก์ชันระบบโฮสต์ที่สูงขึ้นเพื่อวิเคราะห์กิจกรรมทั้งหมดของคอมโพเนนต์ทั้งหมด ซึ่งรวมถึงตัวควบคุม BT และสถานะมาโคร ร่วมกับสิ่งที่เกิดขึ้นในแอปและเฟรมเวิร์ก หากต้องการดำเนินการดังกล่าว จำเป็นต้องใช้ข้อมูลต่อไปนี้จากสแต็ก BT และตัวควบคุม

  • สแต็ก BT: การรายงานสถานะปัจจุบันของการดำเนินการแบบมาโครของตัวควบคุม
  • เฟิร์มแวร์: การรายงานกิจกรรมโดยรวมและข้อมูลพลังงาน

สถานะมาโครสแต็กโฮสต์ BT ตามที่ระบุที่ระดับผู้ใช้:

  • ไม่มีการใช้งาน: [page scan, LE advt, inquiry scan, LE scan]
  • สแกน: [การแบ่งหน้า/การสอบถาม/กำลังพยายามเชื่อมต่อ]
  • ใช้งานอยู่: [ลิงก์ ACL เปิดอยู่, ใช้งานลิงก์ SCO อยู่, โหมดตรวจสอบ]

กิจกรรมที่ตัวควบคุมติดตามตลอดอายุการใช้งานคือเวลา Tx, เวลา Rx, เวลาที่ไม่มีการใช้งาน และพลังงานทั้งหมดที่ใช้ ระบบจะล้างบัญชีเมื่ออ่านจากโฮสต์

LE_Get_Controller_กิจกรรม_Energy_ข้อมูล

ซึ่งเป็นคำสั่งเฉพาะผู้ให้บริการ

OCF: 0x159

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
ไม่มี พารามิเตอร์คำสั่งว่างเปล่า

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
total_tx_time_ms 4 อ็อกเท็ต เวลาทั้งหมดที่ทำ Tx
total_rx_time_ms 4 อ็อกเท็ต เวลารวมที่ใช้ Rx
total_idle_time_ms 4 อ็อกเท็ต เวลาทั้งหมดที่ไม่มีการใช้งาน (สถานะพลังงานต่ำแม้จะอยู่ในโหมดสลีป)
total_energy_used 4 อ็อกเท็ต พลังงานทั้งหมดที่ใช้ [ผลิตภัณฑ์ของกระแสไฟฟ้า (mA), แรงดันไฟฟ้า (V) และเวลา (มิลลิวินาที)]

คำสั่งสแกนพารามิเตอร์การค้นหาแบบขยายของ LE

คุณใช้คำสั่งนี้เพื่อเปิดใช้ช่วงเวลาและหน้าต่างสแกนที่มีขนาดใหญ่ขึ้นในตัวควบคุมได้ ตามข้อกำหนดของ BT Core 5.2 หน้าต่างการสแกนและช่วงเวลามีขีดจำกัดสูงสุดอยู่ที่ 10.24 วินาที ซึ่งขัดขวางช่วงเวลาการสแกนที่นานกว่า 10.24 วินาทีของแอปพลิเคชัน

ข้อมูลอ้างอิงพื้นฐาน: ข้อมูลจำเพาะของ BT Core 5.2 หน้า 2493 (LE SetScan Parameters Parameters)

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 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์

รับคำสั่งข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุม

วัตถุประสงค์ขององค์ประกอบข้อมูลนี้คือการรับข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุมโดยโฮสต์ในรูปแบบไบนารี เพื่อประมวลผลในภายหลังและการวิเคราะห์ ซึ่งจะช่วยแก้ไขข้อบกพร่องของปัญหาภาคสนามและช่วยให้วิศวกรพร้อมชุดเครื่องมือในการบันทึกข้อมูลสำหรับการวิเคราะห์ ตัวควบคุมสามารถให้ข้อมูลเมื่อโฮสต์ขอผ่านเหตุการณ์ (เหตุการณ์ย่อยของข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุม) หรือให้เองเมื่อตัวควบคุมต้องการ ตัวอย่างการใช้งานอาจเป็นการรายงานข้อมูลสถานะเฟิร์มแวร์ ข้อมูลข้อขัดข้อง ข้อมูลการบันทึก ฯลฯ

OCF: 0x15 พันล้าน

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
ไม่มีข้อมูล รายการพารามิเตอร์คำสั่งว่างเปล่า

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์

รองรับการลดภาระงานฮาร์ดแวร์ A2DP

ฟีเจอร์ A2DP Offload รองรับการลดภาระของกระบวนการเข้ารหัสเสียง A2DP ไปยังตัวประมวลผลเสียงที่เชื่อมต่อกับตัวควบคุม BT สตรีมข้อมูลเสียงที่เข้ารหัสจะส่งจากตัวประมวลผลเสียงไปยังตัวควบคุม BT โดยตรงโดยที่โฮสต์ BT ไม่เกี่ยวข้องกับ BT Host ยังคงเป็นผู้รับผิดชอบการกำหนดค่าและการควบคุมเซสชัน A2DP โดยมีคำสั่ง 2 เวอร์ชัน คำสั่งเดิมที่มี Sub OCF 0x01-0x02 รองรับเฉพาะตัวแปลงรหัสโอเพนซอร์สเท่านั้น เวอร์ชันที่มี Sub-OCF 0x02-0x03 ไม่เกี่ยวข้องกับตัวแปลงรหัสที่กำหนดค่าไว้

OCF: 0x15D

เริ่มการลดภาระงาน A2DP (เดิม)

OCF ย่อย: 0x01

ใช้คำสั่งนี้ทั้งเพื่อกำหนดค่ากระบวนการออฟโหลด A2DP และเพื่อเริ่มสตรีม A2DP

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
Codec 4 อ็อกเท็ต ระบุประเภทตัวแปลงรหัส
0x01 - SBC
0x02 - AAC
0x04 - APTX
0x08 - APTX HD
0x10 - LDAC
Max_Latency 2 อ็อกเท็ต เวลาในการตอบสนองสูงสุดที่อนุญาต (เป็นมิลลิวินาที) ค่า 0 จะเป็นการปิดใช้การล้าง
SCMS-T_Enable 2 อ็อกเท็ต Octet 0: แฟล็กที่เปิดใช้การเพิ่มส่วนหัว SCMS-T
  • 0x00 - ไม่รวมส่วนหัว SCMS-T
  • 0x01 - มีส่วนหัว SCMS-T

Octet 1: ค่าของส่วนหัว SCMS-T เมื่อเปิดใช้

Sampling_Frequency 4 อ็อกเท็ต 0x01 - 44100 Hz
0x02 - 48000 Hz
0x04 - 88200 Hz
0x08 - 96000 Hz
Bits_Per_Sample 1 อ็อกเท็ต 0x01 - 16 บิตต่อตัวอย่าง
0x02 - 24 บิตต่อตัวอย่าง
0x04 - 32 บิตต่อตัวอย่าง
Channel_Mode 1 อ็อกเท็ต 0x01 - โมโน
0x02 - สเตอริโอ
Encoded_Audio_Bitrate 4 อ็อกเท็ต อัตราบิตของเสียงที่เข้ารหัสในหน่วยบิตต่อวินาที
0x00000000 - ไม่ได้ระบุอัตราบิตของเสียง / unused
0x00000001 - 0x00FFFFFF - อัตราบิตของเสียงที่เข้ารหัสเป็นบิตต่อวินาที
0x01000000 - 0xFFFFFFFF - จองแล้ว
Connection_Handle 2 อ็อกเท็ต กำลังกำหนดค่าแฮนเดิลการเชื่อมต่อของการเชื่อมต่อ A2DP
L2CAP_Channel_ID 2 อ็อกเท็ต รหัสช่อง L2CAP ที่จะใช้สำหรับการเชื่อมต่อ A2DP นี้
L2CAP_MTU_Size 2 อ็อกเท็ต ขนาดสูงสุดของ L2CAP MTU ที่มีแพ็กเก็ตเสียงที่เข้ารหัส
Codec_Information 32 อ็อกเท็ต ข้อมูลเฉพาะตัวแปลงรหัส

ตัวแปลงรหัส SBC:

โปรดดูองค์ประกอบข้อมูลเฉพาะของตัวแปลงรหัส SBC ใน A2DP v1.3
Octet 0: ความยาวบล็อก | แถบย่อย | วิธีการจัดสรร
อ็อกเท็ต 1: ค่าบิตพูลขั้นต่ำ
อ็อกเท็ต 2: ค่าบิตพูลสูงสุด
อ็อกเท็ต 3: ความถี่การสุ่มตัวอย่าง | โหมดแชแนล
Octet 4-31: สงวนไว้

ตัวแปลงสัญญาณ AAC:

โปรดดูองค์ประกอบข้อมูลเฉพาะของตัวแปลงรหัส AAC ใน A2DP v1.3
Octet 0: ประเภทออบเจ็กต์
Octet 1; b7: VBR
Octet 2-31: สงวนไว้

ตัวแปลงรหัส LDAC:

Octet 0-3: รหัสผู้ให้บริการ
0x0000012D

Octet 4-5: รหัสตัวแปลงรหัส
0x00AA - LDAC
ค่าอื่นๆ ทั้งหมดสงวนไว้

Octet 6: ดัชนีอัตราบิต:
0x00 - สูง
0x01 - กลาง
0x02 - ต่ำ
0x03 - 0x7E - สงวนไว้
0x7F - ABR (อัตราบิตแบบปรับอัตโนมัติ)
0x80 - 0xFF - สงวนไว้

Octet 7: โหมดช่องสัญญาณ LDAC
0x01 - สเตอริโอ
0x02 - Dual
0x04 - โมโน
อื่นๆ สงวนไว้

วันที่ 8-31 ต.ค.: สงวนไว้

ตัวแปลงรหัสอื่นๆ ทั้งหมด:

ต.ค. 0-31: สงวนไว้

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Sub_Opcode 1 อ็อกเท็ต 0x01 - เริ่มลดการโหลด A2DP

เริ่มการออฟโหลด A2DP

OCF ย่อย: 0x03

ใช้คำสั่งนี้ทั้งเพื่อกำหนดค่ากระบวนการออฟโหลด A2DP และเพื่อเริ่มสตรีม A2DP

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
Connection Handle 2 อ็อกเท็ต แฮนเดิลของการเชื่อมต่อ HCI ที่ใช้งานอยู่
L2CAP_Channel_ID 2 อ็อกเท็ต ตัวระบุของช่อง L2CAP ที่เปิดสำหรับสตรีมมิงแบบ A2DP
Data_Path_Direction 1 อ็อกเท็ต 0x00 - เอาต์พุต (ที่มา AVDTP/ผสาน)
0x01 - อินพุต (AVDTP Sink/Split)
Peer_MTU 2 อ็อกเท็ต ขนาดสูงสุดของแพ็กเก็ต 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 อ็อกเท็ต พารามิเตอร์เฉพาะของผู้ให้บริการจาก HAL สำหรับเสียงบลูทูธ CodecParameters.vendorSpecificParameters[]

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Sub_Opcode 1 อ็อกเท็ต 0x03 - เริ่มลดการโหลด A2DP

หยุดการลดภาระงาน A2DP (เดิม)

OCF ย่อย: 0x02

คำสั่งนี้ใช้เพื่อหยุดสตรีม A2DP Offload

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
ไม่มีข้อมูล รายการพารามิเตอร์คำสั่งว่างเปล่า

ไม่มีการกำหนดพารามิเตอร์สำหรับคำสั่งนี้

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Sub_Opcode 1 อ็อกเท็ต 0x02 - หยุดลดการโหลด A2DP

หยุดลดการโหลด A2DP

OCF ย่อย: 0x04

คำสั่งนี้ใช้เพื่อหยุดสตรีม A2DP Offload

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
Connection Handle 2 อ็อกเท็ต แฮนเดิลของการเชื่อมต่อ HCI ที่ใช้งานอยู่
L2CAP_Channel_ID 2 อ็อกเท็ต ตัวระบุของช่อง L2CAP ที่เปิดสำหรับสตรีมมิงแบบ A2DP
Data_Path_Direction 1 อ็อกเท็ต 0x00 - เอาต์พุต (ที่มา AVDTP/ผสาน)
0x01 - อินพุต (AVDTP Sink/Split)

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Sub_Opcode 1 อ็อกเท็ต 0x04 - หยุดลดการโหลด A2DP

คำสั่งรายงานคุณภาพของบลูทูธ

ฟีเจอร์คำสั่งรายงานคุณภาพ BT จะเริ่มต้นกลไกในตัวควบคุมบลูทูธเพื่อรายงานกิจกรรมคุณภาพของบลูทูธไปยังโฮสต์ คุณเปิดใช้ตัวเลือกได้ 4 รายการดังนี้

  • โหมดการตรวจสอบคุณภาพ: ตัวควบคุมจะส่งกิจกรรมย่อย BQR ที่เกี่ยวข้องกับคุณภาพลิงก์ให้กับโฮสต์เป็นระยะๆ
  • เข้าใกล้ LSTO: หากไม่มีแพ็กเก็ตจากอุปกรณ์ BT ที่เชื่อมต่ออยู่นานกว่าครึ่งหนึ่งของค่า Link Supervision TimeOut (LSTO) ตัวควบคุมจะรายงานเหตุการณ์ LSTO ที่ใกล้จะมาถึงให้โฮสต์ทราบ
  • เสียง A2DP กระตุก: เมื่อตัวควบคุมตรวจพบปัจจัยที่ทำให้เกิดเสียงกระตุก ตัวควบคุมจะรายงานเหตุการณ์เสียงกระตุก A2DP ให้โฮสต์ทราบ
  • (จ)SCO เสียงกระตุก: เมื่อตัวควบคุมตรวจพบปัจจัยที่ก่อให้เกิดเสียงกระตุก ตัวควบคุมจะรายงาน (จ)SCO เสียงกระตุกให้ผู้จัดทราบ
  • รากอักเสบ: ตัวควบคุมจะส่งเหตุการณ์นี้ไปยังสแต็กเมื่อ HAL หรือตัวควบคุมพบข้อผิดพลาดร้ายแรงและต้องรีสตาร์ทบลูทูธ
  • การติดตามข้อความ LMP/LL: ตัวควบคุมจะส่งการแฮนเดิลข้อความ LMP/LL ด้วยอุปกรณ์ระยะไกลไปยังโฮสต์
  • การติดตามการกำหนดเวลาแบบหลายโปรไฟล์/Coex ของบลูทูธ: ตัวควบคุมจะส่งข้อมูลการกำหนดเวลาในการจัดการโปรไฟล์บลูทูธหลายโปรไฟล์และการอยู่ร่วมกันแบบไร้สายในย่านความถี่ 2.4 GHz ไปยังโฮสต์
  • กลไกข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุม: เมื่อเปิดใช้ ตัวควบคุมจะรายงานข้อมูลการบันทึกการแก้ไขข้อบกพร่องผ่านเหตุการณ์ย่อยของข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุมไปยังโฮสต์ได้โดยอัตโนมัติ
  • LE Audio กระตุก: เมื่อตัวควบคุมตรวจพบปัจจัยที่ทำให้เสียงกระตุก ตัวควบคุมจะรายงานเหตุการณ์ LE Audio Choppy ไปยังโฮสต์
  • โหมดสถิติ RF ขั้นสูง: ตัวควบคุมจะรายงานข้อมูลที่เกี่ยวข้องกับสถิติ RF ไปยังโฮสต์ ซึ่งรองรับกรณีการใช้งานรายงาน 2 กรณีดังนี้
    • รายงานเป็นระยะ
    • ทริกเกอร์เหตุการณ์ (เริ่ม/หยุดสตรีมและทริกเกอร์เหตุการณ์คุณภาพลิงก์)
  • BQR_Report_Action ของคำสั่งรายงานคุณภาพของบลูทูธ: โฮสต์สามารถใช้คำสั่ง HCI นี้เพื่อรับการค้นหาแบบครั้งเดียวสำหรับโหมดการตรวจสอบคุณภาพ โหมดตรวจสอบพลังงาน หรือโหมดสถิติ RF ขั้นสูง

OCF: 0x15E

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
BQR_Report_Action 1 อ็อกเท็ต การดำเนินการเพื่อเพิ่ม / ลบการรายงานเหตุการณ์คุณภาพที่ตั้งค่าไว้ในพารามิเตอร์ BQR_quality_Event_Mask หรือล้างทั้งหมด

0x00 - เพิ่ม
0x01 - ลบ
0x02 - ล้าง
0x03 - การค้นหาแบบครั้งเดียว

การลบจะล้างการรายงานเหตุการณ์คุณภาพที่เฉพาะเจาะจง
"ล้าง" จะล้างการรายงานเหตุการณ์คุณภาพทั้งหมด (ไม่สนใจพารามิเตอร์ BQR_quality_Event_Mask)

BQR_Quality_Event_Mask 4 อ็อกเท็ต มาสก์บิตสำหรับการรายงานเหตุการณ์คุณภาพที่เลือก

บิต 0: ตั้งค่าให้เปิดใช้โหมดการตรวจสอบคุณภาพ
บิต 1: ตั้งค่าเพื่อเปิดใช้เหตุการณ์ LSTO โดยประมาณ (สำหรับ ACL/(e)SCO/ISO)
บิต 2: ตั้งค่าเพื่อเปิดใช้เหตุการณ์เสียงที่กระตุกของ A2DP
บิต 3: ตั้งค่าเพื่อเปิดใช้ (e)SCO เหตุการณ์เสียงกระตุก
บิต 4: ตั้งค่าเพื่อเปิดใช้เหตุการณ์การอักเสบของราก
บิต 5: ตั้งค่าให้เปิดใช้โหมดการตรวจสอบพลังงาน
บิต 6: ตั้งค่าเพื่อเปิดใช้เหตุการณ์กระตุก LE Audio
บิต 7: ตั้งค่าเพื่อเปิดใช้เหตุการณ์การเชื่อมต่อล้มเหลว
บิต 8: ตั้งค่าเพื่อเปิดใช้ทริกเกอร์เหตุการณ์โหมด RF ขั้นสูง
บิต 9: ตั้งค่าเพื่อเปิดใช้รายงาน RF ขั้นสูงตามช่วงเวลา
บิต 10 ~ 14: สงวนไว้
บิต 15: ตั้งค่าเพื่อเปิดใช้เหตุการณ์คุณภาพเฉพาะผู้ให้บริการ
บิต 16: ตั้งค่าเพื่อเปิดใช้การติดตามข้อความ LMP/LL
Bit 17: ตั้งค่าเพื่อเปิดใช้การติดตามการตั้งเวลาหลายลิงก์/Coex ของบลูทูธ
บิต 18: ตั้งค่าเพื่อเปิดใช้กลไกข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุม
บิต 19 ~ 30: สงวนไว้
บิต 31: ตั้งค่าเพื่อเปิดใช้การติดตามเฉพาะผู้ให้บริการ

BQR_Minimum_Report_Interval 2 อ็อกเท็ต กําหนดช่วงเวลาขั้นต่ำของการรายงานเหตุการณ์ด้านคุณภาพสําหรับเหตุการณ์คุณภาพที่เลือก เฟิร์มแวร์ตัวควบคุมไม่ควรรายงานเหตุการณ์ถัดไปภายในระยะเวลาที่กำหนด การตั้งค่าช่วงเวลาจะต้องสัมพันธ์กันและมีไว้สำหรับเหตุการณ์ด้านคุณภาพที่จะเพิ่มเข้ามาโดยเฉพาะ

หน่วย: ms
ค่าเริ่มต้น: 0 (ไม่มีข้อจํากัดสําหรับช่วงเวลา)
ช่วง: 0 ~ 65,535 มิลลิวินาที

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
เฟิร์มแวร์ของตัวควบคุมต้องไม่รายงานเหตุการณ์ถัดไปภายใน ช่วงเวลาที่กำหนดไว้ การตั้งค่าช่วงเวลามีไว้สําหรับเหตุการณ์คุณภาพที่เพิ่มเข้ามาโดยเฉพาะ

หน่วย: ms
ค่าเริ่มต้น: 1
ช่วง: 0 ~ 4294967295 (0: มีค่าเท่ากับ 1)

หมายเหตุ: หากการตั้งค่าของ BQR_Report_Interval มีขนาดใหญ่กว่าความสามารถของตัวควบคุม ตัวควบคุมจะต้องแสดงผลไม่เกิน BQR_Report_Interval สูงสุดหลังจากคำสั่งเสร็จสมบูรณ์

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Current_Quality_Event_Mask 4 อ็อกเท็ต ระบุการตั้งค่าบิตมาสก์ปัจจุบัน
บิต 0: โหมดการตรวจสอบคุณภาพเปิดใช้อยู่
บิต 1: เปิดใช้การรายงานเหตุการณ์ LSTO แล้ว
บิต 2: เปิดใช้การรายงานเหตุการณ์เสียงกระตุก A2DP อยู่
บิต 3: เปิดใช้การรายงานเหตุการณ์เสียงกระตุกของ SCO อยู่
บิต 4: เปิดใช้การรายงานเหตุการณ์การอักเสบของราก
บิต 5: โหมดการตรวจสอบพลังงานเปิดใช้อยู่
บิต 6: เปิดใช้การรายงานเหตุการณ์กระตุก LE Audio อยู่
บิต 7: เหตุการณ์การเชื่อมต่อล้มเหลว
บิต 8: ตั้งค่าเพื่อเปิดใช้ทริกเกอร์เหตุการณ์โหมด RF ขั้นสูง
บิต 9: ตั้งค่าเพื่อเปิดใช้รายงานสถิติ RF ขั้นสูงเป็นระยะๆ
บิต 10 ~ 14: สงวนไว้
บิต 15: เปิดใช้การรายงานเหตุการณ์คุณภาพเฉพาะผู้ให้บริการ
บิต 16: เปิดใช้การติดตามข้อความ LMP/LL อยู่
Bit 17: เปิดใช้การติดตามการกำหนดเวลาของ Bluetooth Multi-link/Coex อยู่
บิต 18: เปิดใช้กลไกข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุมแล้ว
บิต 19 ~ 30: สงวนไว้
Bit 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

รับความสามารถในการเผื่อเวลาบัฟเฟอร์ของเสียง

OCF ย่อย: 0x01

ใช้คำสั่งนี้เพื่อรับความสามารถในการบัฟเฟอร์ของเสียงจากตัวควบคุมบลูทูธ

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
ไม่มีข้อมูล รายการพารามิเตอร์คำสั่งว่างเปล่า

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Dynamic_Audio_Buffer_opcode 1 อ็อกเท็ต 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 2 อ็อกเท็ต เวลาบัฟเฟอร์เริ่มต้นของประเภทตัวแปลงรหัสบิต 0 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากไม่รองรับประเภทตัวแปลงรหัสบิต 0
หน่วย: ms
Audio_Codec_Buffer_Maximum_Time_For_Bit_0 2 อ็อกเท็ต เวลาบัฟเฟอร์สูงสุดของตัวแปลงรหัสประเภท Bit 0 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากไม่รองรับประเภทตัวแปลงรหัสบิต 0
หน่วย: ms
Audio_Codec_Buffer_Minimum_Time_For_Bit_0 2 อ็อกเท็ต เวลาบัฟเฟอร์ขั้นต่ำของตัวแปลงรหัสประเภท Bit 0 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากไม่รองรับประเภทตัวแปลงรหัสบิต 0
หน่วย: ms
Audio_Codec_Buffer_Default_Time_For_Bit_1 2 อ็อกเท็ต เวลาบัฟเฟอร์เริ่มต้นของประเภทตัวแปลงรหัสบิต 1 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากระบบไม่รองรับตัวแปลงรหัสประเภทบิต 1
หน่วย: ms
Audio_Codec_Buffer_Maximum_Time_For_Bit_1 2 อ็อกเท็ต เวลาบัฟเฟอร์สูงสุดของตัวแปลงรหัสประเภท Bit 1 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากระบบไม่รองรับตัวแปลงรหัสประเภทบิต 1
หน่วย: ms
Audio_Codec_Buffer_Minimum_Time_For_Bit_1 2 อ็อกเท็ต เวลาบัฟเฟอร์ขั้นต่ำของตัวแปลงรหัสประเภท Bit 1 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากระบบไม่รองรับตัวแปลงรหัสประเภทบิต 1
หน่วย: ms
... ... ...
Audio_Codec_Buffer_Default_Time_For_Bit_31 2 อ็อกเท็ต เวลาบัฟเฟอร์เริ่มต้นของประเภทตัวแปลงรหัส Bit 31 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากไม่รองรับประเภทตัวแปลงรหัส Bit 31
หน่วย: ms
Audio_Codec_Buffer_Maximum_Time_For_Bit_31 2 อ็อกเท็ต เวลาบัฟเฟอร์สูงสุดของประเภทตัวแปลงรหัส Bit 31 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากไม่รองรับประเภทตัวแปลงรหัส Bit 31
หน่วย: ms
Audio_Codec_Buffer_Minimum_Time_For_Bit_31 2 อ็อกเท็ต เวลาบัฟเฟอร์ขั้นต่ำของประเภทตัวแปลงรหัส Bit 31 ที่ระบุใน Audio_Codec_Type_Supported
ค่านี้จะเป็น 0 หากไม่รองรับประเภทตัวแปลงรหัส Bit 31
หน่วย: ms

ตั้งค่าระยะเวลาบัฟเฟอร์ของเสียง

OCF ย่อย: 0x02

ใช้คำสั่งนี้เพื่อตั้งเวลาบัฟเฟอร์เสียงให้กับตัวควบคุมบลูทูธ

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
Audio_Codec_Buffer_Time 2 อ็อกเท็ต เวลาบัฟเฟอร์ของเสียงที่ขอสำหรับตัวแปลงรหัสที่ใช้ในปัจจุบัน
หน่วย: มิลลิวินาที

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Dynamic_Audio_Buffer_opcode 1 อ็อกเท็ต 0x02 - ตั้งค่าบัฟเฟอร์ของเสียง
Audio_Codec_Buffer_Time 2 อ็อกเท็ต เวลาบัฟเฟอร์ของเสียงปัจจุบันในตัวควบคุมบลูทูธ
หน่วย: ms

เหตุการณ์ HCI (เฉพาะผู้ให้บริการ)

ในบางกรณี จำเป็นต้องมีเหตุการณ์ HCI เฉพาะผู้ให้บริการ โปรดดูรูปที่ 5.4 ในหน้า 1897 ของข้อมูลจำเพาะของ BT Core 5.2 พารามิเตอร์เหตุการณ์ 0 จะมีโค้ดเหตุการณ์ย่อยแรกเสมอ โดยอิงตามการถอดรหัสเหตุการณ์ HCI ที่เหลือ

พารามิเตอร์เหตุการณ์ ขนาด วัตถุประสงค์
HCI_vendor_specific_event_code 1 อ็อกเท็ต 0xFF
sub_event_code 1 อ็อกเท็ต โค้ดเหตุการณ์ย่อยจะมีขนาด 1 อ็อกเท็ต ซึ่งก็คือไบต์ตามความยาวของพารามิเตอร์ในแพ็กเก็ตเหตุการณ์ HCI

เหตุการณ์ย่อยเกี่ยวกับการละเมิดเกณฑ์พื้นที่เก็บข้อมูล

เหตุการณ์นี้บ่งชี้ว่าเกณฑ์พื้นที่เก็บข้อมูลมีการละเมิด

รหัสเหตุการณ์ย่อย = 0x54

พารามิเตอร์เหตุการณ์ย่อย ขนาด วัตถุประสงค์
ไม่มี

เหตุการณ์ย่อยการเปลี่ยนแปลงสถานะการโฆษณาหลายรายการของ LE

เหตุการณ์นี้บ่งชี้ว่าอินสแตนซ์โฆษณาเปลี่ยนสถานะแล้ว ปัจจุบันเหตุการณ์นี้ใช้เพื่อระบุว่าอินสแตนซ์การโฆษณาใดหยุดทำงานเนื่องจากการเชื่อมต่อเท่านั้น

รหัสเหตุการณ์ย่อย = 0x55

พารามิเตอร์เหตุการณ์ย่อย ขนาด วัตถุประสงค์
Advertising_instance 1 อ็อกเท็ต ระบุอินสแตนซ์การโฆษณาที่เจาะจง
ค่าที่ถูกต้องคือ 0 ถึง max_advt_instances-1
State_Change_Reason 1 อ็อกเท็ต 0x00: ได้รับการเชื่อมต่อแล้ว
Connection_handle 2 อ็อกเท็ต ระบุการเชื่อมต่อที่ทำให้อินสแตนซ์ advt ถูกปิดใช้ (0xFFFF หากไม่ถูกต้อง)

กิจกรรมย่อยการติดตามโฆษณา LE

เหตุการณ์นี้จะระบุเมื่อพบผู้ลงโฆษณาหรือไม่พบผู้ลงโฆษณา

รหัสเหตุการณ์ย่อย = 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]: 1 อ็อกเท็ต
RSSI[0]: 1 อ็อกเท็ต
Timestamp[0]: 2 อ็อกเท็ต
Adv packet_len[0]: 1 อ็อกเท็ต
Adv_packet[0]: Adv_packet_len อ็อกเท็ต
Scan_data_resp_len[0]: 1 อ็อกเท็ต
Scan_data_resp[0]: Scan_data_resp อ็อกเท็ต

เหตุการณ์ย่อยเกี่ยวกับข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุม

ผู้ควบคุมข้อมูลใช้เหตุการณ์นี้เพื่อให้ข้อมูลการแก้ไขข้อบกพร่องไบนารีแก่โฮสต์

รหัสเหตุการณ์ย่อย = 0x57

พารามิเตอร์เหตุการณ์ย่อย ขนาด วัตถุประสงค์
debug_block_byte_offset_start 2 อ็อกเท็ต แก้ไขข้อบกพร่องออฟเซ็ตไบต์บล็อกตั้งแต่เริ่มต้น
last_block 1 อ็อกเท็ต 0x00: มีข้อมูลการแก้ไขข้อบกพร่องมากขึ้น
0x01: บล็อกไบนารีสุดท้าย ไม่มีข้อมูลการแก้ไขข้อบกพร่องอีก
cur_pay_load_sz 2 อ็อกเท็ต ขนาดบล็อกไบนารีในเหตุการณ์ปัจจุบัน
Debug_Data ปรับเปลี่ยนได้ ข้อมูลการแก้ไขข้อบกพร่องของ cur_payload_sz

เหตุการณ์ย่อยของรายงานคุณภาพบลูทูธ

เหตุการณ์นี้บ่งชี้ถึงสิ่งใดสิ่งหนึ่งต่อไปนี้: เกิดเหตุการณ์คุณภาพของบลูทูธขึ้น, ตัวควบคุมได้อัปโหลดการติดตามข้อความ LMP/LL และการติดตามการตั้งเวลามัลติลิงก์/Coex ของบลูทูธ หรือตัวควบคุมถ่ายโอนข้อมูลการแก้ไขข้อบกพร่อง

พารามิเตอร์เหตุการณ์ย่อย ขนาด วัตถุประสงค์
Quality_Report_Id 1 อ็อกเท็ต 0x01: การรายงานคุณภาพในโหมดการตรวจสอบ
0x02: เข้าใกล้ LSTO
0x03: เสียง A2DP กระตุก
0x04: (e)SCO เสียงกระตุก
0x05 ~ 0x06: สงวนไว้
0x07: LE Audio กระตุก
0x08: เชื่อมต่อไม่สำเร็จ
0x09 ~ 0xFF: จองแล้ว
Packet_Types 1 อ็อกเท็ต 0x01: ID
0x02: NULL
0x03: POLL
0x04: FHS
0x05: HV1
0x06: HV2
0x07: HV3:
0x08: DV3: EV3
0x04: FHS
0x05: HV1
0x06: HV2
0x07: HV3:
0x08: DV3:
















Connection_Handle 2 อ็อกเท็ต แฮนเดิลการเชื่อมต่อ ACL/(e)SCO/ISO
Connection_Role 1 อ็อกเท็ต บทบาทการแสดงสำหรับการเชื่อมต่อ
0x00: ตอนกลาง
0x01: อุปกรณ์ต่อพ่วง
0x02 ~ 0xFF: สงวนไว้
TX_Power_Level 1 อ็อกเท็ต ระดับกำลังส่งปัจจุบันสำหรับ Connection_Handle ที่ระบุ

ค่านี้จะตรงกับการตอบสนองของตัวควบคุมสำหรับคำสั่ง HCI_Read_Transmit_Power_Level HCI

RSSI 1 อ็อกเท็ต [ใน dBm]

ได้รับค่าตัวบ่งชี้ความแรงของสัญญาณ (RSSI) สำหรับ Connection_Handle ที่ระบุ
โดยค่านี้จะเป็นค่าความแรงของสัญญาณของผู้รับแบบสัมบูรณ์
ช่วง: -127 ถึง +20

SNR 1 อ็อกเท็ต [ใน dB]

ค่าอัตราส่วนสัญญาณต่อสัญญาณรบกวน (SNR) สำหรับ Connection_Handle ที่ระบุ
ตัวควบคุมจะแสดง SNR โดยเฉลี่ยของทุกช่อง ที่ลิงก์ใช้

Unused_AFH_Channel_Count 1 อ็อกเท็ต ระบุจำนวนช่องที่ไม่ได้ใช้ใน AFH_channel_map
0x4F ~ 0xFF: จองแล้ว
AFH_Select_Unideal_Channel_Count 1 อ็อกเท็ต ระบุจำนวนของช่องที่ถูกแทรกแซงและมีคุณภาพไม่ดี แต่ยังคงเลือกสำหรับ AFH
จำนวนช่องต่ำสุดที่ข้อมูลจำเพาะของบลูทูธอนุญาตคือ 20 ช่อง ดังนั้นแม้ว่าสัญญาณเสียงทั้ง 79 ช่องจะถูกรบกวนและมีคุณภาพไม่ดี ตัวควบคุมยังคงต้องเลือกอย่างน้อย 20 ช่องสำหรับ AFH
LSTO 2 อ็อกเท็ต การตั้งค่าระยะหมดเวลาของการควบคุมดูแลลิงก์ปัจจุบัน
เวลา = N * 0.625 มิลลิวินาที
ช่วงเวลา: 0.625 มิลลิวินาที ถึง 40.9 วินาที
Connection_Piconet_Clock 4 อ็อกเท็ต นาฬิกา Piconet สำหรับ Connection_Handle ที่ระบุ
ค่านี้จะเหมือนกับการตอบสนองต่อคำสั่ง HCI_Read_Clock HCI ของตัวควบคุมที่มีพารามิเตอร์ "Where_Clock" เป็น 0x01 (Piconet Clock)
หน่วย: N * 0.3125 ms (นาฬิกาบลูทูธ 1 เรือน)
Retransmission_Count 4 อ็อกเท็ต จํานวนการส่งข้อมูลซ้ำนับตั้งแต่เหตุการณ์ล่าสุด
จำนวนนี้จะรีเซ็ตหลังจากการรายงานไปยังโฮสต์
No_RX_Count 4 อ็อกเท็ต ไม่มีจำนวน RX นับตั้งแต่เหตุการณ์ล่าสุด
จำนวนจะเพิ่มขึ้นเมื่อไม่ได้รับแพ็กเก็ตในช่วงเวลาที่กำหนด หรือแพ็กเก็ตที่ได้รับเกิดความเสียหาย
จำนวนนี้จะรีเซ็ตหลังจากการรายงานไปยังโฮสต์
NAK_Count 4 อ็อกเท็ต จำนวน NAK (การรับทราบเชิงลบ) นับตั้งแต่เหตุการณ์ล่าสุด
จำนวนนี้จะรีเซ็ตหลังจากการรายงานไปยังโฮสต์
Last_TX_ACK_Timestamp 4 อ็อกเท็ต การประทับเวลาของ TX ACK ล่าสุด โดยอิงตามนาฬิกาบลูทูธของ Piconet Central (CLK)
หน่วย: N * 0.3125 ms (นาฬิกาบลูทูธ 1 เรือน)
Flow_Off_Count 4 อ็อกเท็ต จำนวนครั้งที่ตัวควบคุมได้รับ Flow-off (STOP) นับตั้งแต่เหตุการณ์ล่าสุด
จำนวนนี้จะรีเซ็ตหลังจากการรายงานไปยังโฮสต์
Last_Flow_On_Timestamp 4 อ็อกเท็ต การประทับเวลาของ Flow-on (GO) ล่าสุด โดยอิงตามนาฬิกาบลูทูธของ piconet Central (CLK)
หน่วย: N * 0.3125 ms (นาฬิกาบลูทูธ 1 เรือน)
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
จำนวนนี้จะรีเซ็ตหลังจากการรายงานไปยังโฮสต์
ค่าจะเป็น 0 หากไม่มีค่าที่ถูกต้องสำหรับลิงก์
CRC_Error_Packets 4 อ็อกเท็ต จำนวนแพ็กเกจที่ได้รับที่มีข้อผิดพลาด CRC นับตั้งแต่เหตุการณ์ล่าสุด
จำนวนนี้จะรีเซ็ตหลังจากการรายงานไปยังโฮสต์
RX_Duplicate_Packets 4 อ็อกเท็ต จำนวนแพ็กเกจที่ซ้ำกัน (การส่งซ้ำ) ที่ได้รับตั้งแต่เหตุการณ์ล่าสุด
จำนวนนี้จะรีเซ็ตหลังจากการรายงานไปยังโฮสต์
RX_Unreceived_Packets 4 อ็อกเท็ต จำนวนของแพ็กเก็ตที่ไม่ได้รับจะเหมือนกับพารามิเตอร์ของคำสั่งด้านคุณภาพลิงก์ LE READ ISO Link (ดู Bluetooth Core Specification เวอร์ชัน 5.4) สตรีมที่เกี่ยวข้องคือ CIS และ BIS
เมื่อเพิ่มค่านี้ เลเยอร์ของลิงก์จะไม่ได้รับเพย์โหลดที่ระบุจากจุดล้าง (ใน CIS) หรือเมื่อสิ้นสุดเหตุการณ์ที่เชื่อมโยงอยู่ (ใน BIS ดูข้อมูลจำเพาะหลักของบลูทูธ เวอร์ชัน 5.4 Vol 6 ส่วน B ส่วนที่ 4.4.6.6)
Coex_Info_Mask 2 อ็อกเท็ต บิต 0 - CoexInvolvement: ตั้งเพื่อระบุว่าระบบสงสัยว่ากิจกรรม Coex จะเกี่ยวข้อง เมื่อมีการสร้างรายงานนี้ (เช่น A2DP Chops และ Approaching LSTO)
บิต 1 - วิทยุ WL 2G ทำงานอยู่: ตั้งค่าเพื่อระบุว่าวิทยุ WLAN 2G ทำงานอยู่
บิต 2 - เชื่อมต่อ WL 2G แล้ว: ตั้งค่าเพื่อระบุว่าวิทยุ WLAN 2G ทำงานอยู่และเชื่อมต่อแล้ว
บิต 3 - วิทยุ WL 5G/6G ทำงานอยู่: ตั้งค่าเพื่อระบุว่าวิทยุ WLAN 5G/6G ทำงานอยู่
บิต 4-15 - สงวนไว้
พารามิเตอร์เฉพาะผู้ให้บริการ (ความยาวรวมของพารามิเตอร์ - TBD) * อ็อกเท็ต สำหรับผู้ให้บริการตัวควบคุมในการรับพารามิเตอร์เฉพาะผู้ให้บริการเพิ่มเติม

รหัสเหตุการณ์ย่อย = 0x58 [quality_Report_Id = 0x05, เหตุการณ์การอักเสบของราก]

เหตุการณ์นี้แสดงว่าบลูทูธ HAL หรือตัวควบคุมพบข้อผิดพลาดร้ายแรงและต้องใช้สแต็กบลูทูธเพื่อบันทึกสถานการณ์นี้และรีสตาร์ท ตัวควบคุมต้องส่ง Root_Influmation_Event ไปยังสแต็กบลูทูธก่อนที่จะส่งส่วนย่อยแรกของเหตุการณ์ข้อมูลการแก้ไขข้อบกพร่องไม่ว่าในกรณีใดก็ตาม

พารามิเตอร์ Error_Code มีรหัสข้อผิดพลาดที่รายงานจาก HAL/Controller และค่า 0 หากเป็นข้อผิดพลาดเฉพาะของผู้ให้บริการชิปเซ็ต Vendor_Specific_Error_Code มีรหัสข้อผิดพลาดเฉพาะผู้ให้บริการชิปเซ็ตจาก HAL/Controller ควรตั้งค่าเป็น 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: ตัวควบคุมล้มเหลว ดูข้อมูลจำเพาะของบลูทูธ [Vol 2] ส่วน D, รหัสข้อผิดพลาด เพื่อดูรายการรหัสข้อผิดพลาดและคำอธิบาย
Vendor_Specific_Error_Code 1 อ็อกเท็ต 0x00: ไม่มีรหัสข้อผิดพลาดเฉพาะผู้ให้บริการชิปเซ็ต
0x01 ~ 0xFF: รหัสข้อผิดพลาดเฉพาะผู้ให้บริการชิปเซ็ต
พารามิเตอร์เฉพาะผู้ให้บริการ (ความยาวรวมของพารามิเตอร์ - 4) * อ็อกเท็ต สำหรับผู้ให้บริการตัวควบคุมในการรับพารามิเตอร์เฉพาะผู้ให้บริการเพิ่มเติม
พารามิเตอร์เหตุการณ์ย่อย ขนาด วัตถุประสงค์
Quality_Report_Id 1 อ็อกเท็ต 0x00 ~ 0x10: สงวนไว้
0x11: การติดตามข้อความ LMP/LL
0x12: การติดตามการกำหนดเวลาของ Bluetooth Multi-link/Coex
0x13: ดัมพ์ข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุม
0x14 ~ 0xFF: จองแล้ว
Connection_Handle 2 อ็อกเท็ต แฮนเดิลการเชื่อมต่อ
พารามิเตอร์เฉพาะผู้ให้บริการ (ความยาวรวมของพารามิเตอร์ - 4) * อ็อกเท็ต รูปแบบเฉพาะของผู้ให้บริการสำหรับการติดตามข้อความ LMP, การติดตามการกำหนดเวลาสำหรับหลายลิงก์/Coex ของบลูทูธ และดัมพ์ของข้อมูลการแก้ไขข้อบกพร่องของตัวควบคุม

การสนับสนุนผู้ลงโฆษณาหลายราย

วัตถุประสงค์ของการสนับสนุนผู้ลงโฆษณาหลายรายมีดังนี้

  • ความสามารถในการรองรับโฆษณาหลายรายการ (max_advt_instances)
  • กำลังส่งที่แตกต่างกันเพื่อให้มีช่วงที่ต่างกัน
  • เนื้อหาโฆษณาที่แตกต่างกัน
  • คำตอบสำหรับผู้ลงโฆษณาแต่ละราย
  • ความเป็นส่วนตัว (ไม่สามารถติดตามได้) สำหรับผู้ลงโฆษณาแต่ละราย
  • เชื่อมต่อได้

มีคำสั่งเฉพาะผู้ให้บริการดังต่อไปนี้เพื่อให้ข้อกำหนดนี้ใกล้เคียงกับมาตรฐานที่มีอยู่ โดยมาจากข้อกำหนดของ Bluetooth Core 4.1

คำสั่ง LE_Multi_Advt

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 คำสั่งพารามิเตอร์การโฆษณา)

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 1 อ็อกเท็ต ระบุความเกี่ยวข้องของพารามิเตอร์ข้างต้นกับอินสแตนซ์
Tx_power 1 อ็อกเท็ต Transmit_Power
หน่วย - ใน dBm (จำนวนเต็มที่ลงนาม)
ช่วง (-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)

OCF ย่อย: 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)

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)

OCF ย่อย: 0x04

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
ที่อยู่แบบสุ่ม ต่อข้อกำหนด ต่อข้อกำหนด
Advertising_Instance 1 อ็อกเท็ต ระบุความเกี่ยวข้องของพารามิเตอร์ข้างต้นกับอินสแตนซ์

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Multi_advt_opcode 1 อ็อกเท็ต 0x04 [Set_Random_Addr_Multi_Sub_Cmd]

LE_Multi_Advt_Command: Set_Advt_Enabled_Multi_Sub_Cmd

ข้อมูลอ้างอิงพื้นฐาน: ข้อมูลจำเพาะของ Bluetooth Core 4.1 หน้า 971 (คำสั่ง LE Set Advertiseเว็บไซต์เปิดใช้ในข้อกำหนดหลัก)

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_ระยะหมดเวลา

OCF: 0x15C

พารามิเตอร์คำสั่ง ขนาด วัตถุประสงค์
LE_local_IRK 16 อ็อกเท็ต IRK ของอุปกรณ์ในเครื่องที่ใช้สร้างที่อยู่ที่แปลงได้แบบสุ่ม
tRPA_min 2 อ็อกเท็ต ระยะหมดเวลาการสร้าง RPA ขั้นต่ำเป็นวินาที ตัวควบคุมต้องสร้างที่อยู่ที่แก้ไขได้ใหม่สำหรับกิจกรรมการโฆษณา/การสแกน/การเชื่อมต่อในหรือหลังจากระยะหมดเวลานี้
ช่วงที่ใช้ได้: 300-1800
tRPA_max 2 อ็อกเท็ต ระยะหมดเวลาการสร้าง RPA สูงสุดเป็นวินาที ตัวควบคุมต้องสร้างที่อยู่ที่แก้ไขได้ใหม่สำหรับกิจกรรมการโฆษณา/การสแกน/การเชื่อมต่อในหรือก่อนระยะหมดเวลานี้
ช่วงที่ใช้ได้: tRPA_min-1800
พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะของคำสั่ง

ค่าสถานะ HCI ที่แนะนำ:
0x00 Success
0x01 คำสั่งที่ไม่รู้จัก (หากไม่รองรับ)
0x12 พารามิเตอร์คำสั่งไม่ถูกต้อง (หากมีพารามิเตอร์อยู่นอกช่วงที่กำหนด)

คำสั่งยกเลิกการโหลด LE_RPA

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: คำสั่งเปิดใช้ [cust_specific_sub_Command]

OCF ย่อย: 0x01

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
enable_customer_specific_feature_set 1 อ็อกเท็ต 0x01 - เปิดใช้ฟีเจอร์ RPA ที่มีการออฟโหลด
0x00 - ปิดใช้ฟีเจอร์ RPA ที่มีการออฟโหลด

โฮสต์ต้องเปิดใช้การลด RPA ตามความสามารถของชิป โปรดดูที่ LE_Get_Vendor_Capabilities_Command ชิปแต่ละรายการจะมี max_irk_list_sz ต่างกันในเฟิร์มแวร์

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Event_cust_specific_feature_opcode 1 อ็อกเท็ต 0x01 [เปิดใช้ฟีเจอร์เฉพาะลูกค้า]

ลดการโหลด LE_RPA: เพิ่ม_IRK_to_list_sub_Command

OCF ย่อย: 0x02

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
LE_IRK 16 อ็อกเท็ต LE IRK (LSB 1 ไบต์)
Address_Type 1 อ็อกเท็ต 0: ที่อยู่สาธารณะ
1: ที่อยู่แบบสุ่ม
LE_Device_Address 6 อ็อกเท็ต ที่อยู่สาธารณะหรือที่อยู่แบบสุ่มที่เชื่อมโยงกับ IRK (1 ไบต์ LSB)

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Event_cust_specific_feature_opcode 1 อ็อกเท็ต 0x02 [เพิ่ม IRK ลงในรายการ]
LE_IrkList_AvailableSpaces 1 อ็อกเท็ต รายการ IRL ที่ใช้ได้หลังจากการดำเนินการปัจจุบัน

ลดการโหลด LE_RPA: คำสั่งนำออก_IRK_to_list_sub_

OCF ย่อย: 0x03

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
Address_Type 1 อ็อกเท็ต 0: ที่อยู่สาธารณะ
1: ที่อยู่แบบสุ่ม
LE_Device_Address 6 อ็อกเท็ต ที่อยู่สาธารณะหรือที่อยู่แบบสุ่มที่เชื่อมโยงกับ IRK

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Event_cust_specific_feature_opcode 1 อ็อกเท็ต 0x03 [ลบ IRK ออกจากรายการ]
LE_IrkList_AvailableSpaces 1 อ็อกเท็ต รายการ IRL ที่ใช้ได้หลังจากการดำเนินการปัจจุบัน

ลดภาระงาน LE_RPA: คำสั่งล้าง_IRK_list_sub_

OCF ย่อย: 0x04

พารามิเตอร์คำสั่งย่อย ขนาด วัตถุประสงค์
ไม่มี

ระบบจะสร้างเหตุการณ์คำสั่งเสร็จสมบูรณ์สำหรับคำสั่งนี้

พารามิเตอร์การคืนสินค้า ขนาด วัตถุประสงค์
Status 1 อ็อกเท็ต สถานะคำสั่งเสร็จสมบูรณ์
Event_cust_specific_feature_opcode 1 อ็อกเท็ต 0x04 [รายการ IRK ล้าง]
LE_IrkList_AvailableSpaces 1 อ็อกเท็ต รายการ IRL ที่ใช้ได้หลังการดำเนินการปัจจุบัน [max_irk_list_sz]

ลดภาระงาน LE_RPA: คำสั่งอ่าน_IRK_list_sub_

OCF ย่อย: 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 อ็อกเท็ต ดัชนีของ IRK ที่โฮสต์ต้องการอ่านกลับมา (ขนาดรายการ IRK สูงสุดคือ 32)
LE_IRK 16 อ็อกเท็ต ค่า IRK
Address_Type 1 อ็อกเท็ต 0: ที่อยู่สาธารณะ
1: ที่อยู่แบบสุ่ม
LE_Device_Address 6 อ็อกเท็ต ที่อยู่สาธารณะหรือที่อยู่แบบสุ่มที่เกี่ยวข้องกับ IRK
LE_Resolved_Private_Address 6 อ็อกเท็ต ที่อยู่ส่วนตัวที่แก้ไขได้ในปัจจุบันซึ่งแก้ไขได้ของ IRK นี้