اندروید ۱۶ ماژول مسافتیابی (Range) را معرفی کرد. این پروتکل و مشخصات بار مفید، توالی پیام و بار مفید ارتباط خارج از باند (OOB) را که برای تبادل پیکربندیهای مسافتیابی و شروع و توقف مسافتیابی بین آغازگر و دستگاه پاسخدهنده که در مسافتیابی شرکت میکنند، استفاده میشود، تعریف میکند. اندروید ۱۶ QPR3 نسخه ۲ این مشخصات را معرفی میکند.
هدف اصلی این صفحه این است که ارائه دهندگان دستگاههای غیر اندرویدی بتوانند این مشخصات را پیادهسازی کنند تا دستگاههای آنها برای کار با دستگاههای اندرویدی سازگار باشد.
پیادهسازی این مشخصات در زبان توصیف بسته (PDL) گوگل در GitHub موجود است. از این پیادهسازی، کامپایلر PDL میتواند کد سریالسازی و غیر سریالسازی را برای پیامهای تعریفشده در این مشخصات تولید کند. این کامپایلر از زبانهای هدف متنوعی از جمله C++، Rust و Java پشتیبانی میکند.
چه چیزهایی در نسخه ۲ جدید است؟
نسخه ۲ مشخصات OOB تغییرات زیر را معرفی میکند:
- انتقال فناوری : امکان جابجایی پویا بین فناوریهای مسافتیابی را در طول یک جلسه فعال و بدون ایجاد وقفه در جریان دادهها فراهم میکند.
- قابلیت ردیابی پاسخ
- شامل یک فیلد جدید
Supported technology transitioningاست که پشتیبانی از انتقال فناوریهای «قبل از شکست» را نشان میدهد. - شامل یک فیلد
Device typeجدید است که آغازگر میتواند از آن برای بهینهسازی مصرف برق بین دستگاهها استفاده کند.
- شامل یک فیلد جدید
اندیان
مگر اینکه خلاف آن ذکر شده باشد، تمام فیلدهای عددی چند بایتی در پیامها به ترتیب little-endian هستند.
پیامها و توالی پیامها
این بخش پیامها و ترتیب تبادل پیام را شرح میدهد.
جدول زیر تمام پیامهای موجود در تبادل OOB را نشان میدهد:
| پیام | شناسه پیام |
|---|---|
Ranging Capability Request | 0x0 |
Ranging Capability Response | 0x1 |
Ranging Configuration | 0x2 |
Ranging Configuration Response (اختیاری) | 0x3 |
Stop Ranging | 0x6 |
Stop Ranging Response (اختیاری) | 0x7 |
همانطور که در شکلهای ۱ و ۲ نشان داده شده است، نحوهی شروع تبادل پیام به کانال ارتباطی بستگی دارد.
For connection-based communication channels such as BLE GATT, the message exchange starts with the initiator device sending Ranging Capability Request to the responder device. The responder device replies by sending Ranging Capability Response , as shown in Figure 1:

شکل ۱. تبادل پیام OOB با استفاده از یک کانال ارتباطی مبتنی بر اتصال.
برای کانالهای ارتباطی مبتنی بر تبلیغات، دستگاه پاسخدهنده با تبلیغ Ranging Capability شروع به کار میکند. در این حالت، Ranging Capability Request از دستگاه آغازگر ارسال نمیشود. در عوض، پس از شناسایی تبلیغ، هنگامی که دستگاه آغازگر (اسکنر اولیه) آماده است، با تبلیغ Ranging Configuration به عنوان اولین پیام خود پاسخ میدهد، همانطور که در شکل 2 نشان داده شده است:

شکل ۲. تبادل پیام OOB با استفاده از یک ارتباط مبتنی بر تبلیغات.
بقیهی تبادل پیام در هر دو مورد یکسان است. دستگاه پاسخدهنده بلافاصله پس از دریافت پیام Ranging Configuration شروع به مسافتیابی میکند. دستگاه پاسخدهنده پس از دریافت یا تشخیص پیام Stop Ranging مسافتیابی را متوقف میکند.
در جریان مبتنی بر اتصال، دستگاه پاسخدهنده فقط قابلیتهای فناوریهای مسافتیابی درخواستشده در پیام Ranging Capability Request را جمعآوری میکند، در حالی که در جریان اعلان، دستگاه پاسخدهنده باید تمام قابلیتهای خود را فهرست کند زیرا هیچ پیام درخواست قابلیت قبلی وجود ندارد.
دستگاه آغازگر فرض میکند که فقط یک پاسخ به هر پیام درخواستی که ارسال میکند، دریافت خواهد کرد. دستگاه پاسخدهنده نباید چنین فرضی داشته باشد تا بتواند به هر درخواستی با هر ترتیبی پاسخ دهد. این امر تأیید میکند که دستگاه پاسخدهنده میتواند به چندین پیام Ranging Capability Request متوالی یا هر پیام خارج از ترتیب دیگری از دستگاه آغازگر پاسخ دهد.
انتقال فناوری
مشخصات OOB نسخه ۲ پشتیبانی صریحی از انتقال فناوری ارائه میدهد. این به دستگاهها اجازه میدهد تا در طول یک جلسه، به صورت پویا بین فناوریهای مختلف در محدودههای مختلف انتقال یابند. برای تسهیل این امر، آغازگر میتواند:
- برای شروع فناوریهای جدید، چندین پیام
Ranging Configurationارسال کنید. - برای متوقف کردن فناوریهای فعال، چندین پیام
Stop Rangingارسال کنید.
ترتیب این پیامها بسته به طرح انتقال پشتیبانی شده توسط پاسخدهنده متفاوت است:
- شکستن قبل از ایجاد: آغازگر تنها با متوقف کردن اولی با پیام
Stop Rangingقبل از شروع دومی با پیامRanging Configuration، میتواند به یک فناوری جدید منتقل شود. - ایجاد قبل از قطع: آغازگر میتواند با استفاده از پیام
Ranging Configurationفناوری جدیدی را آغاز کند و سپس فناوریهای موجود را با پیامStop Rangingمتوقف کند.
پاسخگو باید مطابق با ارزش حوزه supported technology transitioning در Capability Response خود، پشتیبانی از یکی از این طرحهای انتقال را پیادهسازی کند.
شناسههای فناوری مسافتیابی
شناسههای فناوریهای مختلف در جدول زیر فهرست شدهاند:
| فناوری مسافتیابی | شناسه |
|---|---|
| اینترنت پرسرعت (UWB) | 0x0 |
| سی اس | 0x1 |
| وایفای NAN RTT | 0x2 |
| RSSI | 0x3 |
| آر اف یو | 0x4 - 0xFF |
این شناسهها در جداول زیر که در آنها شناسه فناوری مسافتیابی مورد نیاز است، استفاده میشوند. برای فیلدهای حاوی فیلد بیتی فناوری مسافتیابی، بیتی مربوط به اندیس شناسه فناوری، زمانی که آن فناوری در فیلد بیتی گنجانده شده باشد، تنظیم میشود.
برای مثال، RSSI دارای مقدار شناسه ۳ است، اما اگر RSSI در فناوری فاصلهیابی میدان بیتی گنجانده شود، بیتی که موقعیت شناسه (۳) را دارد باید روشن شود (بیت اول در موقعیت ۰ باشد)، که باعث میشود مقدار حاصل از میدان بیتی ۰x۸ باشد. اگر هر دو UWB و RSSI گنجانده شوند، مقدار میدان بیتی ۰x۰A خواهد بود (هر دو بیت ۰ و ۳ روشن هستند).
قالب پیام
هر پیام از یک هدر (header) و یک فایل داده (payload) تشکیل شده است.

شکل ۳. قالب پیام.
سربرگ
اندازه: ۲ بایت
Description: Common across all messages, the header is the first part that goes into a message. The header contains a version and the ID of the message type. The version field specifies the version of this specification that the contents of the message conform to. The current version of this specification is 2 . For more information on how versioning is used between devices on different versions, see Versioning . The header remains backward compatible across different versions, which means the use case can always parse it to determine the version and the ID of the message.
سرفصل در جدول زیر خلاصه شده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | نسخه |
|
| ۱ | واحد8 | شناسه پیام |
|
بار مفید
اندازه: متغیر (بستگی به نوع پیام دارد)
شرح: بار مفید آخرین بخش پیام، پس از سرآیند آن است. بار مفید به نوع پیام بستگی دارد. قالب بار مفید هر نوع پیام در بخشهای بعدی تعریف شده است.
قابلیت مسافتیابی درخواست بار مفید پیام
اندازه (اندازه هدر شامل نمیشود): ۲ بایت
شرح: توسط دستگاه آغازگر برای شروع تبادل پیام ارسال میشود. این پیام زمانی اختیاری است که کانال ارتباطی مبتنی بر تبلیغات باشد، در این صورت دستگاه پاسخدهنده موظف است به عنوان اولین قدم، یک پیام Ranging Capability اعلام کند. دستگاه آغازگر (اسکنر اولیه) این پیام را میخواند و مستقیماً با یک پیام Ranging Capability پاسخ میدهد و از نیاز به این پیام اجتناب میکند.
خلاصهی پیام Ranging Capability Request ) در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8*2 | فناوریهای مسافتیابی درخواستی بیتفیلد |
|
قابلیت پیمایش، بار مفید پیام پاسخ
اندازه (اندازه هدر شامل نمیشود): متغیر است (۲ بایت بخش مشترک به علاوه اندازه هر بایت فناوری محدودهبندی شامل شده)
Description: Sent by the responder as a response to a Ranging Capability Request message. This message payload consists of the common part, and ranging technology-specific parts (BLE CS, Wi-Fi NAN RTT, BLE RSSI), as shown in the following tables. Each ranging technology-specific part must be added only if that ranging technology is supported by the responder device and is requested in the Ranging Capability Request message. In the case of an advertisement communication channel, all supported ranging technologies must be included.
محتوای پیام رایج Ranging Capability Response در جدول زیر خلاصه شده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8*2 | فناوریهای مسافتیابی پشتیبانیشده در bitfield. نشاندهندهی مجموعهای از قابلیتهای فناوریهای مسافتیابی است که در ادامهی محمولهی داده دنبال میشوند. |
|
| ۲ | آرایه بایتی | بایتهای قابلیت فناوری مسافتیابی. | بلوکهای تکراری از سازهها که برای هر فناوری تعریف شدهاند. |
| متفاوت است | uint8 | نشان دهنده پشتیبانی از انتقال فناوری است. |
|
| متفاوت است | واحد۱۶ | نوع دستگاه پاسخ دهنده را نشان میدهد. |
|
خلاصه پیام Ranging Capability Response UWB در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | شناسه فناوری مسافتیابی | 0x0 - UWB |
| ۱ | uint8 | اندازه | اندازه بایتهای قابلیتهای UWB (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت. |
| ۲ | uint8*2 | آدرس UWB | آدرس UWB دستگاه ۲ بایتی. |
| ۴ | uint8*4 | کانالهای پشتیبانی شده توسط بیتفیلد | فیلد بیتی کانالهای پشتیبانیشده. بیت تنظیمشده روی ۰ نشان میدهد که پشتیبانی نمیشود، ۱ نشان میدهد که پشتیبانی میشود. بیت ۰ مربوط به کانال ۰ است.LSB == channel 0MSB == channel 31 |
| ۸ | uint8*4 | فیلد بیت شاخص مقدمه پشتیبانی شده | فیلد بیتی از اندیسهای مقدمه پشتیبانیشده. بیت تنظیمشده روی ۰ نشان میدهد که پشتیبانی نمیشود، ۱ نشان میدهد که پشتیبانی میشود. بیت ۰ مربوط به اندیس مقدمه ۱ است.LSB == preamble index 1MSB == preamble index 32 |
| ۱۲ | uint8*4 | شناسههای پیکربندی پشتیبانیشده bitfield | فیلد بیتی شناسههای پیکربندی UWB پشتیبانیشده. بیت تنظیمشده روی ۰ نشان میدهد که پشتیبانی نمیشود، ۱ نشان میدهد که پشتیبانی میشود.LSB == config Id 0MSB == config Id 31 |
| ۱۶ | uint8*2 | حداقل فاصلهی رنج پشتیبانیشده | سریعترین بازه مسافتیابی پشتیبانیشده را بر حسب میلیثانیه نشان میدهد. مقادیر مجاز (بر حسب میلیثانیه):
|
| ۱۸ | uint8 | حداقل مدت زمان اسلات پشتیبانی شده | کمترین مدت زمان اسلات پشتیبانی شده را بر حسب میلی ثانیه نشان میدهد. برای مثال، اگر دستگاه ۱ میلیثانیه را برگرداند، فرض بر این است که از مدت زمان اسلات ۲ میلیثانیه به بالا نیز پشتیبانی میکند. مقادیر مجاز (بر حسب میلیثانیه):
|
| ۱۹ | نقش دستگاه UWB پشتیبانی شده در بیتفیلد | فیلد بیتی نقشهای UWB پشتیبانیشده. برای مثال، اگر هر دو پشتیبانی شوند، مقدار فیلد نهایی 0x3 است.
|
خلاصه پیام Ranging Capability Response BLE CS در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | شناسه فناوری مسافتیابی | 0x1 - BLE CS |
| ۱ | uint8 | اندازه | اندازه بایتهای قابلیتهای BLE CS (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت. |
| ۲ | uint8 | نوع امنیتی پشتیبانی شده: بیتفیلد | فیلد بیتی انواع امنیتی پشتیبانی شده برای BLE CS.
|
| ۳ | uint8*6 | آدرس دستگاه | آدرس دستگاه مورد استفاده برای BLE CS؛ به ترتیب big-endian. |
خلاصه پیام Ranging Capability Response Wi-Fi NAN RTT در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | شناسه فناوری مسافتیابی | 0x2 - وایفای NAN RTT |
| ۱ | uint8 | اندازه | اندازه بایتهای قابلیتهای RSSI در BLE (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت. |
| ۲ | uint8 | ویژگیهای پشتیبانیشده توسط بیتفیلد | فیلد بیتی از ویژگیهای پشتیبانی شده.
|
| ۳ | uint8 | پشتیبانی از اندازهگیریهای دورهای |
|
| ۴ | uint8 | پهنای باند پشتیبانی شده | این اطلاعات به استخراج دقت مسافتیابی قابل دستیابی با استفاده از Wi-Fi NAN کمک میکند و میتواند به برنامهها در تعیین اینکه آیا از UWB، BLE CS، BLE RSSI یا Wi-Fi NAN برای مسافتیابی استفاده کنند، کمک کند.
|
| ۵ | uint8 | تعداد زنجیرههای دریافتی پشتیبانی شده | این اطلاعات به استخراج دقت مسافتیابی قابل دستیابی با استفاده از Wi-Fi NAN کمک میکند و میتواند به برنامهها در تعیین اینکه آیا از UWB، BLE CS، BLE RSSI یا Wi-Fi NAN برای مسافتیابی استفاده کنند، کمک کند.
|
خلاصه پیام Ranging Capability Response BLE RSSI در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | شناسه فناوری مسافتیابی | 0x3 - RSSI خام |
| ۱ | uint8 | اندازه | اندازه بایتهای قابلیتهای RSSI در BLE (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت |
| ۲ | uint8*6 | آدرس دستگاه | آدرس دستگاه مورد استفاده برای BLE RSSI؛ به ترتیب big-endian |
بار مفید پیام پیکربندی محدودهبندی
اندازه (اندازه هدر شامل نمیشود): متغیر است (۴ بایت بخش مشترک به علاوه اندازه هر بایت فناوری محدودهبندی شامل شده).
Description: This message is sent by the initiator and it contains the configurations that each ranging technology can start ranging with. The responder device must try to start ranging with each indicated ranging technology upon receiving this message. This message payload consists of the common part, and ranging technology-specific parts (UWB, BLE CS, Wi-Fi NAN RTT, BLE RSSI), as shown in the following tables.
محتوای پیام رایج Ranging Configuration در جدول زیر خلاصه شده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8*2 | پیکربندی فناوریهای مختلف، مجموعه بیتفیلد | حوزه بیتی فناوریهای مختلف که این پیام حاوی دادههای پیکربندی برای آنهاست و پارامترهای پیکربندی باید برای آنها تنظیم شوند.
|
| ۲ | uint8*2 | بیتفیلد | RFU. باید روی همان مقدار فیلد bitfield در مجموعه پیکربندی فناوریهای محدودهبندی تنظیم شود. |
| ۴ | آرایه بایتی | پیکربندی فناوریهای مختلف بایتها | بلوکهای تکراری از structها که برای هر فناوری تعریف شدهاند |
خلاصه پیام Ranging Configuration UWB در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | شناسه فناوری مسافتیابی | 0x0 - UWB |
| ۱ | uint8 | اندازه | اندازه پیکربندی UWB (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت |
| ۲ | uint8*2 | آدرس UWB | آدرس UWB دستگاه ۲ بایتی |
| ۴ | uint8*4 | شناسه جلسه | شناسه جلسه تولید شده. شناسه جلسه یک شناسه منحصر به فرد برای جلسه مسافتیابی بین تلفن و دستگاه جانبی است. |
| ۸ | uint8 | شناسه پیکربندی انتخاب شده | شماره شناسه پیکربندی انتخاب شده به صورت عدد صحیح. شناسه پیکربندی، پارامترهای زمانبندی و نوع امنیتی را که باید برای جلسه مسافتیابی UWB استفاده شود، مشخص میکند. |
| ۹ | uint8 | کانال انتخاب شده | کانال انتخاب شده برای جلسه فاصلهیابی UWB |
| ۱۰ | uint8 | فهرست مقدمه برگزیده | فهرست مقدماتی انتخاب شده برای جلسه مسافتیابی UWB |
| ۱۱ | uint8*2 | بازه انتخاب شده برای محدوده | نرخ بازه انتخاب شده برای اندازهگیری بر حسب میلیثانیه. مقادیر مجاز (بر حسب میلیثانیه):
|
| ۱۳ | uint8 | مدت زمان اسلات انتخاب شده | مدت زمان اسلات انتخاب شده بر حسب میلی ثانیه. مقادیر مجاز (بر حسب میلی ثانیه):
|
| ۱۴ | uint8 | طول کلید جلسه | طول کلید جلسه بر حسب بایت |
| ۱۵ | آرایه بایتی | کلید جلسه | کلید جلسه. اگر از S-STS استفاده شود، دو بایت اول شناسه فروشنده و شش بایت بعدی STATIC STS IV هستند. اگر از P-STS استفاده شود، این یک کلید جلسه ۱۶ بایتی یا ۳۲ بایتی است. نوع امنیت مورد استفاده توسط شناسه پیکربندی تعیین میشود. |
| متغیر است | uint8*2 | کد کشور | کد کشور ISO 3166-1 alpha-2، که با دو کاراکتر ASCII نمایش داده میشود |
| متغیر است | uint8 | نقش دستگاه انتخاب شده |
|
| متغیر است | uint8 | حالت دستگاه انتخاب شده |
|
خلاصه پیام Ranging Configuration BLE CS در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | شناسه فناوری مسافتیابی | 0x1 - BLE CS |
| ۱ | uint8 | اندازه | اندازه پیکربندی BLE CS (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت |
| ۲ | uint8 | نوع امنیتی انتخاب شده | نوع امنیتی انتخاب شده. مقادیر مجاز:
|
| ۳ | uint8*6 | آدرس دستگاه | آدرس دستگاه مورد استفاده برای BLE CS؛ به ترتیب big-endian |
خلاصه پیام Ranging Configuration Wi-Fi NAN RTT در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | شناسه فناوری مسافتیابی | 0x2 - وایفای NAN RTT |
| ۱ | uint8 | اندازه | اندازه پیکربندی Wi-Fi NAN RTT (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت |
| ۲ | uint8 | طول نام سرویس | طول فیلد نام سرویس بر حسب بایت. به بخش 1.3.3 از Wi-Fi Aware Specification نسخه 4.0 در جدول 1 مراجعه کنید. تعاریف. |
| ۳ | آرایه بایتی | نام سرویس | نام سرویس. به بخش ۱.۳.۳ از Wi-Fi Aware Specification نسخه ۴.۰ مراجعه کنید. جدول ۱. تعاریف. |
| متغیر است | uint8 | نقش دستگاه |
|
| متغیر است | uint8 | استفاده از محدودهبندی دورهای |
|
خلاصه پیام Ranging Configuration RSSI در BLE در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8 | شناسه فناوری مسافتیابی | 0x3 - RSSI خام |
| ۱ | uint8 | اندازه | اندازه پیکربندی BLE RSSI (شامل فیلدهای Technology ID و Size ) بر حسب بایت |
| ۲ | uint8*6 | آدرس دستگاه | آدرس دستگاه مورد استفاده برای BLE RSSI؛ به ترتیب big-endian |
بار مفید پیام پاسخ پیکربندی محدودهبندی
اندازه (اندازه هدر شامل نمیشود): ۲ بایت
شرح: این پیام توسط پاسخدهنده به عنوان پاسخی به پیام Ranging Configuration ارسال میشود. این پیام اختیاری است و فقط زمانی لازم است که کانال ارتباطی مورد استفاده برای هر درخواست، پاسخ صریحی را درخواست کند.
خلاصهی پیام Ranging Configuration Response در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8*2 | پیکربندی فناوریهای متغیر با موفقیت در بیتفیلد تنظیم شد | فیلد بیتی فناوریهای مسافتیابی که با موفقیت تنظیم شدهاند. این فیلد بیتی، بیت فناوری مسافتیابی را در صورت درخواست و تنظیم موفقیتآمیز فناوری، روی ۱ و در غیر این صورت روی ۰ تنظیم میکند.
|
توقف ارسال پیام مسافتیابی
اندازه (اندازه هدر شامل نمیشود): ۲ بایت
شرح: این پیام توسط دستگاه آغازگر ارسال میشود، زمانی که زمان توقف مسافتیابی با فناوری مسافتیابی مشخص شده فرا رسیده است.
خلاصهی پیام Stop Ranging در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8*2 | فناوریهای متنوع برای متوقف کردن بیتفیلد | فیلد بیتی فناوریهای مسافتیابی که باید مسافتیابی را متوقف کنند. بیت تنظیمشده روی ۱ نشان میدهد که فناوری مسافتیابی باید مسافتیابی را متوقف کند، و ۰ نشان میدهد که فناوری مسافتیابی یا از ابتدا مسافتیابی نکرده است، یا اگر از قبل مسافتیابی میکرده، باید به مسافتیابی ادامه دهد. برای برخی از فناوریهای مسافتیابی (مانند CS) این یک گزینهی بیاثر است زیرا مسافتیابی فقط در سمت آغازگر آغاز و متوقف میشود.
|
توقف ارسال پیام پاسخ محدودهبندی
اندازه (اندازه هدر شامل نمیشود): ۲ بایت
شرح: این پیام توسط پاسخدهنده به عنوان پاسخی به پیام « Stop Ranging ارسال میشود. این پیام اختیاری است و فقط زمانی لازم است که کانال ارتباطی مورد استفاده برای هر درخواست، پاسخ صریحی را درخواست کند.
خلاصهی پیام Stop Ranging Response در جدول زیر آمده است:
| هشتتایی | نوع داده | توضیحات | ارزش |
|---|---|---|---|
| 0 | uint8*2 | فناوریهای مسافتیاب با موفقیت در بیتفیلد متوقف شدند | فیلد بیتی فناوریهای مسافتیابی که مسافتیابی را با موفقیت متوقف کردهاند. این فیلد بیتی، بیت فناوری مسافتیابی را در صورت درخواست توقف فناوری و توقف موفقیتآمیز آن، روی ۱ و در غیر این صورت روی ۰ تنظیم میکند.
|
نسخهبندی
نسخه مشخصات در سربرگ هر پیام موجود است. این بخش نحوه انجام ارتباط را هنگامی که یکی از دستگاهها (چه آغازگر و چه پاسخدهنده) از نسخه قدیمیتری نسبت به دستگاه دیگر استفاده میکند، تعریف میکند.
مورد ۱: کانال ارتباطی مبتنی بر اتصال
این بخش مواردی را شرح میدهد که از کانال ارتباطی مبتنی بر اتصال استفاده میکنند، که در آن Ranging Capability Request اولین پیامی است که توسط دستگاه آغازگر ارسال میشود.
مورد ۱.الف: آغازگر از نسخه جدیدتر و پاسخدهنده از نسخه قدیمیتر مشخصات پشتیبانی میکند.
The initiator device sends the Ranging Capability Request message with the newer version. The responder device supports only the older version, so it responds with that, and then the responder's older version is used for the rest of the message exchange. This means that the Ranging Capability Request message has to be backward compatible.
مورد ۱.ب: آغازگر از نسخه قدیمیتر و پاسخدهنده از نسخه جدیدتر مشخصات پشتیبانی میکند.
دستگاه پاسخدهنده متوجه میشود که دستگاه آغازگر قادر به استفاده از نسخه جدیدتر نیست، بنابراین فقط با استفاده از نسخه قدیمیتری که در ابتدا توسط دستگاه آغازگر درخواست شده بود، پیامها را ارسال میکند.
مورد ۲: کانال ارتباطی مبتنی بر تبلیغات
این بخش مواردی را شرح میدهد که از یک کانال ارتباطی مبتنی بر تبلیغات استفاده میکنند، که در آن دستگاه پاسخدهنده، Ranging Capability Request مستقیماً و بدون درخواست اولیه، تبلیغ میکند.
مورد ۲.الف: آغازگر از نسخه جدیدتر و پاسخدهنده از نسخه قدیمیتر مشخصات پشتیبانی میکنند.
نسخه قدیمیتر تنظیمشده در آگهی Ranging Capability Response برای بقیه ارتباطات استفاده میشود.
مورد ۲.ب: آغازگر از نسخه قدیمیتر و پاسخدهنده از نسخه جدیدتر مشخصات پشتیبانی میکنند.
نسخه جدیدتر اعلان Ranging Capability Response باید با نسخههای قبلی سازگار باشد تا دستگاه آغازگر بتواند پیام را بخواند، حتی اگر از نسخه جدیدتری استفاده میکند. سپس دستگاه آغازگر پیام Ranging Configuration را با استفاده از نسخه قدیمیتری که پشتیبانی میکند ارسال میکند. این نسخهای است که برای بقیه ارتباطات استفاده میشود.
برای اطمینان از سازگاری عقبگردِ Ranging Capability Response با نسخههای قبلی، هر فیلد جدیدی که به نسخه بعدی این مشخصات در پیام Ranging Capability Response اضافه میشود، باید به انتهای آن پیوست شود و هیچ یک از فیلدهای موجود قابل تغییر نیستند. هنگام تجزیه پیکربندی، اگر اندازه مشخص شده بزرگتر از حد انتظار باشد، فیلدهای اضافی باید توسط هر دستگاهی که فقط میتواند نسخه قدیمیتر مشخصات را درک کند، نادیده گرفته شوند.
تکهتکه شدن
این مشخصات مستقل از کانال ارتباطی است، بنابراین نحوه قطعه قطعه کردن بار پیام را در مواردی که یک پیام واحد برای جا شدن در یک بسته انتقال کانال ارتباطی مورد استفاده بسیار بزرگ است، تعریف نمیکند. ماژول محدودهبندی انتظار دارد هر پیام را به شکل کامل خود دریافت کند. مسئولیت قطعه قطعه کردن بر عهده مجری کانال ارتباطی OOB است.
مشخصات فناوری محدودهبندی
این بخش شامل جزئیاتی مربوط به فناوری فاصلهیابی است.
مشخصات فوق پهنباند (UWB)
این بخش جزئیات خاص پهنای باند فوق العاده وسیع را شرح میدهد.
شناسههای پیکربندی
دادههای پیکربندی OOB که برای UWB مبادله میشوند، شامل مجموعه کاملی از پارامترهای قابل تنظیم موجود که UWB برای شروع یک جلسه مسافتیابی UWB به آنها نیاز دارد، نیستند. دلیل این امر این است که برخی از پارامترها به طور ضمنی توسط شناسه پیکربندی انتخاب شده انتخاب میشوند.
هر شناسه پیکربندی مجموعهای از پارامترهای پیکربندی UWB از پیش تعریف شده است که در UwbRangingParams مستند شده است. دستگاه پاسخدهنده لیستی از تمام شناسههای پیکربندی که از آنها پشتیبانی میکند را به عنوان بخشی از پیام پاسخ قابلیت ارسال میکند و آغازگر یکی از شناسههای پیکربندی پشتیبانی شده مورد استفاده را انتخاب میکند. این امر امکان تبادل مجموعه کوچکتری از پارامترهای پیکربندی را در طول OOB فراهم میکند. همچنین تعداد ترکیبات ممکن از پارامترهایی را که میتوان برای محدودهیابی با UWB استفاده کرد، محدود میکند، که آزمایش فقط ترکیبات مجاز پارامترها را ممکن میسازد.
درخواست قابلیتها پس از هر جلسه UWB
پس از متوقف کردن یک جلسه UWB موجود و قبل از شروع یک جلسه UWB جدید، دستگاه آغازگر باید قابلیتهای دستگاه پاسخدهنده را درخواست کرده و پارامترهای پیکربندی را دوباره تنظیم کند، زیرا آدرس UWB میتواند به محض پایان جلسه مسافتیابی فعلی، تغییر کند.
مشخصات کانال صوتی BLE (CS)
این بخش جزئیات خاص مربوط به کانالهای صوتی را شرح میدهد.
پیوند مورد نیاز بین دستگاهها
برای اینکه مسافتیابی با استفاده از کانالیابی کار کند، وجود یک پیوند بین آغازگر و دستگاه پاسخدهنده ضروری است. این مشخصات راهی برای ایجاد پیوند بین دستگاهها ارائه نمیدهد. کاربر APIهای مسافتیابی باید این پیوند را بین دستگاهها برقرار کند.
اقدام مورد نیاز از طرف پاسخدهنده برای CS
In UWB, both devices are required to call the UWB start ranging and stop ranging API explicitly. In contrast, for CS, only the initiator device is required to start CS ranging by calling the Bluetooth (BT) stack. The rest of the initialization on the responder side happens in band through BT. This means that upon receiving the Ranging Configuration message or the Stop Ranging message for CS, the responder side doesn't have to do anything if BT is enabled. The responder device could use those messages as a trigger to update the UI or, for example, blink the device LEDs.