محدوده: مشخصات خارج از باند نسخه ۳

اندروید ۱۶ ماژول مسافت‌یابی (Range) را معرفی کرد. این پروتکل و مشخصات بار مفید، توالی پیام و بار مفید ارتباط خارج از باند (OOB) را که برای تبادل پیکربندی‌های مسافت‌یابی و شروع و توقف مسافت‌یابی بین آغازگر و دستگاه پاسخ‌دهنده که در مسافت‌یابی شرکت می‌کنند، استفاده می‌شود، تعریف می‌کند. اندروید ۱۷ نسخه ۳ این مشخصات را معرفی می‌کند.

این صفحه به ارائه‌دهندگان دستگاه‌های غیراندرویدی امکان می‌دهد تا این مشخصات را پیاده‌سازی کنند تا دستگاه‌هایشان با دستگاه‌های اندروید سازگار باشد.

پیاده‌سازی این مشخصات در زبان توصیف بسته (PDL) گوگل در GitHub موجود است. از این پیاده‌سازی، کامپایلر PDL می‌تواند کد سریال‌سازی و حذف سریال‌سازی را برای پیام‌های تعریف‌شده در این مشخصات تولید کند. این مشخصات از زبان‌های هدف متنوعی از جمله C++، Rust و Java پشتیبانی می‌کند.

چه چیزهایی در نسخه ۳ جدید است؟

نسخه ۳ مشخصات OOB تغییرات زیر را معرفی می‌کند:

  • اعلان حرکت : پیامی که دستگاه تبلیغ‌کننده برای اطلاع‌رسانی به دستگاه آغازگر در مورد تغییر حرکت استفاده می‌کند.
  • پیکربندی مسافت‌یابی : شامل یک فیلد Motion support جدید است که به آغازگر می‌گوید هرگونه تغییر در حرکت محیطی از سوی پاسخ‌دهنده را به پاسخ‌دهنده اطلاع دهد.
  • پشتیبانی جدید از فناوری Wi-Fi PD در قابلیت‌های مسافت‌یابی و پیکربندی مسافت‌یابی اضافه شد.
  • فیلدهای Supported Bandwidth و Supported number of Receive chains در Wi-Fi NAN RTT Ranging Capability منسوخ شوند.

اندیان

مگر اینکه خلاف آن ذکر شده باشد، تمام فیلدهای عددی چند بایتی در پیام‌ها به ترتیب 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
Motion Notification 0x8

شکل‌های ۱ و ۲ نحوه‌ی شروع تبادل پیام برای کانال‌های ارتباطی مختلف را نشان می‌دهند.

برای کانال‌های ارتباطی مبتنی بر اتصال مانند BLE GATT، تبادل پیام با ارسال Ranging Capability Request توسط دستگاه آغازگر به دستگاه پاسخ‌دهنده آغاز می‌شود. دستگاه پاسخ‌دهنده با ارسال Ranging Capability Response پاسخ می‌دهد، همانطور که در شکل 1 نشان داده شده است:

جریان کانال ارتباطی مبتنی بر اتصال

شکل ۱. تبادل پیام OOB با استفاده از یک کانال ارتباطی مبتنی بر اتصال.

برای کانال‌های ارتباطی مبتنی بر تبلیغات، دستگاه پاسخ‌دهنده با اعلان Ranging Capability Response شروع می‌کند. در این حالت، دستگاه آغازگر 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 در Ranging Capability Response خود، از یکی از این طرح‌های انتقال پشتیبانی کند.

شناسه‌های فناوری مسافت‌یابی

شناسه‌های فناوری‌های مختلف در جدول زیر فهرست شده‌اند:

فناوری مسافت‌یابی شناسه
اینترنت پرسرعت (UWB) 0x0
سی اس 0x1
وای‌فای NAN RTT 0x2
RSSI 0x3
وای فای پی دی 0x4
آر اف یو 0x5 - 0xFF

این شناسه‌ها در جداول زیر که در آن‌ها شناسه فناوری مسافت‌یابی مورد نیاز است، استفاده می‌شوند. برای فیلدهای حاوی فیلد بیتی فناوری مسافت‌یابی، بیتی مربوط به اندیس شناسه فناوری، زمانی که آن فناوری در فیلد بیتی گنجانده شده باشد، تنظیم می‌شود.

برای مثال، RSSI دارای مقدار شناسه ۳ است، اما اگر RSSI در فناوری فاصله‌یابی میدان بیتی گنجانده شود، بیتی که موقعیت شناسه (۳) را دارد باید روشن شود (بیت اول در موقعیت ۰ باشد)، که باعث می‌شود مقدار حاصل از میدان بیتی ۰x۸ باشد. اگر هر دو UWB و RSSI گنجانده شوند، مقدار میدان بیتی ۰x۰A خواهد بود (هر دو بیت ۰ و ۳ روشن هستند).

قالب پیام

هر پیام از یک هدر (header) و یک فایل داده (payload) تشکیل شده است.

قالب پیام

شکل ۳. قالب پیام.

اندازه: ۲ بایت

شرح: سرآیند (header) که در همه پیام‌ها مشترک است، اولین بخشی است که وارد یک پیام می‌شود. سرآیند شامل یک نسخه و شناسه نوع پیام است. فیلد نسخه، نسخه‌ای از این مشخصات را مشخص می‌کند که محتوای پیام با آن مطابقت دارد. برای اطلاعات بیشتر در مورد نحوه استفاده از نسخه‌بندی بین دستگاه‌ها در نسخه‌های مختلف، به بخش نسخه‌بندی مراجعه کنید. سرآیند در نسخه‌های مختلف سازگار با نسخه‌های قبلی باقی می‌ماند، به این معنی که مورد استفاده همیشه می‌تواند آن را تجزیه کند تا نسخه و شناسه پیام را تعیین کند.

سرفصل در جدول زیر خلاصه شده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 نسخه
  • 0x1 - نسخه 1
  • 0x2 - نسخه 2
  • 0x3 - نسخه 3
۱ uint8 شناسه پیام
  • 0x0 - پیام Ranging Capability Request
  • 0x1 - پیام Ranging Capability Response
  • 0x2 - پیام Ranging Configuration
  • 0x3 - پیام Ranging Configuration Response (اختیاری)
  • 0x6 - پیام Stop Ranging
  • 0x7 - پیام Stop Ranging Response (اختیاری)
  • 0x8 - پیام Motion Notification
  • 0x4-0x5، 0x9 - 0xFF RFU

بار مفید

اندازه: متغیر (بستگی به نوع پیام دارد)

شرح: بار مفید آخرین بخش پیام، پس از سرآیند آن است. بار مفید به نوع پیام بستگی دارد. قالب بار مفید هر نوع پیام در بخش‌های بعدی تعریف شده است.

قابلیت مسافت‌یابی درخواست بار مفید پیام

اندازه (اندازه هدر شامل نمی‌شود): ۲ بایت

شرح: توسط دستگاه آغازگر برای شروع تبادل پیام ارسال می‌شود. این پیام زمانی اختیاری است که کانال ارتباطی مبتنی بر تبلیغات باشد، در این صورت دستگاه پاسخ‌دهنده موظف است به عنوان اولین قدم، پیام Ranging Capability Response منتشر کند. دستگاه آغازگر (اسکنر اولیه) این پیام را می‌خواند و مستقیماً با پیام Ranging Capability Request پاسخ می‌دهد و از نیاز به این پیام اجتناب می‌کند.

خلاصه‌ی پیام Ranging Capability Request ) در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8*2 فناوری‌های مسافت‌یابی درخواستی بیت‌فیلد
  • 0x01 - پهنای باند فوق وسیع
  • 0x02 - صدای کانال BLE
  • 0x04 - وای‌فای NAN RTT
  • 0x08 - RSSI خام
  • 0x10 - اختلال در وای‌فای
  • آر اف یو

قابلیت پیمایش، بار مفید پیام پاسخ

اندازه (اندازه هدر شامل نمی‌شود): متغیر است (۲ بایت بخش مشترک به علاوه اندازه هر بایت فناوری محدوده‌بندی شامل شده)

شرح: توسط پاسخ‌دهنده به عنوان پاسخی به پیام Ranging Capability Request ارسال شده است. این پیام شامل بخش مشترک و بخش‌های خاص فناوری مسافت‌یابی (BLE CS، Wi-Fi NAN RTT، BLE RSSI) است، همانطور که در جداول زیر نشان داده شده است. هر بخش خاص فناوری مسافت‌یابی فقط در صورتی باید اضافه شود که آن فناوری مسافت‌یابی توسط دستگاه پاسخ‌دهنده پشتیبانی شود و در پیام Ranging Capability Request درخواست شده باشد. در مورد کانال ارتباطی تبلیغاتی، تمام فناوری‌های مسافت‌یابی پشتیبانی شده باید گنجانده شوند.

محتوای پیام رایج Ranging Capability Response در جدول زیر خلاصه شده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8*2 فناوری‌های مسافت‌یابی پشتیبانی‌شده در bitfield. نشان‌دهنده‌ی مجموعه‌ای از قابلیت‌های فناوری‌های مسافت‌یابی است که در ادامه‌ی محموله‌ی داده دنبال می‌شوند.
  • 0x01 - پهنای باند فوق وسیع
  • 0x02 - صدای کانال BLE
  • 0x04 - وای‌فای NAN RTT
  • 0x08 - RSSI خام
  • 0x10 - اختلال در وای‌فای
  • آر اف یو
۲ آرایه بایتی بایت‌های قابلیت فناوری مسافت‌یابی. بلوک‌های تکراری از سازه‌ها که برای هر فناوری تعریف شده‌اند.
متفاوت است uint8 نشان دهنده پشتیبانی از انتقال فناوری است.
  • 0x00 - شکستن قبل از ایجاد پشتیبانی می‌شود.
  • 0x01 - از Make-before-break پشتیبانی می‌شود. پاسخ‌دهنده قادر است همزمان با چندین فناوری ارتباط برقرار کند.
متفاوت است واحد۱۶ نوع دستگاه پاسخ دهنده را نشان می‌دهد.
  • 0x00 - ناشناخته
  • 0x01 - تلفن
  • 0x02 - تبلت
  • 0x03 - برچسب
  • 0x04 - پوشیدنی
  • 0x05 - قابل شنیدن
  • آر اف یو

خلاصه پیام Ranging Capability Response UWB در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 شناسه فناوری مسافت‌یابی 0x0 - UWB
۱ uint8 اندازه اندازه بایت‌های قابلیت‌های UWB (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت.
۲ uint8*2 آدرس UWB آدرس UWB دستگاه ۲ بایتی.
۴ uint8*4 کانال‌های پشتیبانی شده توسط بیت‌فیلد فیلد بیتی کانال‌های پشتیبانی‌شده. بیت تنظیم‌شده روی ۰ نشان می‌دهد که پشتیبانی نمی‌شود، ۱ نشان می‌دهد که پشتیبانی می‌شود. بیت ۰ مربوط به کانال ۰ است.
LSB == channel 0
MSB == channel 31
۸ uint8*4 فیلد بیت شاخص مقدمه پشتیبانی شده فیلد بیتی از اندیس‌های مقدمه پشتیبانی‌شده. بیت تنظیم‌شده روی ۰ نشان می‌دهد که پشتیبانی نمی‌شود، ۱ نشان می‌دهد که پشتیبانی می‌شود. بیت ۰ مربوط به اندیس مقدمه ۱ است.
LSB == preamble index 1
MSB == preamble index 32
۱۲ uint8*4 شناسه‌های پیکربندی پشتیبانی‌شده bitfield فیلد بیتی شناسه‌های پیکربندی UWB پشتیبانی‌شده. بیت تنظیم‌شده روی ۰ نشان می‌دهد که پشتیبانی نمی‌شود، ۱ نشان می‌دهد که پشتیبانی می‌شود.
LSB == config Id 0
MSB == config Id 31
۱۶ uint8*2 حداقل فاصله‌ی رنج پشتیبانی‌شده سریع‌ترین بازه مسافت‌یابی پشتیبانی‌شده را بر حسب میلی‌ثانیه نشان می‌دهد. مقادیر مجاز (بر حسب میلی‌ثانیه):
  • ۹۶
  • ۱۲۰
  • ۲۴۰
  • ۶۰۰
۱۸ uint8 حداقل مدت زمان اسلات پشتیبانی شده کمترین مدت زمان اسلات پشتیبانی شده را بر حسب میلی ثانیه نشان می‌دهد. برای مثال، اگر دستگاه ۱ میلی‌ثانیه را برگرداند، فرض بر این است که از مدت زمان اسلات ۲ میلی‌ثانیه یا بالاتر نیز پشتیبانی می‌کند. مقادیر مجاز (بر حسب میلی‌ثانیه):
  • ۱
  • ۲
۱۹ نقش دستگاه UWB پشتیبانی شده در بیتفیلد فیلد بیتی نقش‌های UWB پشتیبانی‌شده. برای مثال، اگر هر دو پشتیبانی شوند، مقدار فیلد نهایی 0x3 است.
  • 0x1 - نقش آغازگر پشتیبانی می‌شود
  • 0x2 - نقش پاسخ‌دهنده پشتیبانی می‌شود

خلاصه پیام Ranging Capability Response BLE CS در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 شناسه فناوری مسافت‌یابی 0x1 - BLE CS
۱ uint8 اندازه اندازه بایت‌های قابلیت‌های BLE CS (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت.
۲ uint8 نوع امنیتی پشتیبانی شده: بیت‌فیلد فیلد بیتی انواع امنیتی پشتیبانی شده برای BLE CS.
  • 0x01 - CS_SECURITY_LEVEL_UNKNOWN
  • 0x02 - CS_SECURITY_LEVEL_ONE
  • 0x04 - CS_SECURITY_LEVEL_TWO
  • 0x08 - CS_SECURITY_LEVEL_THREE
  • 0x10 - CS_SECURITY_LEVEL_FOUR
۳ uint8*6 آدرس دستگاه آدرس دستگاه مورد استفاده برای BLE CS؛ به ترتیب big-endian.

خلاصه پیام Ranging Capability Response Wi-Fi NAN RTT در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 شناسه فناوری مسافت‌یابی 0x2 - وای‌فای NAN RTT
۱ uint8 اندازه اندازه بایت‌های قابلیت‌های RSSI در BLE (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت.
۲ uint8 ویژگی‌های پشتیبانی‌شده توسط بیت‌فیلد فیلد بیتی از ویژگی‌های پشتیبانی شده.
  • 0x01 - قابلیت 11mc
  • 0x02 - قابلیت 11az
۳ uint8 پشتیبانی از اندازه‌گیری‌های دوره‌ای
  • 0x0 - محدوده‌یابی دوره‌ای پشتیبانی نمی‌شود
  • 0x1 - پشتیبانی از مسافت‌یابی دوره‌ای
۴ uint8 پهنای باند پشتیبانی شده منسوخ شده این اطلاعات به محاسبه دقت مسافت‌یابی قابل دستیابی با استفاده از Wi-Fi NAN کمک می‌کند و می‌تواند به برنامه‌ها در تعیین اینکه آیا از UWB، BLE CS، BLE RSSI یا Wi-Fi NAN برای مسافت‌یابی استفاده کنند، کمک کند.
  • 0x00 - 20 مگاهرتز
  • 0x01 - 40 مگاهرتز
  • 0x02 - 80 مگاهرتز
  • 0x03 - 160 مگاهرتز
  • 0x04 - 80+80 مگاهرتز
  • 0x05 - 320 مگاهرتز
  • آر اف یو
۵ uint8 تعداد زنجیره‌های دریافتی پشتیبانی شده منسوخ شده این اطلاعات به محاسبه دقت مسافت‌یابی قابل دستیابی با استفاده از Wi-Fi NAN کمک می‌کند و می‌تواند به برنامه‌ها در تعیین اینکه آیا از UWB، BLE CS، BLE RSSI یا Wi-Fi NAN برای مسافت‌یابی استفاده کنند، کمک کند.
  • 0x00 - تعریف نشده
  • 0x01 - 1 زنجیره RX
  • 0x02 - 2 زنجیره RX
  • 0x03 - 3 زنجیره RX
  • 0x04 - 4 زنجیره RX

خلاصه پیام Ranging Capability Response BLE RSSI در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 شناسه فناوری مسافت‌یابی 0x3 - RSSI خام
۱ uint8 اندازه اندازه بایت‌های قابلیت‌های RSSI در BLE (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت
۲ uint8*6 آدرس دستگاه آدرس دستگاه مورد استفاده برای BLE RSSI؛ به ترتیب big-endian

خلاصه پیام Ranging Capability Response PD در Wi-Fi در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 شناسه فناوری مسافت‌یابی 0x4 - وای فای پی دی
۱ uint8 اندازه اندازه بایت‌های قابلیت‌های Wi-Fi PD (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت
۲ uint8 ویژگی‌های پشتیبانی‌شده بیت‌مپ
  • قابلیت b0 - 11mc
  • قابلیت b1 - 11az
۳ uint8 حالت پان بیت‌مپ
  • b0 - حالت PASN احراز هویت نشده
  • b1 - حالت PASN احراز هویت شده
۴ uint8*6 آدرس دستگاه آدرس دستگاه مورد استفاده برای Wi-Fi PD؛ به ترتیب بزرگ-پایانی.
۱۰ uint8*2 حداقل فاصله‌ی اندازه‌گیری 802.11mc حداقل فاصله‌ی اندازه‌گیری در قالب big-endian برای 11mc پشتیبانی می‌شود.
۱۲ uint8*2 حداقل فاصله اندازه‌گیری 802.11az حداقل فاصله‌ی اندازه‌گیری در قالب big-endian برای 11az پشتیبانی می‌شود
۱۴ uint8 حداکثر نوع مقدمه
  • 0 - میراث مقدماتی
  • ۱ - مقدمه_HT
  • ۲ - مقدمه_VHT
  • ۳ - مقدمه
  • ۴ - مقدمه_EHT
با فرض اینکه همه مقدمه‌های پایین‌تر پشتیبانی می‌شوند.
۱۵ uint8 حداکثر عرض کانال
  • ۰ - عرض کانال ۲۰ مگاهرتز
  • ۱ - عرض کانال ۴۰ مگاهرتز
  • ۲ - عرض کانال ۸۰ مگاهرتز
  • ۳ - عرض کانال ۱۶۰ مگاهرتز
  • ۴ - عرض کانال ۸۰ مگاهرتز پلاس مگاهرتز
  • ۵ - عرض کانال ۳۲۰ مگاهرتز
با فرض اینکه تمام عرض کانال‌های پایین‌تر پشتیبانی می‌شوند.
۱۶ uint8*2 فرکانس کانال پشتیبانی شده
  • b0 - کانال ۱
  • b1 - کانال 11
  • b2 - کانال ۳۶
  • b3 - کانال 40
  • b4 - کانال ۴۴
  • b5 - کانال ۴۸
  • b6 - کانال ۱۵۳
  • b7 - کانال 157
  • b8 - کانال 161
  • b9 - کانال ۱۶۵
  • b10-b15 - آر اف یو

بار مفید پیام پیکربندی محدوده‌بندی

اندازه (اندازه هدر شامل نمی‌شود): متغیر است (۴ بایت بخش مشترک به علاوه اندازه هر بایت فناوری محدوده‌بندی شامل شده).

شرح: این پیام توسط آغازگر ارسال می‌شود و شامل پیکربندی‌هایی است که هر فناوری مسافت‌یابی می‌تواند با آنها شروع به مسافت‌یابی کند. دستگاه پاسخ‌دهنده باید پس از دریافت این پیام، سعی کند با هر فناوری مسافت‌یابی نشان داده شده، مسافت‌یابی را شروع کند. این پیام شامل بخش مشترک و بخش‌های خاص فناوری مسافت‌یابی (UWB، BLE CS، Wi-Fi NAN RTT، BLE RSSI) است که در جداول زیر نشان داده شده است.

محتوای پیام رایج Ranging Configuration در جدول زیر خلاصه شده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8*2 پیکربندی فناوری‌های مختلف، مجموعه بیت‌فیلد حوزه بیتی فناوری‌های مختلف که این پیام حاوی داده‌های پیکربندی برای آنهاست و پارامترهای پیکربندی باید برای آنها تنظیم شوند.
  • 0x01 - پهنای باند فوق وسیع
  • 0x02 - صدای کانال BLE
  • 0x04 - وای‌فای NAN RTT
  • 0x08 - RSSI خام
  • 0x10 - اختلال در وای‌فای
  • آر اف یو
۲ uint8*2 بیتفیلد RFU. باید روی همان مقدار فیلد bitfield در مجموعه پیکربندی فناوری‌های محدوده‌بندی تنظیم شود.
۴ آرایه بایتی پیکربندی فناوری‌های مختلف بایت‌ها بلوک‌های تکراری از structها که برای هر فناوری تعریف شده‌اند
متغیر است uint8 پشتیبانی از حرکت Motion Notification درخواست شد
  • 0x0 - نشان می‌دهد که دستگاه آغازگر به هیچ داده حرکتی نیاز ندارد.
  • 0x1 - نشان می‌دهد که دستگاه آغازگر به داده‌های حرکتی از دستگاه همتا نیاز دارد.

خلاصه پیام 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 نقش دستگاه انتخاب شده
  • 0x01 - آغازگر
  • 0x02 - پاسخ‌دهنده
متغیر است uint8 حالت دستگاه انتخاب شده
  • 0x01 - کنترل کننده
  • 0x02 - کنترل شونده

خلاصه پیام Ranging Configuration BLE CS در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 شناسه فناوری مسافت‌یابی 0x1 - BLE CS
۱ uint8 اندازه اندازه پیکربندی BLE CS (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت
۲ uint8 نوع امنیتی انتخاب شده نوع امنیتی انتخاب شده. مقادیر مجاز:
  • 0x0 - CS_SECURITY_LEVEL_UNKNOWN
  • 0x1 - CS_SECURITY_LEVEL_ONE
  • 0x2 - CS_SECURITY_LEVEL_TWO
  • 0x3 - CS_SECURITY_LEVEL_THREE
  • 0x4 - CS_SECURITY_LEVEL_FOUR
۳ 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 نقش دستگاه
  • 0x0 - پاسخ‌دهنده (ناشر سرویس NAN)
  • 0x1 - آغازگر (مشترک سرویس NAN)
متغیر است uint8 استفاده از محدوده‌بندی دوره‌ای
  • 0x0 - غیرفعال بودن محدوده‌یابی دوره‌ای
  • 0x1 - فعال بودن محدوده‌یابی دوره‌ای

خلاصه پیام Ranging Configuration RSSI در BLE در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 شناسه فناوری مسافت‌یابی 0x3 - RSSI خام
۱ uint8 اندازه اندازه پیکربندی BLE RSSI (شامل فیلدهای Technology ID و Size ) بر حسب بایت
۲ uint8*6 آدرس دستگاه آدرس دستگاه مورد استفاده برای BLE RSSI؛ به ترتیب big-endian

خلاصه پیام Ranging Configuration PD در Wi-Fi در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 شناسه فناوری مسافت‌یابی 0x4 - وای فای پی دی
۱ uint8 اندازه اندازه پیکربندی Wi-Fi NAN PD (شامل فیلدهای شناسه فناوری و اندازه ) بر حسب بایت
۲ uint8 ویژگی
  • 0x01 - 11mc
  • 0x02 - 11az
۳ uint8*6 آدرس مک آدرس مک آغازگر
۹ uint8*2 فاصله زمانی بازه اندازه‌گیری بر حسب میلی‌ثانیه
۱۱ uint8 مقدمه برگزیده
  • 0 - میراث مقدماتی
  • ۱ - مقدمه_HT
  • ۲ - مقدمه_VHT
  • ۳ - مقدمه
  • ۴ - مقدمه_EHT
۱۲ uint8 عرض کانال انتخاب شده
  • ۰ - عرض کانال ۲۰ مگاهرتز
  • ۱ - عرض کانال ۴۰ مگاهرتز
  • ۲ - عرض کانال ۸۰ مگاهرتز
  • ۳ - عرض کانال ۱۶۰ مگاهرتز
  • ۴ - عرض کانال ۸۰ مگاهرتز پلاس مگاهرتز
  • ۵ - عرض کانال ۳۲۰ مگاهرتز
۱۳ uint8 کانال انتخاب شده
  • ۰ - کانال ۱
  • ۱ - کانال ۱۱
  • ۲ - کانال ۳۶
  • ۳ - کانال ۴۰
  • ۴ - کانال ۴۴
  • ۵ - کانال ۴۸
  • ۶ - کانال ۱۵۳
  • ۷ - کانال ۱۵۷
  • ۸ - کانال ۱۶۱
  • ۹ - کانال ۱۶۵
۱۴ uint8 حالت PASN انتخاب شده
  • 0x01 - حالت PASN احراز هویت نشده
  • 0x02 - حالت PASN احراز هویت شده
نکته: این فیلد، انتهای بسته برای حالت PASN احراز هویت نشده است.
۱۵ آرایه بایتی کلید شناسایی دستگاه آرایه ثابت ۱۶ بایتی
توجه: این فیلد فقط برای حالت PASN احراز هویت شده معتبر است، نباید برای حالت PASN احراز هویت نشده تنظیم شود.
۳۱ uint8 طول رمز عبور طول رمز عبور.
توجه: این فیلد فقط برای حالت PASN احراز هویت شده معتبر است و نباید برای حالت PASN احراز هویت نشده تنظیم شود.
متغیر است آرایه بایتی رمز عبور رمز عبور به صورت آرایه‌ای از بایت‌ها.
توجه: این فیلد فقط برای حالت PASN احراز هویت شده معتبر است و نباید برای حالت PASN احراز هویت نشده تنظیم شود.

بار مفید پیام پاسخ پیکربندی محدوده‌بندی

اندازه (اندازه هدر شامل نمی‌شود): ۲ بایت

شرح: این پیام توسط پاسخ‌دهنده به عنوان پاسخی به پیام Ranging Configuration ارسال می‌شود. این پیام اختیاری است؛ فقط زمانی لازم است که کانال ارتباطی مورد استفاده برای هر درخواست، پاسخ صریحی را درخواست کند.

خلاصه‌ی پیام Ranging Configuration Response در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8*2 پیکربندی فناوری‌های متغیر با موفقیت در بیت‌فیلد تنظیم شد فیلد بیتی فناوری‌های مسافت‌یابی که با موفقیت تنظیم شده‌اند. این فیلد بیتی، بیت فناوری مسافت‌یابی را در صورت درخواست و تنظیم موفقیت‌آمیز فناوری، روی ۱ و در غیر این صورت روی ۰ تنظیم می‌کند.
  • 0x01 - پهنای باند فوق وسیع
  • 0x02 - صدای کانال BLE
  • 0x04 - وای‌فای NAN RTT
  • 0x08 - RSSI خام
  • 0x10 - اختلال در وای‌فای
  • آر اف یو

توقف ارسال پیام مسافت‌یابی

اندازه (اندازه هدر شامل نمی‌شود): ۲ بایت

شرح: این پیام توسط دستگاه آغازگر ارسال می‌شود، زمانی که زمان توقف مسافت‌یابی با فناوری مسافت‌یابی مشخص شده فرا رسیده است.

خلاصه‌ی پیام Stop Ranging در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8*2 فناوری‌های متنوع برای متوقف کردن بیت‌فیلد فیلد بیتی فناوری‌های مسافت‌یابی که باید مسافت‌یابی را متوقف کنند. بیت تنظیم‌شده روی ۱ نشان می‌دهد که فناوری مسافت‌یابی باید مسافت‌یابی را متوقف کند، و ۰ نشان می‌دهد که فناوری مسافت‌یابی یا از ابتدا مسافت‌یابی نکرده است، یا اگر از قبل مسافت‌یابی می‌کرده، باید به مسافت‌یابی ادامه دهد. برای برخی از فناوری‌های مسافت‌یابی (مانند CS) این یک گزینه‌ی بی‌اثر است زیرا مسافت‌یابی فقط در سمت آغازگر آغاز و متوقف می‌شود.
  • 0x01 - پهنای باند فوق وسیع
  • 0x02 - صدای کانال BLE
  • 0x04 - وای‌فای NAN RTT
  • 0x08 - RSSI خام
  • 0x10 - اختلال در وای‌فای
  • آر اف یو

توقف ارسال پیام پاسخ محدوده‌بندی

اندازه (اندازه هدر شامل نمی‌شود): ۲ بایت

شرح: این پیام توسط پاسخ‌دهنده به عنوان پاسخی به پیام « Stop Ranging ارسال می‌شود. این پیام اختیاری است و فقط زمانی لازم است که کانال ارتباطی مورد استفاده برای هر درخواست، پاسخ صریحی را درخواست کند.

خلاصه‌ی پیام Stop Ranging Response در جدول زیر آمده است:

هشت‌تایی نوع داده توضیحات ارزش
0 uint8*2 فناوری‌های مسافت‌یاب با موفقیت در بیت‌فیلد متوقف شدند فیلد بیتی فناوری‌های مسافت‌یابی که مسافت‌یابی را با موفقیت متوقف کرده‌اند. این فیلد بیتی، بیت فناوری مسافت‌یابی را در صورت درخواست توقف فناوری و توقف موفقیت‌آمیز آن، روی ۱ و در غیر این صورت روی ۰ تنظیم می‌کند.
  • 0x01 - پهنای باند فوق وسیع
  • 0x02 - صدای کانال BLE
  • 0x04 - وای‌فای NAN RTT
  • 0x08 - RSSI خام
  • 0x10 - اختلال در وای‌فای
  • آر اف یو

بار مفید پیام هشدار حرکت

اندازه (اندازه هدر شامل نمی‌شود): ۱ بایت

شرح: دستگاه پاسخ‌دهنده این پیام را ارسال می‌کند تا دستگاه آغازگر را از هرگونه تغییر در وضعیت حرکت خود مطلع سازد.

هشت‌تایی نوع داده توضیحات ارزش
0 uint8 حرکت
  • 0x0 - شناسایی نشد
  • 0x1 - حرکت جزئی
  • 0x2 - حرکت متوسط
  • 0x3 - حرکت بزرگ
  • آر اف یو
آستانه حرکت باید طوری تنظیم شود که تغییر جهت ±X° را در امتداد هر دو محور لوازم جانبی تشخیص دهد.
  • تشخیص داده نشد : کمتر از ۵ درجه
  • حرکت جزئی : ۵ تا ۷ درجه
  • حرکت متوسط : ۷ تا ۱۰ درجه
  • حرکت بزرگ : > 10 درجه

نسخه‌بندی

نسخه مشخصات در سربرگ هر پیام موجود است. این بخش نحوه انجام ارتباط را هنگامی که یکی از دستگاه‌ها (چه آغازگر و چه پاسخ‌دهنده) از نسخه قدیمی‌تری نسبت به دستگاه دیگر استفاده می‌کند، تعریف می‌کند.

مورد ۱: کانال ارتباطی مبتنی بر اتصال

این بخش مواردی را شرح می‌دهد که از کانال ارتباطی مبتنی بر اتصال استفاده می‌کنند، که در آن Ranging Capability Request اولین پیامی است که توسط دستگاه آغازگر ارسال می‌شود.

مورد ۱.الف: آغازگر از نسخه جدیدتر و پاسخ‌دهنده از نسخه قدیمی‌تر مشخصات پشتیبانی می‌کند.

دستگاه آغازگر، پیام Ranging Capability Request را با نسخه جدیدتر ارسال می‌کند. دستگاه پاسخ‌دهنده فقط از نسخه قدیمی‌تر پشتیبانی می‌کند، بنابراین با آن پاسخ می‌دهد و سپس نسخه قدیمی‌تر پاسخ‌دهنده برای بقیه تبادل پیام استفاده می‌شود. این بدان معناست که پیام « Ranging Capability Request باید با نسخه‌های قبلی سازگار باشد.

مورد ۱.ب: آغازگر از نسخه قدیمی‌تر و پاسخ‌دهنده از نسخه جدیدتر مشخصات پشتیبانی می‌کند.

دستگاه پاسخ‌دهنده متوجه می‌شود که دستگاه آغازگر قادر به استفاده از نسخه جدیدتر نیست، بنابراین فقط با استفاده از نسخه قدیمی‌تری که در ابتدا توسط دستگاه آغازگر درخواست شده بود، پیام‌ها را ارسال می‌کند.

مورد ۲: کانال ارتباطی مبتنی بر تبلیغات

این بخش مواردی را شرح می‌دهد که از یک کانال ارتباطی مبتنی بر تبلیغات استفاده می‌کنند، که در آن دستگاه پاسخ‌دهنده، 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 مستند شده است. دستگاه پاسخ‌دهنده لیستی از تمام شناسه‌های پیکربندی که از آنها پشتیبانی می‌کند را به عنوان بخشی از شناسه‌های پیکربندی پشتیبانی شده توسط supports_technology_transitioning که استفاده می‌شود، ارسال می‌کند. این امر امکان تبادل مجموعه کوچکتری از پارامترهای پیکربندی را در طول OOB فراهم می‌کند. همچنین تعداد ترکیبات ممکن از پارامترهایی را که می‌توان برای محدوده‌یابی با UWB استفاده کرد، محدود می‌کند، که آزمایش فقط ترکیبات مجاز پارامترها را ممکن می‌سازد.

درخواست قابلیت‌ها پس از هر جلسه UWB

پس از متوقف کردن یک جلسه UWB موجود و قبل از شروع یک جلسه UWB جدید، دستگاه آغازگر باید قابلیت‌های دستگاه پاسخ‌دهنده را درخواست کرده و پارامترهای پیکربندی را دوباره تنظیم کند، زیرا آدرس UWB می‌تواند به محض پایان جلسه مسافت‌یابی فعلی، تغییر کند.

مشخصات کانال صوتی BLE (CS)

این بخش جزئیات خاص مربوط به کانال‌های صوتی را شرح می‌دهد.

پیوند مورد نیاز بین دستگاه‌ها

برای اینکه مسافت‌یابی با استفاده از کانال‌یابی کار کند، وجود یک پیوند بین آغازگر و دستگاه پاسخ‌دهنده ضروری است. این مشخصات راهی برای ایجاد پیوند بین دستگاه‌ها ارائه نمی‌دهد. کاربر APIهای مسافت‌یابی باید این پیوند را بین دستگاه‌ها برقرار کند.

اقدام مورد نیاز از طرف پاسخ‌دهنده برای CS

در UWB، هر دو دستگاه ملزم به فراخوانی صریح API شروع و پایان مسافت‌یابی UWB هستند. در مقابل، برای CS، فقط دستگاه آغازگر لازم است تا با فراخوانی پشته بلوتوث (BT) مسافت‌یابی CS را آغاز کند. بقیه مقداردهی اولیه در سمت پاسخ‌دهنده در باند از طریق BT اتفاق می‌افتد. این بدان معناست که پس از دریافت پیام Ranging Configuration یا پیام Stop Ranging برای CS، در صورت فعال بودن BT، سمت پاسخ‌دهنده نیازی به انجام کاری ندارد. دستگاه پاسخ‌دهنده می‌تواند از این پیام‌ها به عنوان یک محرک برای به‌روزرسانی رابط کاربری یا به عنوان مثال، چشمک زدن LEDهای دستگاه استفاده کند.