হোস্ট কন্ট্রোলার ইন্টারফেস (HCI) একটি ব্লুটুথ কন্ট্রোলারের সাথে ইন্টারঅ্যাক্ট করার জন্য ব্যবহৃত হয়।
এই নথিটি ব্লুটুথ (বিটি) এবং ব্লুটুথ লো এনার্জি (বিএলই) এইচসিআই প্রয়োজনীয়তার একটি তালিকা প্রদান করে। লক্ষ্য হল হোস্ট BT স্ট্যাক বিক্রেতা এবং BT কন্ট্রোলার বিক্রেতাদের এই প্ল্যাটফর্মের প্রয়োজনীয়তাগুলি মেনে চলার জন্য নীচে বর্ণিত বৈশিষ্ট্য সেট ব্যবহার করার জন্য।
এই নথিটি ব্লুটুথ কোর 5.2 স্পেসিফিকেশনকে "স্পেক" হিসাবে উল্লেখ করে। ব্লুটুথ কোর 5.2 স্পেসিফিকেশন ব্লুটুথ এসআইজি ওয়েবসাইটে অন্যান্য গৃহীত নথির সাথে উপলব্ধ।
সাধারণ নকশা ওভারভিউ
চিপ ক্ষমতা এবং কনফিগারেশন
একটি উন্মুক্ত প্ল্যাটফর্ম হিসাবে, অ্যান্ড্রয়েডে সফ্টওয়্যার রিলিজ, OEM, বিক্রেতা এবং প্ল্যাটফর্ম এবং চিপ ক্ষমতাগুলির একটি ম্যাট্রিক্স রয়েছে৷
পরিবর্তিত ল্যান্ডস্কেপ পরিচালনা করতে এবং মাইগ্রেশন পরিচালনা করতে, বিটি কন্ট্রোলারদের তাদের ক্ষমতা (স্ট্যান্ডার্ড ব্লুটুথ কোর 5.2 স্পেসিফিকেশনের বাইরে) প্রকাশ করার অনুমতি দেওয়ার একটি নকশা দর্শন এই নথিতে বর্ণনা করা হয়েছে। হোস্ট বিটি স্ট্যাক তারপরে কোন বৈশিষ্ট্যগুলি সক্ষম করতে হবে তা নির্ধারণ করতে এই ক্ষমতাগুলি ব্যবহার করতে পারে।
খোলা মান সমর্থন
অ্যান্ড্রয়েডের একটি লক্ষ্য হল একটি ব্লুটুথ স্পেসিফিকেশনে অনুমোদনের পরে উন্মুক্ত মানগুলিকে সমর্থন করা। যদি নীচে বর্ণিত একটি বৈশিষ্ট্য ভবিষ্যতের ব্লুটুথ স্পেসিফিকেশনে স্ট্যান্ডার্ড HCI পদ্ধতিতে উপলব্ধ হয়, আমরা সেই পদ্ধতিটিকে ডিফল্ট করার দিকে ঝুঁকব।
বিক্রেতা-নির্দিষ্ট ক্ষমতা
বিক্রেতা-নির্দিষ্ট কমান্ড: LE_Get_Vendor_Capabilities_Command
OpCode কমান্ড ক্ষেত্র (OCF): 0x153
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
এন.এ | খালি কমান্ড প্যারামিটার তালিকা |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ অবস্থা |
max_advt_instances (বঞ্চিত) | 1 অক্টেট | সমর্থিত বিজ্ঞাপন উদাহরণ সংখ্যা. v0.98 এর পরে সংরক্ষিত। এই প্যারামিটারটি Google বৈশিষ্ট্য স্পেক v0.98 এবং উচ্চতর BT স্পেক সংস্করণ 5.0 এবং উচ্চতর সংস্করণে উপলব্ধ LE এক্সটেন্ডেড বিজ্ঞাপনের পক্ষে অবহেলিত। |
offloaded_resolution_of_private-address (বঞ্চিত) | 1 অক্টেট | RPA এর BT চিপ ক্ষমতা। একটি চিপ দ্বারা সমর্থিত হলে, এটি হোস্ট দ্বারা সক্ষমতা প্রয়োজন. 0 = সক্ষম নয় 1 = সক্ষম v0.98 এর পরে সংরক্ষিত। এই প্যারামিটারটি Google বৈশিষ্ট্য স্পেক v0.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 বৈশিষ্ট্য বৈশিষ্ট্যের সংস্করণ নির্দিষ্ট করে বাইট[0] = প্রধান সংখ্যা বাইট[1] = ছোট সংখ্যা v1.04 বাইট[0] = 0x01 বাইট[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 = সমর্থিত v0.98 এর পরে সংরক্ষিত। এই প্যারামিটারটি Google বৈশিষ্ট্য স্পেক v0.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 বিট 2 - APTX বিট 3 - APTX HD বিট 4 - LDAC বিট 5-31 সংরক্ষিত |
a2dp_offload_v2_support | 1 অক্টেট | ব্লুটুথ কন্ট্রোলারে A2DP অফলোড v2 কমান্ড সমর্থন করে (দেখুন A2DP অফলোড শুরু করুন , A2DP অফলোড বন্ধ করুন ) 0 = সমর্থিত নয় 1 = সমর্থিত |
ব্যাচ স্ক্যান ফলাফল
একটি ডিজাইন লক্ষ্য হল ব্লুটুথ LE স্ক্যান রেসপন্স ইভেন্ট বিজ্ঞপ্তিগুলি হোস্টের কাছে কীভাবে বিতরণ করা হয় তা উন্নত করা, যাতে হোস্টে শক্তি সঞ্চয় করা যায়।
ফলাফল স্ক্যান করার জন্য কন্ট্রোলার হোস্ট অ্যাপ প্রসেসরকে কত ঘনঘন অবহিত করে তা কমিয়ে, হোস্ট অ্যাপ প্রসেসর বেশিক্ষণ নিষ্ক্রিয়/নিদ্রায় থাকতে পারে। এটি হোস্টে শক্তি খরচ হ্রাস করে। LE_Get_Vendor_Capabilities_Command
এর রিটার্ন প্যারামিটার total_scan_results_storage
স্ক্যান ফলাফলের স্টোরেজের জন্য চিপের ক্ষমতা নির্দেশ করে।
এই বৈশিষ্ট্যটি ব্লুটুথ কন্ট্রোলারে LE স্ক্যান ফলাফল স্টোরেজ সুবিধার ব্যবস্থাপনা এবং কনফিগারেশনের উপর দৃষ্টি নিবদ্ধ করে। স্টোরেজটি অস্থায়ীভাবে বিজ্ঞাপনের ডেটা ব্যাচ করতে এবং হোস্টে পরবর্তী ডেলিভারির জন্য নিয়ামক দ্বারা প্রাপ্ত ডেটা এবং মেটাডেটা স্ক্যান করতে ব্যবহৃত হয়।
ফার্মওয়্যার দুটি ধরণের ব্যাচিং সমর্থন করবে, যা একই সাথে নিযুক্ত হতে পারে:
- ছাঁটা। নিম্নলিখিত তথ্য উপাদান রয়েছে: {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: গ্রাহক-নির্দিষ্ট বৈশিষ্ট্য সক্ষম করুন
সাব 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
। ট্রাঙ্কেটেড মোডের জন্য যে রেকর্ড রাখতে হবে তা হল: { BD_ADDR
, Tx Power, RSSI, Timestamp}
যখন সম্পূর্ণ মোড সক্ষম হয়, সক্রিয় স্ক্যানিং ব্যবহার করা হবে এবং স্ক্যান প্রতিক্রিয়া রেকর্ড করা হবে। সম্পূর্ণ শৈলী অনন্য কী = {MAC, বিজ্ঞাপন প্যাকেট}, স্ক্যানের ব্যবধান নির্বিশেষে। ফুল মোডের জন্য যে রেকর্ড রাখতে হবে তা হল { BD_ADDR
, Tx Power, RSSI, টাইমস্ট্যাম্প, অ্যাড প্যাকেট, স্ক্যান রেসপন্স}। সম্পূর্ণ শৈলীতে, একই AD প্যাকেট, যখন বিভিন্ন স্ক্যান ব্যবধানে একাধিকবার দেখা যায়, শুধুমাত্র একবার রেকর্ড করা হয়। যাইহোক, ছেঁড়া মোডে, এটি বিভিন্ন স্ক্যান ব্যবধানে BA_ADDR
এর দৃশ্যমানতা যা আগ্রহের বিষয় (একবার প্রতি স্ক্যান অন্তর)। RSSI হল একটি স্ক্যান ব্যবধানের মধ্যে একটি অনন্য বিজ্ঞাপনের সমস্ত নকলের গড় মান৷
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ অবস্থা |
Batch_scan_opcode | 1 অক্টেট | 0x03 [ব্যাচ স্ক্যান প্যারামিটার সেট করুন] |
LE_Batch_Scan_Command: ব্যাচ স্ক্যান ফলাফল সাবকমান্ড পড়ুন
সাব OCF: 0x04
সাবকমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Batch_Scan_Data_read | 1 অক্টেট | 0x01 - কাটা মোড ডেটা 0x02 - সম্পূর্ণ মোড ডেটা |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে। হোস্ট যখন এই কমান্ডটি জারি করে, তখন কন্ট্রোলারের সমস্ত ফলাফল একটি কমান্ড সম্পূর্ণ ইভেন্টে মাপসই নাও হতে পারে। হোস্ট এই কমান্ডটি জারি করার পুনরাবৃত্তি করবে যতক্ষণ না কমান্ড কমপ্লিট ইভেন্টে সংশ্লিষ্ট ফলাফল রেকর্ডের সংখ্যায় 0 নির্দেশ করে, যা নির্দেশ করে যে হোস্টের সাথে যোগাযোগ করার জন্য কন্ট্রোলারের আর কোন রেকর্ড নেই। প্রতিটি কমান্ড সম্পূর্ণ ইভেন্টে শুধুমাত্র এক ধরনের ডেটার একাধিক রেকর্ড থাকতে পারে (সম্পূর্ণ বা কাটা)।
কন্ট্রোলার এবং হোস্ট টাইম রেফারেন্স সিঙ্ক্রোনাইজ করা হয় না। টাইমস্ট্যাম্পের একক হল 50ms। হোস্ট দ্বারা 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 | পরিবর্তনশীল | কাটা মোড: ঠিকানা[0]: 6 অক্টেট ঠিকানা_প্রকার[0]: 1 অক্টেট Tx_Pwr[0]: 1 অক্টেট RSSI[0] : 1 অক্টেট টাইমস্ট্যাম্প[0]: 2 অক্টেট [উপরের বিন্যাস সহ একাধিক রেকর্ড ( num_of_records )]সম্পূর্ণ মোড: ঠিকানা[0]: 6 অক্টেট ঠিকানা_প্রকার[0]: 1 অক্টেট Tx_Pwr[0]: 1 অক্টেট RSSI[0]: 1 অক্টেট টাইমস্ট্যাম্প[0]: 2 অক্টেট Adv packet_len[0]: 1 octet Adv_packet[0]: Adv_packet_len octets Scan_data_resp_len[0]: 1 অক্টেট Scan_data_resp[0]: Scan_data_resp অক্টেট[উপরের বিন্যাস সহ একাধিক রেকর্ড ( num_of_records )] |
বিজ্ঞাপন প্যাকেট বিষয়বস্তু ফিল্টার
কন্ট্রোলারে বিজ্ঞাপন প্যাকেট কন্টেন্ট ফিল্টার (APCF) সক্ষম/অক্ষম/সেটআপ করতে এটি ব্যবহার করুন। APCF কন্ট্রোলারে বিজ্ঞাপনের রিপোর্ট ফিল্টার করে কিন্তু পর্যায়ক্রমিক বিজ্ঞাপন ফিল্টার করে না।
LE_APCF_Command
OCF: 0x157
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
APCF_opcode | 1 অক্টেট | 0x00 - APCF সক্ষম করুন 0x01 - APCF ফিল্টারিং পরামিতি সেট করুন 0x02 - APCF সম্প্রচারকারীর ঠিকানা 0x03 - APCF পরিষেবা UUID 0x04 - APCF পরিষেবা সলিসিটেশন UUID 0x05 - APCF স্থানীয় নাম 0x06 - APCF ম্যানুফ্যাকচারার ডেটা 0x07 - APCF পরিষেবা ডেটা 0x08 - APCF ট্রান্সপোর্ট ডিসকভারি সার্ভিস 0x09 - APCF AD টাইপ ফিল্টার 0x10 ~ 0xAF - ভবিষ্যতে ব্যবহারের জন্য সংরক্ষিত 0xB0 ~ 0xDF - বিক্রেতার জন্য সংরক্ষিত 0xE0 ~ 0xFE - ভবিষ্যতে ব্যবহারের জন্য সংরক্ষিত 0xFF - APCF বর্ধিত বৈশিষ্ট্য পড়ুন |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | রিটার্ন স্ট্যাটাস |
APCF_opcode | 1 অক্টেট | 0x00 - APCF সক্ষম করুন 0x01 - APCF ফিল্টারিং পরামিতি সেট করুন 0x02 - APCF সম্প্রচারকারীর ঠিকানা 0x03 - APCF পরিষেবা UUID 0x04 - APCF পরিষেবা সলিসিটেশন UUID 0x05 - APCF স্থানীয় নাম 0x06 - APCF ম্যানুফ্যাকচারার ডেটা 0x07 - APCF পরিষেবা ডেটা 0x08 - APCF ট্রান্সপোর্ট ডিসকভারি সার্ভিস 0x09 - APCF AD টাইপ ফিল্টার 0x10 ~ 0xAF - ভবিষ্যতে ব্যবহারের জন্য সংরক্ষিত 0xB0 ~ 0xDF - বিক্রেতার জন্য সংরক্ষিত 0xE0 ~ 0xFE - ভবিষ্যতে ব্যবহারের জন্য সংরক্ষিত 0xFF - APCF বর্ধিত বৈশিষ্ট্য পড়ুন |
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 অক্টেট | নির্বাচিত বৈশিষ্ট্যগুলির জন্য বিট মাস্ক: বিট 0: সম্প্রচার ঠিকানা ফিল্টার সক্ষম করতে সেট করুন বিট 1: পরিষেবা ডেটা পরিবর্তন ফিল্টার সক্ষম করতে সেট করুন৷ বিট 2: পরিষেবা UUID চেক সক্ষম করতে সেট করুন বিট 3: পরিষেবা সলিসিটেশন UUID চেক সক্ষম করতে সেট করুন বিট 4: স্থানীয় নাম চেক সক্ষম করতে সেট করুন বিট 5: প্রস্তুতকারকের ডেটা চেক সক্ষম করতে সেট করুন বিট 6: পরিষেবা ডেটা চেক সক্ষম করতে সেট করুন বিট 7: ট্রান্সপোর্ট ডিসকভারি সার্ভিস চেক সক্ষম করতে সেট করুন বিট 8: AD টাইপ চেক সক্ষম করতে সেট করুন |
APCF_List_Logic_Type | 2 অক্টেট | APCF_Feature_Selection এ উল্লিখিত প্রতিটি বৈশিষ্ট্য নির্বাচনের জন্য লজিক অপারেশন (প্রতি-বিট অবস্থান)।একটি বৈশিষ্ট্য সক্রিয় করা হলেই বৈধ। বিট অবস্থান মান: 0: বা 1: এবং যদি "AND" লজিক নির্বাচন করা হয়, একটি ADV প্যাকেট শুধুমাত্র ফিল্টারটি পাস করবে যদি এতে তালিকার সমস্ত এন্ট্রি থাকে৷ যদি "OR" লজিকটি নির্বাচন করা হয়, একটি ADV প্যাকেট ফিল্টারটি পাস করবে যদি এতে তালিকার কোনো এন্ট্রি থাকে। |
APCF_Filter_Logic_Type | 1 অক্টেট | 0x00: বা 0x01: এবং দ্রষ্টব্য: APCF_Feature_Selection এর প্রথম তিনটি ক্ষেত্রের জন্য যুক্তির ধরন N/A, যা সর্বদা "AND" যুক্তি। এগুলি শুধুমাত্র (বিট 3 - বিট 6) APCF_Feature_Selection এর চারটি ক্ষেত্রের জন্য প্রযোজ্য। |
rssi_high_thresh | 1 অক্টেট | [ডিবিএমে] সংকেত 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 থাকলেই বৈধ।[গণনা] onFound এ একটি বিজ্ঞাপন onfound_timeout সময়ের জন্য ফার্মওয়্যারে দীর্ঘায়িত হলে, এটি কয়েকটি বিজ্ঞাপন সংগ্রহ করবে এবং গণনা পরীক্ষা করা হবে। যদি গণনা onfound_timeout_cnt ছাড়িয়ে যায়, তাহলে OnFound এর সাথে সাথেই রিপোর্ট করা হবে। |
rssi_low_thresh | 1 অক্টেট | delivery_mode on_found থাকলেই বৈধ।[ডিবিএমে] প্রাপ্ত প্যাকেটের RSSI যদি RSSI নিম্ন থ্রেশহোল্ডের উপরে না হয় তবে বিজ্ঞাপনদাতার প্যাকেটটি দেখা হয়নি বলে বিবেচনা করা হয়। |
onlost_timeout | 2 অক্টেট | delivery_mode on_found থাকলেই বৈধ।[মিলিসেকেন্ডে] যদি একটি বিজ্ঞাপন, খুঁজে পাওয়ার পরে, lost_timeout সময়ের জন্য সংলগ্নভাবে দেখা না যায়, তাহলে তা অবিলম্বে হারিয়ে যাওয়ার রিপোর্ট করা হবে। |
num_of_tracking_entries | 2 অক্টেট | delivery_mode on_found থাকলেই বৈধ।[গণনা] প্রতি ফিল্টার ট্র্যাক করার জন্য বিজ্ঞাপনদাতাদের মোট সংখ্যা৷ |
RSSI মানগুলিকে নেতিবাচক মানগুলি উপস্থাপন করতে 2 এর পরিপূরক ব্যবহার করতে হবে।
হোস্ট বিভিন্ন ফিল্টার সমন্বয় পরিচালনা করতে APCF_Application_Address_type
0x02 (সমস্ত সম্প্রচারকারীর ঠিকানার জন্য) সেট করে একাধিক ফিল্টার কনফিগার করতে সক্ষম হবে।
ফিল্টারিং, ব্যাচিং এবং রিপোর্টিং হল আন্তঃসম্পর্কিত ধারণা। প্রতিটি বিজ্ঞাপন এবং সম্পর্কিত স্ক্যান প্রতিক্রিয়া একের পর এক সমস্ত ফিল্টারের মধ্য দিয়ে যেতে হবে। এইভাবে, ফলস্বরূপ ক্রিয়াগুলি ( delivery_mode
) ফিল্টারিংয়ের সাথে ঘনিষ্ঠভাবে আবদ্ধ। ডেলিভারি মোডগুলি নিম্নরূপ: report_immediately
, batch
, এবং onFound
. OnLost
মানটি OnFound
এর সাথে সম্পর্কিত এই অর্থে যে এটি হারিয়ে গেলে OnFound
পরে আসবে।
এই প্রক্রিয়াকরণ প্রবাহ ধারণাগত মডেলকে চিত্রিত করে:

যখন একটি বিজ্ঞাপন (বা স্ক্যান প্রতিক্রিয়া) ফ্রেম প্রাপ্ত হয়, এটি সিরিয়াল ক্রমে সমস্ত ফিল্টারে প্রয়োগ করা হয়। এটা সম্ভব যে একটি বিজ্ঞাপন একটি ফিল্টারের উপর ভিত্তি করে অবিলম্বে প্রতিবেদন তৈরি করতে পারে এবং একটি ভিন্ন ফিল্টার অ্যাকশনের কারণে একইটির ব্যাচিং হতে পারে।
RSSI স্তরের থ্রেশহোল্ডগুলি (উচ্চ এবং নিম্ন) ফিল্টার প্রক্রিয়াকরণের জন্য ফ্রেমটি দৃশ্যমান হলে নিয়ন্ত্রণ করার ক্ষমতা দেয়, এমনকি যখন নিয়ামক দ্বারা একটি বৈধ প্যাকেট পাওয়া যায়। ডেলিভারি মোড অবিলম্বে সেট করা বা ব্যাচ করা হলে, একটি ফ্রেমের RSSI আরও কন্ট্রোলার প্রক্রিয়াকরণের জন্য বিবেচনা করা হয়। বিভিন্ন অ্যাপের আলাদা রিপোর্টিং এবং ব্যাচিং আচরণ প্রয়োজন। এটি একাধিক অ্যাপকে একই সাথে ফার্মওয়্যারে সরাসরি রিপোর্টিং এবং/অথবা ফলাফলের ব্যাচিং করার অনুমতি দেয়। একটি উদাহরণ হল একটি কেস যখন একটি ব্যাচ স্ক্যান একটি অ্যাপ থেকে সক্রিয় থাকে এবং পরে অন্য একটি অ্যাপ দ্বারা একটি নিয়মিত LE স্ক্যান জারি করা হয়। একটি ব্যাচ স্ক্যান জারি করার আগে, ফ্রেমওয়ার্ক/অ্যাপ উপযুক্ত ফিল্টার সেট করে। পরে, যখন দ্বিতীয় অ্যাপ নিয়মিত স্ক্যান জারি করে, আগের ব্যাচিং চলতে থাকে। যাইহোক, নিয়মিত স্ক্যান করার কারণে, এটি ধারণাগতভাবে LE স্ক্যান কমান্ডের সাথে একটি নাল ফিল্টার (সমস্ত বিদ্যমান ফিল্টার সহ) যোগ করার মতো। সক্রিয় থাকাকালীন LE স্ক্যান কমান্ড প্যারামিটারগুলি অগ্রাধিকার পায়। যখন নিয়মিত LE স্ক্যান অক্ষম করা হয়, তখন কন্ট্রোলারটি পূর্ববর্তী ব্যাচ স্ক্যানে ফিরে যাবে, যদি এটি বিদ্যমান থাকে।
OnFound
ডেলিভারি মোড কনফিগার করা ফিল্টারের উপর ভিত্তি করে। একটি সংমিশ্রণ যা একটি ফিল্টারের ক্রিয়াকে সফল হওয়ার জন্য ট্রিগার করে তাকে onLost
জন্য ট্র্যাক করার জন্য সত্তা হিসাবে বিবেচনা করা হয়। সংশ্লিষ্ট ইভেন্ট হল LE Advt ট্র্যাকিং subevent।
একটি ফিল্টারের জন্য 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 - পরিষ্কার Delete নির্দিষ্ট ফিল্টারে নির্দিষ্ট ব্রডকাস্টার ঠিকানা মুছে ফেলবে। সাফ নির্দিষ্ট ফিল্টারে সমস্ত সম্প্রচারকারীর ঠিকানা পরিষ্কার করবে। |
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 - পরিষ্কার Delete নির্দিষ্ট ফিল্টারে নির্দিষ্ট পরিষেবা UUID ঠিকানা মুছে ফেলবে। Clear নির্দিষ্ট ফিল্টারে সমস্ত পরিষেবা 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 - APCF পরিষেবা UUID |
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 - পরিষ্কার Delete নির্দিষ্ট ফিল্টারে থাকা অনুরোধ UUID ঠিকানা মুছে ফেলবে। Clear নির্দিষ্ট ফিল্টারে সমস্ত সলিসিটেশন 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 সলিসিটেশন UUID |
APCF_Action | 1 অক্টেট | ইকো ব্যাক কমান্ডের APCF_Action |
APCF_AvailableSpaces | 1 অক্টেট | সলিসিটেশন UUID টেবিলে বিনামূল্যের এন্ট্রির সংখ্যা এখনও পাওয়া যায় |
LE_APCF_Command: local_name_sub_cmd
এই সাবকমান্ডটি স্থানীয় নামের স্ট্রিং যোগ করতে বা মুছে ফেলতে বা অন-চিপ ফিল্টারিংয়ের জন্য স্থানীয় নামের স্ট্রিং তালিকাটি পরিষ্কার করতে ব্যবহৃত হয়।
সাব OCF: 0x05
সাবকমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
APCF_Action | 1 অক্টেট | 0x00 - যোগ করুন 0x01 - মুছুন 0x02 - পরিষ্কার Delete নির্দিষ্ট ফিল্টারে নির্দিষ্ট স্থানীয় নামের স্ট্রিং মুছে ফেলবে। Clear নির্দিষ্ট ফিল্টারে সমস্ত স্থানীয় নামের স্ট্রিংগুলি সাফ করবে। |
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
এই সাবকমান্ডটি একটি প্রস্তুতকারকের ডেটা স্ট্রিং যোগ করতে বা মুছতে বা অন-চিপ ফিল্টারিংয়ের জন্য প্রস্তুতকারকের ডেটা স্ট্রিং তালিকা সাফ করতে ব্যবহৃত হয়।
সাব OCF: 0x06
সাবকমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
APCF_Action | 1 অক্টেট | 0x00 - যোগ করুন 0x01 - মুছুন 0x02 - পরিষ্কার Delete নির্দিষ্ট ফিল্টারে নির্দিষ্ট নির্মাতার ডেটা স্ট্রিং মুছে ফেলবে। Clear নির্দিষ্ট ফিল্টারে সমস্ত প্রস্তুতকারকের ডেটা স্ট্রিংগুলি সাফ করবে। |
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
এই সাবকমান্ডটি একটি পরিষেবা ডেটা স্ট্রিং যোগ করতে বা মুছতে বা অন-চিপ ফিল্টারিংয়ের জন্য পরিষেবা ডেটা স্ট্রিং তালিকা সাফ করতে ব্যবহৃত হয়।
সাব OCF: 0x07
সাবকমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
APCF_Action | 1 অক্টেট | 0x00 - যোগ করুন 0x01 - মুছুন 0x02 - পরিষ্কার Delete নির্দিষ্ট ফিল্টারে নির্দিষ্ট পরিষেবা ডেটা স্ট্রিং মুছে ফেলবে। সাফ নির্দিষ্ট ফিল্টারে সমস্ত পরিষেবা ডেটা স্ট্রিং সাফ করবে। |
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
এই সাবকমান্ডটি একটি AD টাইপ যোগ বা মুছে ফেলার জন্য বা অন-চিপ ফিল্টারিংয়ের জন্য একটি AD প্রকারের তালিকা সাফ করতে ব্যবহৃত হয়। এই কমান্ডটি সমর্থিত কিনা তা পরীক্ষা করতে read_extended_features_sub_cmd
ব্যবহার করুন।
APCF_AD_DATA_Length
0 হলে, AD ডেটা এবং AD ডেটা মাস্কের তুলনা না করে APCF_AD_TYPE
ফিল্টার করুন। যদি প্রাপ্ত ADV প্যাকেটের ডেটা দৈর্ঘ্য AD_DATA_LENGTH
ছাড়িয়ে যায়, শুধুমাত্র AD ডেটার প্রথম AD_DATA_LENGTH
বাইটের তুলনা করুন এবং অবশিষ্ট ডেটা উপেক্ষা করুন৷
সাব OCF: 0x09
সাবকমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
APCF_Action | 1 অক্টেট | 0x00 - যোগ করুন 0x01 - মুছুন 0x02 - পরিষ্কার Delete নির্দিষ্ট ফিল্টারে নির্দিষ্ট AD প্রকার মুছে ফেলবে। Clear নির্দিষ্ট ফিল্টারে সমস্ত AD প্রকার সাফ করবে। |
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 AD প্রকার |
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 অক্টেট | বর্ধিত বৈশিষ্ট্যগুলির জন্য বিট মাস্ক সমর্থিত:
বিটের মান
|
কন্ট্রোলার কার্যকলাপ এবং শক্তি তথ্য কমান্ড
এই তথ্যের উদ্দেশ্য হল উচ্চতর হোস্ট সিস্টেম ফাংশনগুলির জন্য BT কন্ট্রোলার এবং এর ম্যাক্রো স্টেট সহ সমস্ত উপাদানগুলির মোট ক্রিয়াকলাপ বিশ্লেষণ করা, অ্যাপস এবং ফ্রেমওয়ার্কে যা ঘটছে তার সাথে একত্রে। এটি করার জন্য, BT স্ট্যাক এবং কন্ট্রোলার থেকে নিম্নলিখিত তথ্য প্রয়োজন:
- BT স্ট্যাক: কন্ট্রোলারের বর্তমান ম্যাক্রো-অপারেশনাল অবস্থার প্রতিবেদন করা
- ফার্মওয়্যার: সামগ্রিক কার্যকলাপ এবং শক্তি তথ্য প্রতিবেদন করা
BT হোস্ট স্ট্যাক ম্যাক্রো অবস্থা, যেমন ব্যবহারকারীর স্তরে নির্ধারিত হয়:
- নিষ্ক্রিয়: [পৃষ্ঠা স্ক্যান, LE বিজ্ঞাপন, অনুসন্ধান স্ক্যান, LE স্ক্যান]
- স্ক্যান: [পেজিং/তদন্ত/সংযোগ করার চেষ্টা করা হচ্ছে]
- সক্রিয়: [ACL লিঙ্ক চালু, SCO লিঙ্ক চলমান, স্নিফ মোড]
নিয়ন্ত্রক তার জীবনের উপর যে কার্যকলাপগুলি ট্র্যাক রাখে তা হল Tx সময়, Rx সময়, নিষ্ক্রিয় সময়, এবং মোট শক্তি খরচ হয়। হোস্ট থেকে পড়া যখন তারা সাফ করা হয়.
LE_Get_Controller_Activity_Energy_Info
এটি একটি বিক্রেতা-নির্দিষ্ট কমান্ড।
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) এবং সময় (ms)] |
LE বর্ধিত সেট স্ক্যান প্যারামিটার কমান্ড
এই কমান্ডটি কন্ট্রোলারে একটি বড় স্ক্যান উইন্ডো এবং ব্যবধান সক্রিয় করতে ব্যবহার করা যেতে পারে। বিটি কোর 5.2 স্পেসিফিকেশন অনুসারে, একটি স্ক্যান উইন্ডো এবং ব্যবধানের 10.24 সেকেন্ডের ঊর্ধ্বসীমা সীমা থাকে, যা অ্যাপগুলির জন্য 10.24 সেকেন্ডের বেশি স্ক্যানের ব্যবধানকে বাধা দেয়।
বেস রেফারেন্স: বিটি কোর 5.2 স্পেসিফিকেশন, পৃষ্ঠা 2493 (এলই সেট স্ক্যান প্যারামিটার কমান্ড)
OCF: 0x15A
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
LE_Ex_Scan_Type | 1 অক্টেট | 0x00 - প্যাসিভ স্ক্যানিং। কোন SCAN_REQ প্যাকেট পাঠানো হবে না (ডিফল্ট)।0x01 - সক্রিয় স্ক্যানিং। SCAN_REQ প্যাকেট পাঠানো হতে পারে। |
LE_Ex_Scan_Interval | 4 অক্টেট | কন্ট্রোলার যখন তার শেষ LE স্ক্যান শুরু করে তখন থেকে পরবর্তী LE স্ক্যান শুরু না হওয়া পর্যন্ত সময়ের ব্যবধান হিসেবে সংজ্ঞায়িত করা হয়। ব্যাপ্তি: 0x0004 থেকে 0x00FFFFFF ডিফল্ট: 0x0010 (10 ms) সময় = N * 0.625 ms সময়সীমা: 2.5 ms থেকে 10442.25 সেকেন্ড |
LE_Ex_Scan_Window | 4 অক্টেট | LE স্ক্যানের সময়কাল। LE_Scan_Window LE_Scan_Interval এর থেকে কম বা সমান হবে।ব্যাপ্তি: 0x0004 থেকে 0xFFFF ডিফল্ট: 0x0010 (10 ms) সময় = N * 0.625 ms সময়সীমা: 2.5 ms থেকে 40.95 সেকেন্ড |
Own_Address_Type | 1 অক্টেট | 0x00 - সর্বজনীন ডিভাইসের ঠিকানা (ডিফল্ট) 0x01 - র্যান্ডম ডিভাইস ঠিকানা |
LE_Ex_Scan_Filter_Policy | 0x00 - সমস্ত বিজ্ঞাপন প্যাকেট গ্রহণ করুন (ডিফল্ট)। নির্দেশিত বিজ্ঞাপন প্যাকেট যা এই ডিভাইসের জন্য সম্বোধন করা হয় না উপেক্ষা করা হবে. 0x01 - শুধুমাত্র সাদা তালিকার তালিকায় নেই এমন ডিভাইস থেকে বিজ্ঞাপনের প্যাকেটগুলি উপেক্ষা করুন৷ নির্দেশিত বিজ্ঞাপন প্যাকেট যা এই ডিভাইসের জন্য সম্বোধন করা হয় না উপেক্ষা করা হবে. |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ অবস্থা |
কন্ট্রোলার ডিবাগ তথ্য কমান্ড পান
এই তথ্য উপাদানটির উদ্দেশ্য হল পোস্ট-প্রসেসিং এবং বিশ্লেষণের জন্য বাইনারি আকারে একটি হোস্টের দ্বারা কন্ট্রোলার ডিবাগ তথ্য অর্জন করা। এটি মাঠের সমস্যাগুলি ডিবাগ করতে সহায়তা করে এবং বিশ্লেষণের জন্য তথ্য লগ করার জন্য ইঞ্জিনিয়ারদের একটি টুলকিট প্রদান করে। একটি কন্ট্রোলার ইভেন্টের (কন্ট্রোলার ডিবাগ ইনফো সাব-ইভেন্ট) মাধ্যমে বা স্বায়ত্তশাসিতভাবে যখন কন্ট্রোলারের ইচ্ছা অনুযায়ী হোস্ট দ্বারা অনুরোধ করা হয় তখন তথ্য প্রদান করতে পারে। উদাহরণ ব্যবহার ফার্মওয়্যার স্টেট তথ্য, ক্র্যাশ ডাম্প তথ্য, লগিং তথ্য ইত্যাদি রিপোর্ট করা হতে পারে।
OCF: 0x15B
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
N/A | খালি কমান্ড প্যারামিটার তালিকা |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ অবস্থা |
A2DP হার্ডওয়্যার অফলোড সমর্থন
A2DP অফলোড বৈশিষ্ট্যটি BT কন্ট্রোলারের সাথে সংযুক্ত একটি অডিও প্রসেসরে A2DP অডিও এনকোডিং প্রক্রিয়ার অফলোড সমর্থন করে। এনকোড করা অডিও ডাটা স্ট্রীম সরাসরি অডিও প্রসেসর থেকে বিটি কন্ট্রোলারে চলে যায় বিটি হোস্টের অংশগ্রহণ ছাড়াই। BT হোস্ট এখনও A2DP সেশনের কনফিগারেশন এবং নিয়ন্ত্রণের জন্য দায়ী। কমান্ডের দুটি সংস্করণ উপলব্ধ। সাব OCF 0x01-0x02 সহ লিগ্যাসি কমান্ডগুলি শুধুমাত্র ওপেন সোর্স কোডেক সমর্থন করে৷ Sub-OCF 0x03-0x04 সহ সংস্করণগুলি কনফিগার করা কোডেকের কাছে অজ্ঞেয়বাদী৷
OCF: 0x15D
A2DP অফলোড শুরু করুন (উত্তরাধিকার)
সাব OCF: 0x01
A2DP অফলোড প্রক্রিয়া কনফিগার করতে এবং A2DP স্ট্রীম শুরু করতে উভয়ই এই কমান্ডটি ব্যবহার করুন।
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Codec | 4 অক্টেট | কোডেক প্রকার নির্দিষ্ট করে 0x01 - SBC 0x02 - AAC 0x04 - APTX 0x08 - APTX HD 0x10 - LDAC |
Max_Latency | 2 অক্টেট | সর্বাধিক লেটেন্সি অনুমোদিত (এমএসে)। শূন্যের মান ফ্লাশ নিষ্ক্রিয় করে। |
SCMS-T_Enable | 2 অক্টেট | অক্টেট 0: পতাকা যা SCMS-T শিরোনাম যোগ করতে সক্ষম করে।
অক্টেট 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 - অডিও বিটরেট নির্দিষ্ট/অব্যবহৃত নয়। 0x00000001 - 0x00FFFFFF - বিট প্রতি সেকেন্ডে এনকোড করা অডিও বিটরেট৷ 0x01000000 - 0xFFFFFFFF - সংরক্ষিত। |
Connection_Handle | 2 অক্টেট | A2DP সংযোগের সংযোগ হ্যান্ডেল কনফিগার করা হচ্ছে |
L2CAP_Channel_ID | 2 অক্টেট | এই A2DP সংযোগের জন্য L2CAP চ্যানেল আইডি ব্যবহার করা হবে |
L2CAP_MTU_Size | 2 অক্টেট | এনকোডেড অডিও প্যাকেট ধারণকারী L2CAP MTU-এর সর্বাধিক আকার |
Codec_Information | 32 অক্টেট | কোডেক-নির্দিষ্ট তথ্য। SBC কোডেক: A2DP v1.3-এ SBC কোডেক নির্দিষ্ট তথ্য উপাদানগুলি পড়ুন। AAC কোডেক: A2DP v1.3-এ AAC কোডেক নির্দিষ্ট তথ্য উপাদানগুলি পড়ুন LDAC কোডেক: অক্টেট 0-3: ভেন্ডর আইডি অক্টেট 4-5: কোডেক আইডি অক্টেট 6: বিটরেট সূচক: অক্টেট 7: LDAC চ্যানেল মোড অক্টেট 8-31: সংরক্ষিত অন্যান্য সমস্ত কোডেক: অক্টেট 0-31: সংরক্ষিত |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ অবস্থা |
Sub_Opcode | 1 অক্টেট | 0x01 - A2DP অফলোড শুরু করুন |
A2DP অফলোড শুরু করুন
সাব OCF: 0x03
A2DP অফলোড প্রক্রিয়া কনফিগার করতে এবং A2DP স্ট্রীম শুরু করতে উভয়ই এই কমান্ডটি ব্যবহার করুন।
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Connection Handle | 2 অক্টেট | সক্রিয় HCI সংযোগের হ্যান্ডেল |
L2CAP_Channel_ID | 2 অক্টেট | A2DP স্ট্রিমিংয়ের জন্য L2CAP চ্যানেলের শনাক্তকারী খোলা হয়েছে |
Data_Path_Direction | 1 অক্টেট | 0x00 - আউটপুট (AVDTP উৎস/মার্জ) 0x01 - ইনপুট (AVDTP সিঙ্ক/স্প্লিট) |
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 অফলোড স্ট্রীম বন্ধ করতে ব্যবহৃত হয়।
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
N/A | খালি কমান্ড প্যারামিটার তালিকা। |
এই কমান্ডের জন্য কোন পরামিতি সংজ্ঞায়িত করা হয় না।
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ অবস্থা |
Sub_Opcode | 1 অক্টেট | 0x02 - A2DP অফলোড বন্ধ করুন |
A2DP অফলোড বন্ধ করুন
সাব OCF: 0x04
এই কমান্ডটি A2DP অফলোড স্ট্রীম বন্ধ করতে ব্যবহৃত হয়।
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Connection Handle | 2 অক্টেট | সক্রিয় HCI সংযোগের হ্যান্ডেল |
L2CAP_Channel_ID | 2 অক্টেট | A2DP স্ট্রিমিংয়ের জন্য L2CAP চ্যানেলের শনাক্তকারী খোলা হয়েছে |
Data_Path_Direction | 1 অক্টেট | 0x00 - আউটপুট (AVDTP উৎস/মার্জ) 0x01 - ইনপুট (AVDTP সিঙ্ক/স্প্লিট) |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ অবস্থা |
Sub_Opcode | 1 অক্টেট | 0x04 - A2DP অফলোড বন্ধ করুন |
ব্লুটুথ কোয়ালিটি রিপোর্ট কমান্ড
বিটি কোয়ালিটি রিপোর্ট কমান্ড ফিচারটি ব্লুটুথ কন্ট্রোলারে মেকানিজম শুরু করে যাতে হোস্টকে ব্লুটুথ কোয়ালিটি ইভেন্ট রিপোর্ট করা যায়। আপনি চারটি বিকল্প সক্ষম করতে পারেন:
- কোয়ালিটি মনিটরিং মোড: কন্ট্রোলার পর্যায়ক্রমে হোস্টের কাছে একটি লিঙ্ক কোয়ালিটি সম্পর্কিত বিকিউআর সাবইভেন্ট পাঠায়।
- অ্যাপ্রোচিং এলএসটিও: লিঙ্ক সুপারভিশন টাইমআউট (এলএসটিও) মানের অর্ধেকের বেশি সময় ধরে সংযুক্ত বিটি ডিভাইস থেকে কোনও প্যাকেট না পাওয়া গেলে, নিয়ন্ত্রক হোস্টের কাছে একটি এলএসটিও ইভেন্টের কাছে রিপোর্ট করে।
- A2DP অডিও চপি: যখন কন্ট্রোলার চপি অডিও সৃষ্টিকারী কারণগুলি সনাক্ত করে, তখন কন্ট্রোলার হোস্টকে একটি A2DP অডিও চপি ইভেন্ট রিপোর্ট করে।
- )
- রুট প্রদাহ: এইচএল বা নিয়ামক যখন মারাত্মক ত্রুটির মুখোমুখি হয় এবং ব্লুটুথ পুনরায় চালু করতে হয় তখন এই ইভেন্টটি কন্ট্রোলার দ্বারা স্ট্যাকের কাছে প্রেরণ করা হয়।
- এলএমপি/এলএল বার্তা ট্রেস: কন্ট্রোলার এলএমপি/এলএল বার্তা হ্যান্ডশেকিংকে দূরবর্তী ডিভাইস সহ হোস্টের কাছে প্রেরণ করে।
- ব্লুটুথ মাল্টি-প্রোফাইল/কোয়েক্স শিডিয়ুলিং ট্রেস: কন্ট্রোলার তার সময়সূচী তথ্য একাধিক ব্লুটুথ প্রোফাইল এবং ওয়্যারলেস সহাবস্থান পরিচালনা করার বিষয়ে 2.4 গিগাহার্টজ ব্যান্ডে হোস্টের কাছে প্রেরণ করে।
- কন্ট্রোলার ডিবাগ ইনফরমেশন মেকানিজম: সক্ষম করা হলে, নিয়ামক স্বায়ত্তশাসিতভাবে ডিবাগ লগিং তথ্যটি কন্ট্রোলার ডিবাগ তথ্যের মাধ্যমে হোস্টের কাছে সাবভেন্টের মাধ্যমে প্রতিবেদন করতে পারে।
- লে অডিও চপ্পি: যখন নিয়ামক চপ্পি অডিওর কারণগুলি সনাক্ত করে, তখন নিয়ামক হোস্টকে একটি লে অডিও চপ্পি ইভেন্টের প্রতিবেদন করে।
- অগ্রিম আরএফ স্ট্যাটাস মোড: কন্ট্রোলার তার আরএফ পরিসংখ্যান সম্পর্কিত তথ্য হোস্টের কাছে রিপোর্ট করে, দুটি প্রতিবেদনের ব্যবহারের ক্ষেত্রে সমর্থন করে:
- পর্যায়ক্রমিক প্রতিবেদন
- ইভেন্ট ট্রিগারস (স্ট্রিম স্টার্ট/স্টপ এবং লিঙ্ক মানের ইভেন্ট ট্রিগার)।
- ব্লুটুথ কোয়ালিটি রিপোর্ট কমান্ডের বিকিউআর_আরপোর্ট_অ্যাকশন: হোস্ট এই এইচসিআই কমান্ডটি গুণমান মনিটরিং মোড, এনার্জি মনিটর মোড বা অ্যাডভান্স আরএফ স্ট্যাটাস মোডের জন্য এক সময়ের ক্যোয়ারী পেতে ব্যবহার করতে পারে।
ওসিএফ: 0x15e
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
BQR_Report_Action | 1 অক্টেট | BQR_QUALY_EVENT_MASK প্যারামিটারে সেট করা মানের ইভেন্ট (গুলি) এর প্রতিবেদন যুক্ত / মুছতে ক্রিয়া, বা সমস্ত সাফ করুন। 0x00 - যোগ করুন মুছুন নির্দিষ্ট মানের ইভেন্ট (গুলি) রিপোর্টিং সাফ করবে। |
BQR_Quality_Event_Mask | 4 অক্টেট | নির্বাচিত মানের ইভেন্ট রিপোর্টিংয়ের জন্য বিট মাস্ক। বিট 0: মান পর্যবেক্ষণ মোড সক্ষম করতে সেট করুন। |
BQR_Minimum_Report_Interval | 2 অক্টেট | নির্বাচিত মানের ইভেন্ট (গুলি) এর জন্য মানের ইভেন্ট রিপোর্টিংয়ের সর্বনিম্ন সময়ের ব্যবধান নির্ধারণ করুন। কন্ট্রোলার ফার্মওয়্যারটি নির্ধারিত সময়ের ব্যবধানের মধ্যে পরবর্তী ইভেন্টটি রিপোর্ট করা উচিত নয়। ব্যবধান সেটিংটি যুক্ত করা হচ্ছে এমন মানের ইভেন্ট (গুলি) এর জন্য সংশ্লিষ্ট এবং উত্সর্গীকৃত হবে। ইউনিট: এমএস |
BQR_Vendor_Specific_Quality_Event_Mask | 4 অক্টেট | নির্বাচিত বিক্রেতা-নির্দিষ্ট মানের ইভেন্ট রিপোর্টিংয়ের জন্য বিট মাস্ক। এই প্যারামিটারটি কেবল তখনই বৈধ যখন BQR_Quality_Event_Mask বিট 15 সেট করা থাকে।বিট 0 ~ 31: সংরক্ষিত। |
BQR_Vendor_Specific_Trace_Mask | 4 অক্টেট | নির্বাচিত বিক্রেতা-নির্দিষ্ট ট্রেস রিপোর্টিংয়ের জন্য বিট মাস্ক। এই প্যারামিটারটি কেবল তখনই বৈধ যখন BQR_Quality_Event_Mask বিট 31 সেট করা হয়।বিট 0 ~ 31: সংরক্ষিত। |
Report_interval_multiple | 4 অক্টেট | BQR_Minimum_Report_Interval এর গুণক। যখন এই মান> = 1, বিকিউআর রিপোর্টের ব্যবধানটি ফর্ম্যাটটি অনুসরণ করেবিকিউআর রিপোর্টের ব্যবধান = বিকিউআর_মিনিমাম_আরপোর্ট_ইন্টারভাল এক্স রিপোর্ট_আইন্টারভাল_মিলিটিপল। কন্ট্রোলার ফার্মওয়্যারটি অবশ্যই নির্ধারিত সময়ের ব্যবধানের মধ্যে পরবর্তী ইভেন্টটি রিপোর্ট করতে হবে না। অন্তর সেটিংটি বিশেষভাবে যুক্ত মানের ইভেন্ট (গুলি) এর জন্য উত্সর্গীকৃত। ইউনিট: এমএস BQR_Report_Interval এর সেটিংটি নিয়ামকের দক্ষতার চেয়ে বড় হয় তবে কন্ট্রোলারকে অবশ্যই কমান্ডের সমাপ্তিতে সর্বাধিক BQR_Report_Interval সময়টি ফিরিয়ে দিতে হবে। |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Current_Quality_Event_Mask | 4 অক্টেট | বর্তমান বিট মাস্ক সেটিং নির্দেশ করে। বিট 0: গুণমান পর্যবেক্ষণ মোড সক্ষম করা হয়েছে। বিট 1: এলএসটিও ইভেন্ট রিপোর্টিংয়ের কাছে পৌঁছানো সক্ষম করা হয়েছে। বিট 2: এ 2 ডিপি অডিও চপ্পি ইভেন্ট রিপোর্টিং সক্ষম করা হয়েছে। বিট 3: (ঙ) এসসিও ভয়েস চপ্পি ইভেন্ট রিপোর্টিং সক্ষম করা হয়েছে। বিট 4: রুট প্রদাহ ইভেন্ট রিপোর্টিং সক্ষম করা হয়েছে। বিট 5: শক্তি পর্যবেক্ষণ মোড সক্ষম করা হয়েছে। বিট 6: লে অডিও চপ্পি ইভেন্ট রিপোর্টিং সক্ষম করা হয়েছে। বিট 7: সংযোগ ব্যর্থ ইভেন্ট। বিট 8: অগ্রিম আরএফ স্ট্যাটাস মোড ইভেন্ট ট্রিগার সক্ষম করতে সেট করুন। বিট 9: অগ্রিম আরএফ পরিসংখ্যানগুলি পর্যায়ক্রমে প্রতিবেদন সক্ষম করতে সেট করুন। বিট 10 ~ 14: সংরক্ষিত। বিট 15: বিক্রেতা-নির্দিষ্ট মানের ইভেন্ট রিপোর্টিং সক্ষম করা হয়েছে। বিট 16: এলএমপি/এলএল বার্তা ট্রেস সক্ষম করা হয়েছে। বিট 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 এর সেটিং। এটি অবশ্যই বিকিউআর_মিনিমাম_আরপোর্ট_ইন্টারভাল * রিপোর্ট_ইন্টারভাল_মিলিটিপল বা নিয়ামকের সর্বাধিক সমর্থন ব্যবধানের মধ্যে ন্যূনতম মান হতে হবে। |
গতিশীল অডিও বাফার কমান্ড
গতিশীল অডিও বাফার বিভিন্ন পরিস্থিতিতে ভিত্তিতে ব্লুটুথ কন্ট্রোলারে অডিও বাফার আকার পরিবর্তন করে অডিও গ্লিচিং হ্রাস করে।
ওসিএফ: 0x15f
অডিও বাফার সময় সক্ষমতা পান
সাব ওসিএফ: 0x01
ব্লুটুথ কন্ট্রোলার থেকে অডিও বাফার সময় সক্ষমতা পেতে এই কমান্ডটি ব্যবহার করুন।
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
N/A | খালি কমান্ড প্যারামিটার তালিকা |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Dynamic_Audio_Buffer_opcode | 1 অক্টেট | 0x01 - অডিও বাফার সময় পান |
Audio_Codec_Type_Supported | 4 অক্টেট | সমর্থিত কোডেক প্রকারের জন্য বিট মাস্ক বিট 0 - এসবিসি বিট 1 - এএসি বিট 2 - এপিটিএক্স বিট 3 - এপিটিএক্স এইচডি বিট 4 - এলডিএসি বিট 5-31 সংরক্ষিত |
Audio_Codec_Buffer_Default_Time_For_Bit_0 | 2 অক্টেট | বিট 0 এর ডিফল্ট বাফার সময় 0 কোডেক প্রকারের অডিও_কোডেক_ টাইপ_সপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 0 কোডেক টাইপ সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
Audio_Codec_Buffer_Maximum_Time_For_Bit_0 | 2 অক্টেট | বিট 0 এর সর্বাধিক বাফার সময় 0 কোডেক প্রকারের অডিও_কোডেক_ টাইপ_সপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 0 কোডেক টাইপ সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
Audio_Codec_Buffer_Minimum_Time_For_Bit_0 | 2 অক্টেট | বিট 0 এর সর্বনিম্ন বাফার সময় 0 কোডেক প্রকারের অডিও_কোডেক_ টাইপ_সপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 0 কোডেক টাইপ সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
Audio_Codec_Buffer_Default_Time_For_Bit_1 | 2 অক্টেট | বিট 1 কোডেক প্রকারের ডিফল্ট বাফার সময় অডিও_কোডেক_ টাইপ_সুপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 1 কোডেক প্রকারটি সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
Audio_Codec_Buffer_Maximum_Time_For_Bit_1 | 2 অক্টেট | বিট 1 কোডেক প্রকারের সর্বাধিক বাফার সময় অডিও_কোডেক_ টাইপ_সপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 1 কোডেক প্রকারটি সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
Audio_Codec_Buffer_Minimum_Time_For_Bit_1 | 2 অক্টেট | বিট 1 কোডেক প্রকারের সর্বনিম্ন বাফার সময় অডিও_কোডেক_ টাইপ_সুপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 1 কোডেক প্রকারটি সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
...... | ...... | ...... |
Audio_Codec_Buffer_Default_Time_For_Bit_31 | 2 অক্টেট | বিট 31 কোডেক প্রকারের ডিফল্ট বাফার সময় অডিও_কোডেক_ টাইপ_সপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 31 কোডেক প্রকারটি সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
Audio_Codec_Buffer_Maximum_Time_For_Bit_31 | 2 অক্টেট | বিট 31 কোডেক প্রকারের সর্বাধিক বাফার সময় অডিও_কোডেক_ টাইপ_সপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 31 কোডেক প্রকারটি সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
Audio_Codec_Buffer_Minimum_Time_For_Bit_31 | 2 অক্টেট | বিট 31 কোডেক প্রকারের সর্বনিম্ন বাফার সময় অডিও_কোডেক_ টাইপ_সপোর্টডে নির্দিষ্ট করা হয়েছে। বিট 31 কোডেক প্রকারটি সমর্থিত না হলে এই মানটি 0 হবে। ইউনিট: এমএস |
অডিও বাফার সময় সেট করুন
সাব ওসিএফ: 0x02
ব্লুটুথ কন্ট্রোলারে অডিও বাফার সময় সেট করতে এই কমান্ডটি ব্যবহার করুন।
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Audio_Codec_Buffer_Time | 2 অক্টেট | বর্তমান ব্যবহৃত কোডেকের জন্য অডিও বাফার সময় অনুরোধ করা হয়েছে। ইউনিট: এমএস |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Dynamic_Audio_Buffer_opcode | 1 অক্টেট | 0x02 - অডিও বাফার সময় সেট করুন |
Audio_Codec_Buffer_Time | 2 অক্টেট | ব্লুটুথ কন্ট্রোলারে বর্তমান অডিও বাফার সময়। ইউনিট: এমএস |
এইচসিআই ইভেন্ট (বিক্রেতা-নির্দিষ্ট)
কিছু ক্ষেত্রে বিক্রেতা-নির্দিষ্ট এইচসিআই ইভেন্টগুলির প্রয়োজন। বিটি কোর 5.2 স্পেসিফিকেশনের 1897 পৃষ্ঠায় চিত্র 5.4 দেখুন। ইভেন্ট প্যারামিটার 0 এ সর্বদা প্রথম সাবভেন্ট কোড থাকবে, যার ভিত্তিতে এইচসিআই ইভেন্টের বাকি অংশটি ডিকোড করা হয়েছে।
ইভেন্ট প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
HCI_vendor_specific_event_code | 1 অক্টেট | 0xFF |
sub_event_code | 1 অক্টেট | একটি সাবভেন্ট কোড আকারে 1 অক্টেট হবে, এইচসিআই ইভেন্ট প্যাকেটে অবিলম্বে প্যারামিটারের দৈর্ঘ্য অনুসরণ করে বাইটটি। |
স্টোরেজ থ্রেশহোল্ড লঙ্ঘন সাবভেন্ট
এই ইভেন্টটি ইঙ্গিত দেয় যে স্টোরেজ থ্রেশহোল্ডটি লঙ্ঘন করা হয়েছে।
সাবভেন্ট কোড = 0x54
সাবভেন্ট প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
কোনোটিই নয় |
লে মাল্টি-অ্যাডভার্টাইজিং রাষ্ট্র পরিবর্তন সাবভেন্ট
এই ইভেন্টটি ইঙ্গিত দেয় যে একটি বিজ্ঞাপনের উদাহরণ তার অবস্থা পরিবর্তন করেছে। এই মুহুর্তে, এই ইভেন্টটি কেবল সংযোগের ফলে কোন বিজ্ঞাপনের উদাহরণটি বন্ধ করা হয়েছিল তা নির্দেশ করতে ব্যবহৃত হয়।
সাবভেন্ট কোড = 0x55
সাবভেন্ট প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Advertising_instance | 1 অক্টেট | নির্দিষ্ট বিজ্ঞাপনের উদাহরণ চিহ্নিত করে বৈধ মানগুলি max_advt_instances -1 এর মাধ্যমে 0 হয় |
State_Change_Reason | 1 অক্টেট | 0x00: সংযোগ প্রাপ্ত |
Connection_handle | 2 অক্টেট | 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] : 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 এর ডিবাগ ডেটা |
ব্লুটুথ মানের রিপোর্ট সাবভেন্ট
এই ইভেন্টটি নিম্নলিখিতগুলির মধ্যে একটিকে নির্দেশ করে: একটি ব্লুটুথ মানের ইভেন্ট ঘটেছে, নিয়ামক এলএমপি/এলএল বার্তা ট্রেস এবং ব্লুটুথ মাল্টি-লিংক/কোয়েক্স শিডিয়ুলিং ট্রেস, বা কন্ট্রোলার ডাম্পড ডিবাগ তথ্য ডেটা আপলোড করেছে।
সাবভেন্ট কোড = 0x58 [কোয়ালিটি_আরপোর্ট_আইডি = 0x01 ~ 0x04, লিঙ্ক মানের সম্পর্কিত ইভেন্ট]
সাবভেন্ট প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Quality_Report_Id | 1 অক্টেট | 0x01: মনিটরিং মোডে মানের প্রতিবেদন। 0x02: এলএসটিওর কাছে আসা। 0x03: A2DP অডিও চপ্পি। 0x04: (ঙ) এসসিও ভয়েস চপ্পি। 0x05 ~ 0x06: সংরক্ষিত। 0x07: লে অডিও চপ্পি। 0x08: সংযোগ ব্যর্থ। 0x09 ~ 0xff: সংরক্ষিত। |
Packet_Types | 1 অক্টেট | 0x01: আইডি 0x02: নাল 0x03: পোল 0x04: এফএইচএস 0x05: এইচভি 1 0x06: এইচভি 2 0x07: এইচভি 3 0x08: ডিভি 0x09: EV3 0x0a: EV4 0x0 বি: ইভি 5 0x0C: 2-EV3 0x0D: 2-EV5 0x0e: 3-EV3 0x0f: 3-EV5 0x11: ডিএইচ 1 0x12: ডিএম 3 0x13: ডিএইচ 3 0x14: ডিএম 5 0x15: ডিএইচ 5 0x16: AUX1 0x17: 2-ডিএইচ 1 0x18: 2-ডিএইচ 3 0x19: 2-ডিএইচ 5 0x1a: 3-ডিএইচ 1 0x1 বি: 3-ডিএইচ 3 0x1C: 3-DH5 0x1D ~ 0x50: সংরক্ষিত 0x51: আইএসও প্যাকেট 0x52 ~ 0xff: সংরক্ষিত |
Connection_Handle | 2 অক্টেট | এসিএল/(ই) এসসিও/আইএসও সংযোগ হ্যান্ডেল। |
Connection_Role | 1 অক্টেট | সংযোগের জন্য ভূমিকা পালন করছে। 0x00: কেন্দ্রীয় 0x01: পেরিফেরাল 0x02 ~ 0xff: সংরক্ষিত। |
TX_Power_Level | 1 অক্টেট | নির্দিষ্ট সংযোগ_হ্যান্ডেলের জন্য বর্তমান প্রেরণ শক্তি স্তর। এই মানটি HCI_READ_TRANSMIT_POWRE_LEVEL এইচসিআই কমান্ডে কন্ট্রোলারের প্রতিক্রিয়া হিসাবে একই হবে। |
RSSI | 1 অক্টেট | [ডিবিএম] নির্দিষ্ট সংযোগ_হ্যান্ডেলের জন্য সিগন্যাল শক্তি ইঙ্গিত (আরএসএসআই) মান পেয়েছে। |
SNR | 1 অক্টেট | [ডিবিতে] নির্দিষ্ট সংযোগ_হ্যান্ডেলের জন্য সিগন্যাল-টু-শয়েজ অনুপাত (এসএনআর) মান। |
Unused_AFH_Channel_Count | 1 অক্টেট | AFH_CHANNEL_MAP এ অব্যবহৃত চ্যানেলের সংখ্যা নির্দেশ করে। 0x4f ~ 0xff: সংরক্ষিত। |
AFH_Select_Unideal_Channel_Count | 1 অক্টেট | হস্তক্ষেপ করা এবং খারাপ মানের রয়েছে এমন চ্যানেলগুলির সংখ্যা নির্দেশ করে তবে সেগুলি এখনও এএফএইচ -এর জন্য নির্বাচিত রয়েছে। ব্লুটুথ স্পেসিফিকেশন দ্বারা অনুমোদিত ন্যূনতম চ্যানেলগুলির সংখ্যা 20, সুতরাং সমস্ত 79 চ্যানেল হস্তক্ষেপ করা এবং খারাপ মানের থাকলেও কন্ট্রোলারকে এখনও এএফএইচ -এর জন্য কমপক্ষে 20 টি চ্যানেল চয়ন করতে হবে। |
LSTO | 2 অক্টেট | বর্তমান লিঙ্ক তদারকির সময়সীমা সেটিং। সময় = এন * 0.625 এমএস সময়সীমা: 0.625 এমএস থেকে 40.9 এস |
Connection_Piconet_Clock | 4 অক্টেট | নির্দিষ্ট সংযোগ_হ্যান্ডেলের জন্য পিকনেট ঘড়ি। এই মানটি 0x01 (পিকনেট ক্লক) এর "যা_ক্লক" প্যারামিটার সহ HCI_READ_CLOCK এইচসিআই কমান্ডে কন্ট্রোলারের প্রতিক্রিয়া হিসাবে একই হবে। ইউনিট: এন * 0.3125 এমএস (1 ব্লুটুথ ক্লক) |
Retransmission_Count | 4 অক্টেট | শেষ ইভেন্টের পর থেকে retransmission এর সংখ্যা। এই গণনাটি হোস্টকে রিপোর্ট করার পরে পুনরায় সেট করা হবে। |
No_RX_Count | 4 অক্টেট | শেষ ইভেন্টের পরে কোনও আরএক্স গণনা নেই। নির্ধারিত সময় স্লটে কোনও প্যাকেট না পাওয়া গেলে বা প্রাপ্ত প্যাকেটটি দূষিত হয় যখন গণনা বৃদ্ধি পায়। এই গণনাটি হোস্টকে রিপোর্ট করার পরে পুনরায় সেট করা হবে। |
NAK_Count | 4 অক্টেট | শেষ ইভেন্ট থেকে নাক (নেতিবাচক স্বীকৃতি) গণনা। এই গণনাটি হোস্টকে রিপোর্ট করার পরে পুনরায় সেট করা হবে। |
Last_TX_ACK_Timestamp | 4 অক্টেট | শেষ টিএক্স এসির টাইমস্ট্যাম্প। এটি পিকনেট সেন্ট্রাল (সিএলকে) এর ব্লুটুথ ঘড়ির উপর ভিত্তি করে। ইউনিট: এন * 0.3125 এমএস (1 ব্লুটুথ ক্লক) |
Flow_Off_Count | 4 অক্টেট | শেষ ইভেন্টের পর থেকে নিয়ামকটি কতবার ফ্লো-অফ (স্টপ) পান। এই গণনাটি হোস্টকে রিপোর্ট করার পরে পুনরায় সেট করা হবে। |
Last_Flow_On_Timestamp | 4 অক্টেট | লাস্ট ফ্লো-অন (জিও) এর টাইমস্ট্যাম্প। এটি পিকনেট সেন্ট্রাল (সিএলকে) এর ব্লুটুথ ঘড়ির উপর ভিত্তি করে। ইউনিট: এন * 0.3125 এমএস (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 অক্টেট | লিঙ্ক স্তর যে প্যাকেটের সংখ্যা একটি সিআইএস ইভেন্টের শেষ সাবভেন্টে একটি সিআইএস ডেটা পিডিইউ প্রেরণ করে। এই গণনাটি হোস্টকে রিপোর্ট করার পরে পুনরায় সেট করা হয়। লিঙ্কটির জন্য কোনও বৈধ মান না থাকলে মানটি শূন্য। |
CRC_Error_Packets | 4 অক্টেট | শেষ ইভেন্ট থেকে সিআরসি ত্রুটি সহ প্রাপ্ত প্যাকেজগুলির সংখ্যা। এই গণনাটি হোস্টকে রিপোর্ট করার পরে পুনরায় সেট করা হয়। |
RX_Duplicate_Packets | 4 অক্টেট | শেষ ইভেন্ট থেকে প্রাপ্ত সদৃশ (retransmission) প্যাকেজগুলির সংখ্যা। এই গণনাটি হোস্টকে রিপোর্ট করার পরে পুনরায় সেট করা হয়। |
RX_Unreceived_Packets | 4 অক্টেট | অমান্যযুক্ত প্যাকেটের সংখ্যা এলই রিড আইএসও লিঙ্ক কোয়ালিটি কমান্ডের প্যারামিটারের সমান (ব্লুটুথ কোর স্পেসিফিকেশন সংস্করণ 5.4 দেখুন)। সম্পর্কিত স্ট্রিমগুলি সিআইএস এবং বিআইএস। যখন এই মানটি বাড়ানো হয়, লিঙ্ক স্তরটি তার ফ্লাশ পয়েন্ট (একটি সিআইএসে) দ্বারা বা ইভেন্টের শেষে এটি সম্পর্কিত (একটি বিআইএস -এ; ব্লুটুথ কোর স্পেসিফিকেশন সংস্করণ 5.4 খণ্ড 6 পার্ট বি, বিভাগ 4.4.6.6 দেখুন) দ্বারা নির্দিষ্ট পেডলোড গ্রহণ করে না। |
Coex_Info_Mask | 2 অক্টেট | বিট 0 - কোএক্সিনভলভমেন্ট: এই প্রতিবেদনটি উত্পন্ন হওয়ার পরে কোএক্স ক্রিয়াকলাপগুলি জড়িত বলে সন্দেহ করা হয় (উদাহরণস্বরূপ, এ 2 ডিপি চপস এবং এলএসটিওর কাছে আসা)। বিট 1 - ডাব্লুএল 2 জি রেডিও অ্যাক্টিভ: ডাব্লুএলএএন 2 জি রেডিওটি সক্রিয় রয়েছে তা নির্দেশ করতে সেট করুন। বিট 2 - ডাব্লুএল 2 জি সংযুক্ত: ডাব্লুএলএএন 2 জি রেডিও সক্রিয় এবং সংযুক্ত রয়েছে তা নির্দেশ করতে সেট করুন। বিট 3 - ডাব্লুএল 5 জি/6 জি রেডিও অ্যাক্টিভ: ডাব্লুএলএএন 5 জি/6 জি রেডিওটি সক্রিয় করার জন্য সেট করুন। বিট 4-15 - সংরক্ষিত |
বিক্রেতা নির্দিষ্ট প্যারামিটার | (প্যারামিটার মোট দৈর্ঘ্য - টিবিডি) * অক্টেটস | নিয়ামক বিক্রেতার জন্য আরও বিক্রেতার নির্দিষ্ট পরামিতিগুলি পাওয়ার জন্য। |
সাবভেন্ট কোড = 0x58 [কোয়ালিটি_আরপোর্ট_আইডি = 0x05, রুট প্রদাহ ইভেন্ট]
এই ইভেন্টটি ইঙ্গিত দেয় যে ব্লুটুথ এইচএল বা নিয়ামক একটি মারাত্মক ত্রুটির মুখোমুখি হয়েছিল এবং এই পরিস্থিতিটি রেকর্ড করতে এবং পুনরায় চালু করতে ব্লুটুথ স্ট্যাকের প্রয়োজন হয়। কন্ট্রোলারকে অবশ্যই যে কোনও ক্ষেত্রে ডিবাগ তথ্য ইভেন্টগুলির প্রথম খণ্ডটি প্রেরণের আগে ব্লুটুথ স্ট্যাকের জন্য একটি ROOT_INFLAMMATION_EVENT প্রেরণ করতে হবে।
ত্রুটি_কোড প্যারামিটারে এইচএল/কন্ট্রোলার থেকে রিপোর্ট করা একটি ত্রুটি কোড রয়েছে, 0 যদি এটি চিপসেট বিক্রেতার নির্দিষ্ট ত্রুটি হয়। বিক্রেতা_স্পেসিফিক_আরআর_কোডে এইচএল/কন্ট্রোলার থেকে একটি চিপসেট বিক্রেতার নির্দিষ্ট ত্রুটি কোড রয়েছে। প্যারামিটার ত্রুটি_কোড 0 না থাকলে এটি 0 হিসাবে সেট করা উচিত The প্যারামিটারগুলি ত্রুটি_কোড এবং বিক্রেতা_স্পেসিফিক_আরআর_কোড উভয়ই 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 [কোয়ালিটি_আরপোর্ট_আইডি = 0x11 ~ 0x13, লগ ডাম্প সম্পর্কিত ইভেন্ট]
সাবভেন্ট প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Quality_Report_Id | 1 অক্টেট | 0x00 ~ 0x10: সংরক্ষিত। 0x11: এলএমপি/এলএল বার্তা ট্রেস। 0x12: ব্লুটুথ মাল্টি-লিংক/কোএক্স শিডিয়ুলিং ট্রেস। 0x13: কন্ট্রোলার ডিবাগ তথ্য ডেটা ডাম্প। 0x14 ~ 0xff: সংরক্ষিত। |
Connection_Handle | 2 অক্টেট | সংযোগ হ্যান্ডেল। |
বিক্রেতা নির্দিষ্ট প্যারামিটার | (প্যারামিটার মোট দৈর্ঘ্য - 4) * অক্টেটস | এলএমপি বার্তা ট্রেস, ব্লুটুথ মাল্টি-লিংক/কোএক্স শিডিয়ুলিং ট্রেস এবং কন্ট্রোলার ডিবাগ তথ্য ডেটা ডাম্পের বিক্রেতার নির্দিষ্ট ফর্ম্যাট। |
মাল্টি-অ্যাডভার্টাইজার সমর্থন
মাল্টি-অ্যাডভার্টাইজার সমর্থনের উদ্দেশ্যগুলি নিম্নলিখিত:
- একাধিক বিজ্ঞাপন সমর্থন করার ক্ষমতা (
max_advt_instances
) - বিভিন্ন পরিসরের জন্য অনুমতি দেওয়ার জন্য বিভিন্ন প্রেরণ ক্ষমতা
- বিভিন্ন বিজ্ঞাপন সামগ্রী
- প্রতিটি বিজ্ঞাপনদাতার জন্য একটি পৃথক প্রতিক্রিয়া
- প্রতিটি বিজ্ঞাপনদাতার জন্য গোপনীয়তা (অ-ট্র্যাকযোগ্য)
- সংযোগযোগ্য
এই স্পেসিফিকেশনটি বিদ্যমান মানগুলির কাছাকাছি রাখতে, নিম্নলিখিত বিক্রেতা-নির্দিষ্ট কমান্ডগুলি সরবরাহ করা হয়। এগুলি ব্লুটুথ কোর 4.1 স্পেসিফিকেশন থেকে প্রাপ্ত।
Le_multi_advt_command
ওসিএফ: 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
বেস রেফারেন্স: ব্লুটুথ কোর 4.1 স্পেসিফিকেশন, পৃষ্ঠা 964 (লে সেট বিজ্ঞাপন প্যারামিটার কমান্ড)
সাব ওসিএফ: 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 অক্টেট | ট্রান্সমিট_পাওয়ার ইউনিট - ডিবিএম (স্বাক্ষরিত পূর্ণসংখ্যা) ব্যাপ্তি (-70 থেকে +20) |
Own_Address
প্যারামিটারটি এই বহু-বিজ্ঞাপনের উদাহরণটি স্থাপনের সময় একটি হোস্ট-কনফিগার করা ঠিকানা হতে পারে। এটি প্রথম বেকন প্রেরণের সময় একটি সমাধানযোগ্য ব্যক্তিগত ঠিকানা থাকার ক্ষমতা সরবরাহ করে। একটি উদাহরণে বিজ্ঞাপন সংযোগ নির্বিশেষে অব্যাহত থাকবে। হোস্ট বিটি স্ট্যাক একটি উদাহরণ, পোস্ট সংযোগে বিজ্ঞাপন শুরু করার জন্য একটি কমান্ড জারি করতে পারে।
উপরের কমান্ড অনুসারে ব্লুটুথ কোর 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
বেস রেফারেন্স: ব্লুটুথ কোর 4.1 স্পেসিফিকেশন, পৃষ্ঠা 969 (লে সেট বিজ্ঞাপন ডেটা কমান্ড)
সাব ওসিএফ: 0x02
সাবকম্যান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Advertising_Data_Length | প্রতি বিশেষ | প্রতি বিশেষ |
Advertising_Data | প্রতি বিশেষ | প্রতি বিশেষ |
Advertising_Instance | 1 অক্টেট | একটি উদাহরণে উপরের পরামিতিগুলির প্রয়োগযোগ্যতা নির্দিষ্ট করে |
উপরের কমান্ড অনুসারে ব্লুটুথ কোর 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
বেস রেফারেন্স: ব্লুটুথ কোর 4.1 স্পেসিফিকেশন, পৃষ্ঠা 970 (এলই সেট স্ক্যান প্রতিক্রিয়া ডেটা কমান্ড)
সাব ওসিএফ: 0x03
সাবকম্যান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Scan_Response_Data_Length | প্রতি বিশেষ | প্রতি বিশেষ |
Scan_Response_Data | প্রতি বিশেষ | প্রতি বিশেষ |
Advertising_Instance | 1 অক্টেট | একটি উদাহরণে উপরের পরামিতিগুলির প্রয়োগযোগ্যতা নির্দিষ্ট করে |
উপরের কমান্ড অনুসারে ব্লুটুথ কোর 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
বেস রেফারেন্স: ব্লুটুথ কোর 4.1 স্পেসিফিকেশন, পৃষ্ঠা 963 (এলই এলোমেলো ঠিকানা কমান্ড সেট করুন)
সাব ওসিএফ: 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
বেস রেফারেন্স: ব্লুটুথ কোর 4.1 স্পেসিফিকেশন, পৃষ্ঠা 971 (লে সেট বিজ্ঞাপনটি সেই মূল স্পেসিফিকেশনে কমান্ড সক্ষম করুন)
ওসিএফ: 0x05
সাবকম্যান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Advertising_Enable | 1 অক্টেট | 1 এর মান মানে সক্ষম। অন্য কোনও মান মানে অক্ষম। |
Advertising_Instance | 1 অক্টেট | উপরোক্ত পরামিতিগুলির প্রয়োগযোগ্যতা একটি উদাহরণে নির্দিষ্ট করে। উদাহরণ 0 এর অর্থ একটি স্ট্যান্ডার্ড এইচসিআই উদাহরণ। |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Multi_advt_opcode | 1 অক্টেট | 0x05 [ Set_Advt_Enable_Multi_Sub_Cmd] |
বেসরকারী ঠিকানার অফলোড রেজোলিউশন
এই বৈশিষ্ট্যটি নিয়ামক ফার্মওয়্যার বা হার্ডওয়্যারে একটি ব্যক্তিগত ঠিকানা সমাধান করে, যা নিম্নলিখিত সুবিধাগুলি সরবরাহ করে:
- একটি ব্যক্তিগত ঠিকানা সমাধানে হোস্টের সাথে জড়িত বিলম্ব
- হোস্ট জাগ্রত করা থেকে বিরত হয়ে শক্তি সঞ্চয় করা
Le_set_rpa_timeout
ওসিএফ: 0x15 সি
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
LE_local_IRK | 16 অক্টেট | স্থানীয় ডিভাইস আইআরকে এলোমেলো সমাধানযোগ্য ঠিকানা (ইএস) উত্পন্ন করতে ব্যবহৃত হয়েছিল। |
tRPA_min | 2 অক্টেট | সেকেন্ডে সর্বনিম্ন আরপিএ প্রজন্মের সময়সীমা। নিয়ামককে অবশ্যই এই সময়সীমা বা তার পরে বা তার পরে কোনও বিজ্ঞাপন/স্ক্যানিং/সংযোগ ইভেন্টের জন্য নতুন সমাধানযোগ্য ঠিকানা তৈরি করতে হবে। বৈধ পরিসীমা: 300-1800 |
tRPA_max | 2 অক্টেট | সেকেন্ডে সর্বাধিক আরপিএ প্রজন্মের সময়সীমা। নিয়ামককে এই সময়সীমা বা তার আগে বা তার আগে কোনও বিজ্ঞাপন/স্ক্যানিং/সংযোগ ইভেন্টের জন্য নতুন সমাধানযোগ্য ঠিকানা তৈরি করতে হবে। বৈধ পরিসীমা: tRPA_min -1800 |
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | আদেশের অবস্থা। প্রস্তাবিত এইচসিআই স্থিতি মান: 0x00 সাফল্য 0x01 অজানা কমান্ড (যদি সমর্থিত না হয়) 0x12 অবৈধ কমান্ড পরামিতি (যদি কোনও পরামিতি প্রদত্ত পরিসরের বাইরে থাকে) |
Le_rpa_offload_command
ওসিএফ: 0x155
কমান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
RPA_offload_opcode | 1 অক্টেট | 0x1 - গ্রাহক নির্দিষ্ট বৈশিষ্ট্য সক্ষম করুন 0x2 - তালিকায় আইআরকে যুক্ত করুন 0x3 - তালিকা থেকে আইআরকে সরান 0x4 - আইআরকে তালিকা পরিষ্কার করুন 0x5 - আইআরকে তালিকা এন্ট্রি পড়ুন |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Event_RPA_offload_opcode | 1 অক্টেট | 0x1 - গ্রাহক নির্দিষ্ট বৈশিষ্ট্য সক্ষম করুন 0x2 - তালিকায় আইআরকে যুক্ত করুন 0x3 - তালিকা থেকে আইআরকে সরান 0x4 - আইআরকে তালিকা পরিষ্কার করুন 0x5 - আইআরকে তালিকা এন্ট্রি পড়ুন |
Le_rpa_offload: সক্ষম_কাস্ট_স্পেসিফিক_সুব_কম্যান্ড সক্ষম করুন
সাব ওসিএফ: 0x01
সাবকম্যান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
enable_customer_specific_feature_set | 1 অক্টেট | 0x01 - অফলোড আরপিএ বৈশিষ্ট্য সক্ষম করুন 0x00 - অফলোড আরপিএ বৈশিষ্ট্যটি অক্ষম করুন |
আরপিএ অফলোড চিপ সক্ষমতার উপর ভিত্তি করে হোস্ট দ্বারা সক্ষম করা প্রয়োজন। 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 অক্টেট | লে ইরক (1 ম বাইট এলএসবি) |
Address_Type | 1 অক্টেট | 0: সর্বজনীন ঠিকানা 1: এলোমেলো ঠিকানা |
LE_Device_Address | 6 অক্টেট | আইআরকে সম্পর্কিত পাবলিক বা এলোমেলো ঠিকানা (1 ম বাইট এলএসবি) |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Event_cust_specific_feature_opcode | 1 অক্টেট | 0x02 [তালিকায় ইরক যুক্ত করুন] |
LE_IrkList_AvailableSpaces | 1 অক্টেট | বর্তমান অপারেশন পরে উপলভ্য আইআরএল তালিকা এন্ট্রি |
Le_rpa_offload: সরান_আরকে_টো_লিস্ট_সুব_কম্যান্ড
সাব ওসিএফ: 0x03
সাবকম্যান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Address_Type | 1 অক্টেট | 0: সর্বজনীন ঠিকানা 1: এলোমেলো ঠিকানা |
LE_Device_Address | 6 অক্টেট | পাবলিক বা এলোমেলো ঠিকানা যা আইআরকে সহযোগিতা করে |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Event_cust_specific_feature_opcode | 1 অক্টেট | 0x03 [তালিকা থেকে আইআরকে সরান] |
LE_IrkList_AvailableSpaces | 1 অক্টেট | বর্তমান অপারেশন পরে উপলভ্য আইআরএল তালিকা এন্ট্রি |
Le_rpa_offload: Clear_irk_list_sub_command
সাব ওসিএফ: 0x04
সাবকম্যান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
কোনোটিই নয় |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Event_cust_specific_feature_opcode | 1 অক্টেট | 0x04 [আইআরকে তালিকা পরিষ্কার করুন] |
LE_IrkList_AvailableSpaces | 1 অক্টেট | বর্তমান অপারেশনের পরে উপলভ্য আইআরএল তালিকার এন্ট্রি [ max_irk_list_sz] |
LE_RPA_OFFLALD: READ_IRK_LIST_SUB_COMMAND
সাব ওসিএফ: 0x05
সাবকম্যান্ড প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
LE_read_IRK_list_entry-index | 1 অক্টেট | আইআরকে তালিকার সূচক [0, max_irk_list_sz-1] |
এই কমান্ডের জন্য একটি কমান্ড সম্পূর্ণ ইভেন্ট তৈরি করা হবে।
রিটার্ন প্যারামিটার | আকার | উদ্দেশ্য |
---|---|---|
Status | 1 অক্টেট | কমান্ড সম্পূর্ণ স্থিতি |
Event_cust_specific_feature_opcode | 1 অক্টেট | 0x05 [আইআরকে তালিকা এন্ট্রি পড়ুন] |
LE_Read_IRK_List_entry | 1 অক্টেট | আইআরকে -র সূচক যা হোস্ট ফিরে পড়তে চায় (সর্বাধিক আইআরকে তালিকার আকার 32) |
LE_IRK | 16 অক্টেট | আইআরকে মান |
Address_Type | 1 অক্টেট | 0: সর্বজনীন ঠিকানা 1: এলোমেলো ঠিকানা |
LE_Device_Address | 6 অক্টেট | আইআরকে সম্পর্কিত পাবলিক বা এলোমেলো ঠিকানা |
LE_Resolved_Private_Address | 6 অক্টেট | এই আইআরকে বর্তমান সমাধান করা সমাধানযোগ্য ব্যক্তিগত ঠিকানা |