המכשירים הווירטואליים של Matter שימושיים לפיתוח ולבדיקה של פתרונות Matter, ואפשר להזמין אותם באמצעות Google Home app (GHA) ולשלוט בהם באמצעות GHA ו-Google Assistant, בדיוק כמו מכשירי Matter פיזיים.
מפתחי אפליקציות ואנשים אחרים שצריכים לבדוק או לחקות מכשיר Matter וירטואלי, אבל אין להם את המשאבים לבנות מכשיר Matter פיזי או וירטואלי, Google מציעה את Matter Virtual Device (MVD). MVD הוא כלי עצמאי וקומפקטי למחשבים שולחניים של Linux שמדמה סוגים שונים של מכשירי Matter וירטואליים ומספק ממשק משתמש גרפי לשליטה ולהצגה של המצבים של מכשיר Matter הווירטואלי.
בניגוד למכשיר Matter פיזי, MVD לא מסתמך על Bluetooth® Low Energy (BLE) או Thread® כדי להצטרף לבד של Matter. במקום זאת, הוא משתמש בחיבור רשת ה-Wi-Fi הקיים של מחשב ה-Linux המארח לצורך הזמנה.
בהשוואה לכלים אחרים
MVD שונה מ-Virtual Device Controller (VDC) בכך שהוא פתרון עצמאי, שמשלב מכשיר וירטואלי עם ממשק משתמש שמאפשר לשלוט בו. לעומת זאת, ה-VDC משמש לשליטה במכשיר Matter וירטואלי נפרד, כמו המכשיר שאנחנו בונים ב-Matter Virtual Device Development Environment (MVD-DE).
יכול להיות שכבר עבדתם עם ה-Codelab של MVD-DE. ב-Codelab הזה, אתם בונים סוג יחיד של מכשיר וירטואלי – נורה חכמה. לעומת זאת, MVD מכיל כמה מכשירים וירטואליים שונים שנבנו מראש, וכולל ממשק משתמש משולב להפעלה ולשליטה בהם.
MVD | VDC | MVD-DE (Codelab) | |
---|---|---|---|
אמולציה של מכשיר בתקן Matter | |||
שליטה במכשיר Matter באמולציה | |||
נדרש מאמץ פיתוח | |||
הורדה | פחות מ-100MB | 9 GB | 20 GB |
מכשירים נתמכים
נכון לעכשיו, ב-MVD יש תמיכה בסוגי המכשירים הבאים (Matter):
סוג המכשיר Matter | אשכולות של אפליקציות | סוג המערכת האקולוגית הביתית |
---|---|---|
נורית לטמפרטורת צבע |
0x0300 0x0008 0x0006 |
בהיר |
תאורה עם אפשרות עמעום |
0x0008 0x0006 |
בהיר |
תאורת צבע מורחבת |
0x0300 0x0008 0x0006 |
בהיר |
חיישן נוכחות |
0x0406 |
חיישן |
תאורה כבויה/פועלת |
0x0008 0x0006 |
בהיר |
הפעלה/כיבוי של יחידת פלאגין |
0x0008 0x0006 |
שקע |
התקנת MVD
MVD פועל במכונות של מעבד 64 ביט x86 עם Debian (גרסה 11 ואילך) או Ubuntu (בגרסה 20.04 ואילך).
כדי להתקין אותה:
להורדת חבילת MVD Debian (.deb)
הורדת הקובץ של Armored-ASCII (.asc)
לאחר מכן מריצים את dpkg
כדי להתקין את חבילת MVD Debian (.deb):
sudo dpkg -i mvd_1.1.0_amd64.deb
בדיקת השימוש ביציאה
מודול הבקר ב-MVD משתמש ביציאת TCP 33000 כדי לבצע קריאות RPC למכשיר הווירטואלי, כך שאם היציאה הזו כבר נמצאת בשימוש בתהליך אחר במחשב, חשוב לפנות אותה.
כדי לראות אם תהליך כלשהו משתמש ביציאה 33000:
sudo fuser -v 33000/tcp
אפשר לסגור כל תהליך באמצעות יציאת ה-TCP 33000 באמצעות פקודה אחת:
sudo fuser -k 33000/tcp
הרצת MVD
מריצים את הפקודה MVD מתיקיית האפליקציות או מהמסוף:
mvd
הגדרת המכשיר
המסך הראשי מופיע בזמן ההפעלה, ומאפשר להגדיר מכשיר וירטואלי:
- סוג המכשיר: בוחרים את סוג המכשיר (לדוגמה, אור, מתג, חיישן וכו').
- שם המכשיר: מומלץ לתת למכשיר שם ידידותי למשתמש.
- Discriminator: מספר של 12 ביט שמשמש להבחנה בין
כמה פרסומות למכשירים שאפשר להזמין תמורתם. (ברירת המחדל:
3840
). - יציאה אחת (Matter): יציאה ל-Matter שירותי הזמנה ותקשורת דרך רשתות IP. תקן Matter משתמש ביציאת TCP/UDP כברירת מחדל, אבל אפשר להגדיר את המכשיר הווירטואלי להשתמש ביציאה אחרת, כל עוד אין שירות אחר שמשתמש בו.
- מזהה ספק: בשלב הזה יש תמיכה רק במזהה ספק הבדיקה
0xFFF1
. - מזהה מוצר: בשלב הזה יש תמיכה רק במזהי מוצרים לבדיקה
0x8000
עד0x801F
.
הגדרה של חומת האש
אם פועלת חומת אש במחשב, צריך לכבות אותו או לאפשר חיבורי TCP/UDP נכנסים ביציאת Matter.
כדי להציג את הכללים הפעילים הנוכחיים של netfilter לחומת האש, מריצים את הקוד:
sudo iptables -L -n
הערה: אם משתמשים ב-ufw
, אפשר להשבית אותו באמצעות:
sudo ufw disable
אפשר גם להפעיל אותו מחדש באמצעות:
sudo ufw enable
הפעלת המכשיר
לאחר הגדרת המכשיר, לוחצים על יצירת מכשיר. כשיוצרים את המכשיר, מופיע המסך Controller. בהתאם לסוג המכשיר שבחרתם, ייתכן שתראו את אחד או יותר מאמצעי הבקרה הבאים:
- מופעל/כבוי: נפוץ לרוב המכשירים.
- רמה: לדוגמה, אפשר להשתמש בפס ההזזה כדי לכוון את הבהירות.
- צבע: לדוגמה, אפשר לשלוט בהגדרה הזו באמצעות נורה צבעונית.
- תפוסה: חיישן התפוסה מציע את אמצעי הבקרה הזה, כדי לדמות את המצב 'יש פנוי/ה'.
בכל המכשירים הווירטואליים יש את אמצעי הבקרה הבאים:
- QRCode: מציג את קוד ה-QR שמשמש להזמנה.
- הפעלה מחדש: הפעלה מחדש של המכשיר הווירטואלי. המכשיר ינותק מהרשת לזמן קצר.
- איפוס: איפוס המכשיר הנוכחי להגדרות המקוריות ומחיקה של כל המצבים, כולל הפעלה, מצב הפקדים הנוכחי וכו'
- מחיקה: המכשיר משמיד את המכשיר וחוזר למסך יצירת מכשיר.
עמלה של המכשיר
אפשר לקבל עמלה על המכשיר מיד לאחר יצירתו.
יש כמה דרישות מוקדמות להזמנת המכשיר:
צריך להיות לך פרויקט ב-Google Home Developer Console. הפרויקט צריך להכיל שילוב של Matter עם שילוב VID/PID שזהה לזה שבו השתמשתם כשהגדרתם את המכשיר הווירטואלי. לפרטים נוספים, ראו מדריך ליצירת פרויקטים.
צריך להיות לכם מכשיר Google Nest Hub שתומך ב-Matter
טלפון Android עם Android מגרסה 8.1 ואילך צריך להיות מותקן עם GHA.
טלפון Android צריך להיות מחובר לאותה רשת Wi-Fi שאליה מחובר הרכזת.
המחשב המארח צריך להיות מחובר לרשת ה-Wi-Fi.
כדי להזמין את המכשיר באמצעות GHA, לוחצים על QRCode ומציגים את קוד ה-QR של המכשיר. לאחר מכן פועלים לפי ההוראות בקטע התאמה של מכשיר Matter, שמסבירות איך לצרף מכשיר Matter באמצעות GHA. אפשר גם להפעיל את המכשיר באמצעות Google Home Sample App for Matter.
עיינו בMatter מדיניות העבודה שלנו כדי להבין איך Matter עובד הנציבות.
שליטה במכשיר
אחרי שמזמינים מכשיר וירטואלי, אפשר לשלוט במכשיר באמצעות אפליקציית Google Home או Google Assistant באמצעות הקול. אתם יכולים:
- לשלוט במכשיר דרך GHA או Assistant תוך מעקב אחר שינויים במצב במכשיר הווירטואלי, או
- לשלוט במכשיר באמצעות Sample App for Matter ולעקוב אחרי שינויי מצב במכשיר הווירטואלי,או
- אפשר לשלוט במצב המכשיר דרך MVD עצמו, תוך כדי מעקב אחר השינויים במצבים ב-GHA או ב-Assistant.
בדיקה באמצעות המכשיר
כדי לבצע בדיקה באמצעות Assistant, מומלץ להשתמש בסימולטור דיבור כמו Google Home Extension for VS Code או Google Home Plugin for Android Studio.
הצגת פרטי המכשיר
במסך פרטי המכשיר מוצג מידע מפורט על המכשיר:
- שם: השם הידידותי שניתן למכשיר.
- סוג מכשיר: סוג המכשיר שנבחר.
- דיסקרימינטור: הדיסקרימינטור הנוכחי של המכשיר.
- מזהה ספק: מזהה הספק הנוכחי של המכשיר.
- מזהה מוצר: מזהה המוצר הנוכחי של המכשיר.
- יציאת RPC: יציאת ה-RPC שהמכשיר מתקשר עם הבקרים (GUI).
- יציאה Matter: היציאה שבה משתמש המכשיר הנוכחי כדי לתקשר באמצעות רשת IP.
- קוד גישה: קוד האימות שמשמש להפעלת המכשיר דרך הרשת.
- Configuration Folder: התיקייה שבה נשמרים ההגדרות האישיות של המכשיר הווירטואלי.
- מידע על עמלה: הצגת הבדים שהמכשיר הצטרף אליהם ומזהה הצומת של המכשיר במארג
צפייה ביומני המכשיר
אם הפעלת את MVD מהטרמינל, פלט היומן יופיע ב-stdout
.
אתם יכולים להציג את יומני המכשיר גם בכרטיסייה יומני המכשיר.
עצירת המכשיר
כדי לעצור ולהשמיד את המכשיר, לוחצים על מחיקה.
לסגור את האפליקציה
סגירה של חלון הבקרה מוחקת את המכשיר וסוגרת את האפליקציה MVD. אם הפעלתם את האפליקציה מהמסוף, תוכלו גם להקליד Ctrl-C במסוף כדי לסגור אותה.
עזרה
כדי לקבל עזרה בקשר ל-MVD, לדווח על באג או לבקש תכונה חדשה, פנו לאיש הקשר שלכם בתמיכה של Google.
לחיצה על לחצן העזרה
בפינה השמאלית העליונה של החלון תעביר אותך לדף זה.דיווח על באג
אם לדעתכם מצאתם פגם ב-MVD, אפשר לדווח על באג בלחיצה על הלחצן 'בעיה' בפינה השמאלית העליונה של החלון.
שליחת משוב
כדי לשלוח לנו משוב על MVD או על דרכים שבהן נוכל לשפר את חוויית השימוש שלכם בכלי, אתם יכולים למלא את טופס המשוב שלנו.
כדי לפתוח את הטופס אפשר ללחוץ על לחצן המשוב
בפינה השמאלית העליונה של החלון, או על הלחצן שלמטה.