شروع کار با Matter

برنامه Home Developer به سازندگان دستگاه اجازه می‌دهد دستگاه‌های خانه هوشمندشان را به بوم‌سازگان Google Home متصل کنند. درحال گسترش مسیر اجرای محلی «کنش‌های خانه هوشمند» هستیم و قابلیت افزودن دستگاه‌های سازگار با Matter را برای راه‌اندازی بااستفاده از Google Home app (GHA) و کنترل آن‌ها بااستفاده از Google Assistant، GHA، یا نمایشگرهای هوشمند مثل Google Nest Hub (2nd gen) را اضافه می‌کنیم.

این سند نحوه شروع به کار با ساختن و ادغام کردن پلاتفرم پشتیبانی‌شده از Matter در بوم‌سازگان Google Home را شرح می‌دهد.

سلب مسئولیت‌ها

درباره رویه‌های شرح‌داده‌شده در مستندات Matter، به موارد زیر توجه داشته باشید:

  • توصیه می‌کنیم حسابی که برای توسعه استفاده می‌شود فقط یک هاب فعال‌شده برای Matter داشته باشد که برای آزمایش متصل شده است. اتصال هم‌زمان چند هاب فعال‌شده با Matter یا اتصال آن‌ها به یک ساختار درطول آزمایش می‌تواند منجر به رفتار غیرقابل‌پیش‌بینی شود.
  • همه رویه‌ها فرض می‌کنند که از دستگاه Linux با Ubuntu 20.04 برای ساختن و فلش کردن نمونه‌های Matter استفاده می‌شود که توسط Google آزمایش شده‌اند. اگرچه از ماشین‌های macOS پشتیبانی می‌شود، Linux توصیه می‌شود. دستورالعمل‌های مختص Mac درصورت نیاز در رویه‌ها ذکر شده است.

نحوه ساختن

برای ساختن دستگاهی با قابلیت Matter که با بوم‌سازگان Google Home ادغام شود، با برد توسعه سازگار با Matter و Matter SDK کار خواهید کرد.

ساده‌ترین راه برای شروع، رفتن به codelabs ما است. توصیه می‌کنیم حداقل یکی از کارگاه‌های کد زیر را انجام دهید:

پس‌از آن، فهرست دستگاه‌های پشتیبانی‌شده ما را بررسی کنید تا مطمئن شوید آنچه قصد دارید ادغام کنید در بوم‌سازگان Google Home پشتیبانی می‌شود. سپس بازبینه توسعه‌دهنده را بخوانید تا با کل جریان توسعه از ایجاد پروژه تا راه‌اندازی آشنا شوید.

دستگاه‌های پشتیبانی‌شده بازبینه توسعه‌دهنده

تعاریف

در سراسر این سند از اصطلاحات زیر استفاده می‌شود:

رهیاب مرزی
کانونی که یک رهیاب مرزی Thread با کاربرد عمومی را برای دستگاه‌های سازگار با Thread پیاده‌سازی می‌کند.
مرکز
دستگاه Google Nest پشتیبانی‌شده، مثل Google Nest Hub (2nd gen). برای کنترل دستگاه‌های سازگار با Matter ازطریق سطوح دیگر مثل Assistant، GHA، و نمایشگرهای هوشمند، به هاب نیاز است.
دستگاه سازگار با Matter
دستگاه یا برد توسعه‌ای که با برنامه نمونه یا ساخت فعال‌شده با Matter فلش شده است.
دستگاه همراه
تلفن آزمایشی که برای کمک به جفت‌سازی استفاده می‌شود. درحال‌حاضر این تلفن Android است.

پیش‌نیازها

افزونه‌های IDE توصیه‌شده برای توسعه Matter

برای ادغام کامل دستگاه سازگار با Matter با بوم‌سازگان Google Home، توسعه‌دهنده باید موارد زیر را داشته باشد:

  1. مرکز کنترل Google با پشتیبانی Thread تا هم به‌عنوان border router برای دستگاه‌های سازگار با Thread و هم به‌عنوان مسیر اجرای محلی برای مسیریابی اهداف «خانه هوشمند» عمل کند.
  2. دستگاه همراهی (تلفن آزمایشی) که حداقل الزامات را داشته باشد:
    • Android O (نسخه ۸.۱، سطح میانای برنامه‌سازی کاربردی ۲۷ یا جدیدتر)
    • ‫iOS (نسخه ۱۶.۵ یا جدیدتر)
    • قابلیت بلوتوث کم‌مصرف
  3. شناسه فروشنده (VID) و شناسه محصول (PID) برای دستگاه سازگار با Matter.
  4. دستگاه سازگار با Matter. این دستگاه باید یکی از Matter نوع دستگاه پشتیبانی‌شده در بوم‌سازگان Google Home باشد و می‌تواند یکی از موارد زیر باشد:
    • محصول خودتان با سفت‌افزار فعال‌شده با Matter.
    • یکی از دستگاه‌های Matter زیر برای استفاده در درستی‌سنجی سرتاسر:
جدول: Matter نمونه‌هایی از فروشندگان سیلیکون
فروشنده پلاتفرم پشتیبانی Thread راهنما
Bouffalo Lab BL602
BL702
Espressif ESP32 آزمایش OTA
Nordic Semiconductor nRF52840 DK آزمایش OTA
NXP کیت توسعه IOTZTB-DK006
Realtek Ameba D Series
Silicon Labs EFR32MG24 Dev Kit
کیت شروع به کار EFR32MG Zigbee و Thread
Telink TLSR9528 راهنمای توسعه‌دهنده Telink Matter
تگزاس اینسترومنتس کیت توسعه CC2652R7 LaunchPad

شناسه ارائه‌دهنده

به‌طور پیش‌فرض، می‌توانید از یکی از شناسه‌های VID اختصاص‌داده‌شده توسط «اتحاد» برای اهداف آزمایشی استفاده کنید. یکی از موارد زیر را انتخاب کنید: 0xFFF1، 0xFFF2، 0xFFF3، 0xFFF4.

برای استفاده از VID تولیدی به‌منظور تأیید و راه‌اندازی ادغام، ابتدا باید آن را در Google درستی‌سنجی کنید تا مطمئن شوید که توسط «اتحاد» برای شما صادر شده است.

این VID باید در سفت‌افزار دستگاهتان پیاده‌سازی شود.

دستگاه Matter فقط در سناریوهای خاصی از «شناسه فروشنده» و نوع دستگاه می‌تواند در بوم‌سازگان Google Home جفت شود.

  • از شناسه VID آزمایشی نمی‌توان در دستگاه مصرف‌کننده استفاده کرد.
  • VID تولید شما باید توسط Connectivity Standards Alliance (Alliance) صادر شده باشد. Google پیش‌از اینکه بتوانید از آن VID در Google Home Developer Console استفاده کنید، تأیید می‌کند که شما مالک آن هستید. وقتی این اتفاق افتاد، می‌توانید برای آن VID ادغام ایجاد کنید.
  • برای اهداف توسعه و Field Trial، پروژه و ادغام با ترکیب VID و PID مربوطه باید در Developer Console ایجاد شود. کاربری که دستگاه را راه‌اندازی می‌کند باید عضو پروژه باشد یا در فهرست کاربران Field Trial قرار داشته باشد.
  • کاربران مصرف‌کننده فقط زمانی می‌توانند از محصول شما استفاده کنند که توسط Alliance گواهی شده باشد.

از VID و PID فقط یک‌بار می‌توان برای یک ادغام استفاده کرد. اگر می‌خواهید از همان VID یا PID در ادغام خود استفاده کنید، باید یکی از کارهای زیر را انجام دهید:

  • ادغام را بااستفاده از VID یا PID به VID یا PID دیگری ویرایش کنید.
  • یکپارچه‌سازی را بااستفاده از VID یا PID حذف کنید.
جدول: سناریوهای جفت‌سازی شناسه فروشنده (VID) و نوع دستگاه
کدام نوع کاربران می‌توانند دستگاه را در بوم‌سازگان Google Home راه‌اندازی کنند؟
نوع VID وضعیت گواهینامه VID و ادغام کنسول تولید
(کاربران مصرف‌کننده)
توسعه
(توسعه‌دهندگان، Field Trial کاربر)
آزمایش بدون یکپارچه‌سازی در Developer Console (نمی‌تواند گواهینامه دریافت کند)
آزمایش ادغام در Developer Console وجود دارد (نمی‌تواند گواهی شود)
تولید گواهینامه ندارد، ادغام در Developer Console وجود ندارد
تولید گواهی‌نشده، ادغام در Developer Console وجود دارد
تولید در Alliance DCL تأیید شده است، ادغام در Developer Console وجود ندارد
تولید در Alliance DCL گواهی شده است و ادغام در Developer Console وجود دارد

شناسه محصول

اطلاعات مربوط به دستگاه از Matter «خوشه اطلاعات پایه» خوانده می‌شود. «شناسه محصول» کدگذاری‌شده در سفت‌افزار دستگاهتان باید با «شناسه محصول» ادغام Matter در «کنسول توسعه‌دهنده» مطابقت داشته باشد.

ویژگی‌های پشتیبانی‌نشده

برخی‌از خوشه‌های Matter هنوز برای کاربران نمایان نیستند، هرچند ممکن است سیستم از آن‌ها استفاده کند. در بیشتر موارد، این یعنی مشخصه‌هایی که ازطریق این خوشه‌ها آشکار می‌شوند برای کاربران نهایی قابل‌مشاهده نیستند:

Table: Matter clusters not exposed to users in the Google Home ecosystem
Cluster Type Clusters
Core
  • Binding ¹
  • Label
  • Fixed Label
  • User Label
  • Actions
  • Group Key
  • Localization Configuration
  • Time Format Localization
  • Unit Localization
  • Power Source Configuration
  • Power Source
  • Diagnostics clusters (Diagnostic Logs, General Diagnostics, Software Diagnostics, Thread Network Diagnostics, Wi-Fi Network Diagnostics, Ethernet Network Diagnostics)
  • Time Synchronization
  • Mode Select
Application
  • Groups and Scenes are not directly supported. Equivalent functionality is available via Routines.
  • All Media clusters. Equivalent functionality is available via Google Cast.

¹ برای اطلاع از اینکه این موضوع چه تأثیری بر «کلیدهای روشن/خاموش چراغ» دارد، کلیدهای روشن/خاموش چراغ را ببینید.