मैटर वर्चुअल डिवाइस

Matter डिवाइस के लिए SDK टूल

Matter वर्चुअल डिवाइस, Matter समाधानों को डेवलप करने और उनकी जांच करने के लिए काम के होते हैं. इन्हें Google Home app (GHA) का इस्तेमाल करके चालू किया जा सकता है. साथ ही, इन्हें GHA और Google Assistant का इस्तेमाल करके कंट्रोल किया जा सकता है, ठीक वैसे ही जैसे Matter डिवाइसों को कंट्रोल किया जाता है.

ऐप्लिकेशन डेवलपर और अन्य लोगों को वर्चुअल Matter डिवाइस की जांच करने या उसका एमुलेटर बनाने की ज़रूरत होती है. हालांकि, उनके पास अपना फिज़िकल या वर्चुअल Matter डिवाइस बनाने के संसाधन नहीं होते. ऐसे में, Google उन्हें Matter Virtual Device (MVD) उपलब्ध कराता है. MVD, Linux या macOS के लिए एक हल्का स्टैंडअलोन डेस्कटॉप टूल है. यह अलग-अलग तरह के वर्चुअल Matter डिवाइसों को सिम्युलेट करता है. साथ ही, वर्चुअल Matter डिवाइस की स्थितियों को कंट्रोल और दिखाने के लिए, ग्राफ़िकल यूज़र इंटरफ़ेस (जीयूआई) उपलब्ध कराता है.

किसी फ़िज़िकल Matter डिवाइस के उलट, MVD किसी Matter फ़ैब्रिक से जुड़ने के लिए, ब्लूटूथ® स्मार्ट (बीएलई) या Thread® पर निर्भर नहीं करता. इसके बजाय, यह कमिशन करने के लिए, होस्ट Linux या macOS मशीन के मौजूदा वाई-फ़ाई नेटवर्क कनेक्शन का इस्तेमाल करती है.

अन्य टूल की तुलना में

MVD, Virtual Device Controller (VDC) से इस मायने में अलग है कि यह एक ऐसा समाधान है जिसमें वर्चुअल डिवाइस को कंट्रोल करने के लिए, यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल किया जाता है. इसके उलट, VDC का इस्तेमाल किसी अलग वर्चुअल Matter डिवाइस को कंट्रोल करने के लिए किया जाता है. जैसे, वह डिवाइस जिसे हम Matter Virtual Device Development Environment (MVD-DE) में बनाते हैं.

हो सकता है कि आपने पहले ही MVD-DE कोडलैब का इस्तेमाल किया हो. इस कोडलैब में, एक तरह का वर्चुअल डिवाइस बनाया जाता है-स्मार्ट बल्ब. इसके मुकाबले, MVD में पहले से बने कई वर्चुअल डिवाइस होते हैं. साथ ही, इन डिवाइसों को चलाने और कंट्रोल करने के लिए, इसमें एक इंटिग्रेटेड यूज़र इंटरफ़ेस (यूआई) भी होता है.

टेबल: वर्चुअल Matter डिवाइस टूल की तुलना
MVD VDC MVD-DE (कोडलैब)
Matter डिवाइस को एम्युलेट करना
एम्युलेट किए गए Matter डिवाइस को कंट्रोल करना
डेवलपमेंट के लिए ज़रूरी प्रयास
डाउनलोड करें 100 एमबी से कम 9 जीबी 20 जीबी

वे डिवाइस जिन पर YouTube TV इस्तेमाल किया जा सकता है

MVD, इन Matter डिवाइस टाइप के साथ काम करता है:

के लिए काम करने वाले डिवाइस के टाइप
टेबल: Matter MVD
Matter डिवाइस का टाइप ऐप्लिकेशन क्लस्टर होम नेटवर्क का टाइप
बुनियादी वीडियो प्लेयर 0x0006
0x0506
0x0509
टीवी
कलर टेंपरेचर लाइट 0x0300
0x0008
0x0006
हल्की
संपर्क सेंसर 0x0045
Sensor
रोशनी कम करने की सुविधा 0x0008
0x0006
हल्की
दरवाज़ा लॉक करना 0x0101
लॉक करें
एक्सटेंडेड कलर लाइट 0x0300
0x0008
0x0006
हल्की
पंखा 0x0202
0x0006
फ़ैन
फ़्लो सेंसर 0x0404
Sensor
सामान्य स्विच 0x003b
स्विच करें
नमी का पता लगाने वाला सेंसर 0x0405
Sensor
लाइट सेंसर 0x0400
Sensor
होम में लोगों की मौजूदगी का पता लगाने वाला सेंसर 0x0406
Sensor
लाइट चालू/बंद करना 0x0008
0x0006
हल्की
लाइट स्विच को चालू/बंद करना 0x0006
स्विच करें
चालू/बंद प्लग-इन यूनिट 0x0008
0x0006
आउटलेट
प्रेशर सेंसर 0x0403
Sensor
पंप 0x0006
0x0200
0x0402
0x0403
0x0404
वॉटर-पंप
रोबोटिक वैक्यूम क्लीनर 0x0054
0x0055
0x0061
Vacuum
कमरे में एयर कंडिशनर 0x0006
0x0201
0x0202
Ac
धुएं और कार्बन मोनोऑक्साइड का अलार्म 0x005C
धुआं
तापमान मापने वाला सेंसर 0x0402
Sensor
थर्मोस्टैट 0x0201
थर्मोस्टैट
खिड़की के लिए कवर 0x0102
ब्लाइंड

MVD इंस्टॉल करना

MVD, 64-बिट x86 प्रोसेसर वाली उन मशीनों पर काम करता है जिनमें Debian (11 या उसके बाद का वर्शन), Ubuntu (20.04 या उसके बाद का वर्शन) या macOS है.

Linux

MVD Debian (.deb) पैकेज डाउनलोड करें

एआरमर किया गया ASCII हस्ताक्षर (.asc) फ़ाइल डाउनलोड करें

इसके बाद, MVD Debian (.deb) पैकेज इंस्टॉल करने के लिए, dpkg चलाएं:

sudo dpkg -i mvd_1.4.0_amd64.deb

macOS

MVD (macOS x86) dmg फ़ाइल डाउनलोड करना

MVD (ARM64 M1) dmg फ़ाइल डाउनलोड करना

इसके बाद, इंस्टॉलेशन विंडो खोलने के लिए, dmg फ़ाइल पर दो बार क्लिक करें.

इंस्टॉलेशन पूरा करने के लिए, mvd आइकॉन को चुनें और Applications फ़ोल्डर में खींचें और छोड़ें:

macOS इंस्टॉल करना

पोर्ट के इस्तेमाल की जानकारी देखना

MVD में मौजूद कंट्रोलर मॉड्यूल, वर्चुअल डिवाइस पर आरपीसी कॉल करने के लिए टीसीपी पोर्ट 33000 का इस्तेमाल करता है. इसलिए, अगर आपके कंप्यूटर पर यह पोर्ट पहले से ही किसी दूसरी प्रोसेस के इस्तेमाल में है, तो उसे खाली कर लें.

यह देखने के लिए कि कोई प्रोसेस पोर्ट 33000 का इस्तेमाल कर रही है या नहीं:

Linux

sudo fuser -v 33000/tcp

macOS

lsof -i:33000

टीसीपी पोर्ट 33000 का इस्तेमाल करके, किसी भी प्रोसेस को एक ही कमांड से बंद किया जा सकता है:

Linux

sudo fuser -k 33000/tcp

macOS

lsof -ti:33000 | xargs kill

MVD चलाना

Linux

Linux पर, अपने ऐप्लिकेशन फ़ोल्डर या टर्मिनल से MVD चलाएं:

mvd

macOS

macOS पर, MVD खोलने के लिए Launchpad का इस्तेमाल करें या टर्मिनल से MVD चलाएं:

cd /Applications
open mvd.app

अपना डिवाइस कॉन्फ़िगर करना

लॉन्च होने पर मुख्य स्क्रीन दिखती है. यहां वर्चुअल डिवाइस को कॉन्फ़िगर किया जा सकता है:

  • डिवाइस टाइप: डिवाइस का टाइप चुनें. उदाहरण के लिए, लाइट, स्विच, सेंसर वगैरह.
  • डिवाइस का नाम: डिवाइस को कोई ऐसा नाम दें जो उपयोगकर्ता के लिए आसान हो.
  • डिस्क्रिमिनेटर: यह 12-बिट का एक नंबर होता है. इसका इस्तेमाल, कमिशन वाले कई डिवाइस विज्ञापनों के बीच अंतर करने के लिए किया जाता है. (डिफ़ॉल्ट: 3840).
  • Matter पोर्ट: Matter के लिए एक पोर्ट, आईपी नेटवर्क के ज़रिए कमिशन करने और कम्यूनिकेट करने के लिए. Matter डिफ़ॉल्ट रूप से टीसीपी/यूडीपी पोर्ट 5540 का इस्तेमाल करता है. हालांकि, किसी दूसरे पोर्ट का इस्तेमाल करने के लिए वर्चुअल डिवाइस को कॉन्फ़िगर किया जा सकता है. ऐसा तब तक किया जा सकता है, जब तक कोई दूसरी सेवा उस पोर्ट का इस्तेमाल न कर रही हो.
  • वेंडर आईडी: सिर्फ़ टेस्ट वेंडर आईडी 0xFFF1 का इस्तेमाल किया जा सकता है.
  • प्रॉडक्ट आईडी: सिर्फ़ 0x8000 से 0x801F तक के टेस्ट प्रॉडक्ट आईडी इस्तेमाल किए जा सकते हैं.

वर्चुअल डिवाइस कॉन्फ़िगरेशन स्क्रीन

अपना फ़ायरवॉल कॉन्फ़िगर करना

Linux

अगर आपके कंप्यूटर में फ़ायरवॉल चल रहा है, तो उसे बंद करें या Matter पोर्ट पर आने वाले टीसीपी/यूडीपी कनेक्शन की अनुमति दें.

netfilter फ़ायरवॉल के चालू नियमों को देखने के लिए, यह कमांड चलाएं:

sudo iptables -L -n

अगर `ufw` का इस्तेमाल किया जा रहा है, तो इसे इन तरीकों से बंद किया जा सकता है:

sudo ufw disable

इसे इन तरीकों से फिर से चालू किया जा सकता है:

sudo ufw enable

macOS

macOS पर फ़ायरवॉल को कॉन्फ़िगर या बंद करने के लिए:

  1.  Apple मेन्यू पर जाएं और System Settings चुनें.
  2. साइडबार की सूची में, नेटवर्क पर क्लिक करें.
  3. फ़ायरवॉल पर क्लिक करें.
  4. फ़ायरवॉल के लिए स्विच को बंद करें पर टॉगल करें.

अपना डिवाइस चलाना

डिवाइस कॉन्फ़िगर होने के बाद, डिवाइस बनाएं पर क्लिक करें. डिवाइस बन जाने के बाद, कंट्रोलर स्क्रीन दिखेगी. आपने जिस डिवाइस को चुना है उसके आधार पर, आपको इनमें से एक या उससे ज़्यादा कंट्रोल दिख सकते हैं:

  • चालू/बंद: ज़्यादातर डिवाइसों में यह विकल्प होता है.
  • लेवल: उदाहरण के लिए, किसी लाइट में चमक को अडजस्ट करने के लिए लेवल स्लाइडर हो सकता है.
  • रंग: उदाहरण के लिए, रंगीन लाइट में यह कंट्रोल हो सकता है.
  • ऑक्युपेंसी: ऑक्युपेंसी सेंसर, ऑक्युपेशन या अनऑक्युपेशन की स्थिति को सिम्युलेट करने के लिए, यह कंट्रोल उपलब्ध कराता है.

सभी वर्चुअल डिवाइसों में ये कंट्रोल होते हैं:

  • QRCode: यह कमिशन करने के लिए इस्तेमाल किया जाने वाला क्यूआर कोड दिखाता है.
  • रीस्टार्ट करें: वर्चुअल डिवाइस को रीस्टार्ट करता है. डिवाइस को नेटवर्क से कुछ समय के लिए डिसकनेक्ट किया जाता है.
  • रीसेट करें: इससे मौजूदा डिवाइस को फ़ैक्ट्री-रीसेट कर दिया जाता है. साथ ही, सभी सेटिंग मिट जाती हैं. जैसे, कमीशनिंग, मौजूदा कंट्रोल की स्थिति वगैरह
  • मिटाएं: इससे डिवाइस मिट जाता है और आपको डिवाइस बनाएं स्क्रीन पर वापस ले जाया जाता है.

वर्चुअल डिवाइस कंट्रोल स्क्रीन

अपने डिवाइस को कमीशन करना

डिवाइस बनाने के बाद, उसे तुरंत कमिशन किया जा सकता है.

डिवाइस को चालू करने के लिए, कुछ ज़रूरी शर्तें पूरी करनी होती हैं:

  • आपके पास Google Home Developer Console में कोई प्रोजेक्ट होना चाहिए. इस प्रोजेक्ट में ऐसा Matter इंटिग्रेशन होना चाहिए जिसमें वही VID/PID कॉम्बिनेशन हो जिसका इस्तेमाल आपने अपने वर्चुअल डिवाइस को सेट अप करने के लिए किया था. ज़्यादा जानकारी के लिए, प्रोजेक्ट बनाने से जुड़ी गाइड देखें.

  • आपके पास Google Nest Hub होना चाहिए, जो Matter के साथ काम करता हो

  • आपके पास Android 8.1 या इसके बाद के वर्शन वाला Android फ़ोन होना चाहिए. साथ ही, उसमें GHA इंस्टॉल होना चाहिए.

  • Android फ़ोन को उसी वाई-फ़ाई नेटवर्क से कनेक्ट करना होगा जिससे हब कनेक्ट है.

  • होस्ट मशीन को वाई-फ़ाई नेटवर्क से कनेक्ट करना ज़रूरी है.

GHA का इस्तेमाल करके डिवाइस को चालू करने के लिए, डिवाइस का क्यूआर कोड दिखाने के लिए QRCode पर क्लिक करें. इसके बाद, Matter डिवाइस को जोड़ें में दिए गए निर्देशों का पालन करें. इन निर्देशों में, GHA का इस्तेमाल करके Matter डिवाइस को ऑनबोर्ड करने का तरीका बताया गया है. Google Home Sample App for Matter का इस्तेमाल करके भी डिवाइस को चालू किया जा सकता है.

Matter कोमिसिंग की सुविधा के काम करने का तरीका जानने के लिए, Matter के बारे में जानकारी देखें.

डिवाइस को कंट्रोल करना

वर्चुअल डिवाइस को चालू करने के बाद, Google Home ऐप्लिकेशन या Google Assistant की मदद से, आवाज़ का इस्तेमाल करके डिवाइस को कंट्रोल किया जा सकता है. इनमें से कोई एक विकल्प चुना जा सकता है:

  • वर्चुअल डिवाइस पर स्थिति में हुए बदलावों को मॉनिटर करते समय, GHA या Assistant की मदद से डिवाइस को कंट्रोल करें या
  • वर्चुअल डिवाइस पर स्थिति में हुए बदलावों को मॉनिटर करते समय,Sample App for Matter का इस्तेमाल करके डिवाइस को कंट्रोल करें या
  • GHA या Assistant में स्थिति में हुए बदलावों को मॉनिटर करते हुए, MVD की मदद से डिवाइस की स्थिति कंट्रोल करें.

डिवाइस से जांच करना

Assistant के साथ टेस्ट करने के लिए, हमारा सुझाव है कि आप बोली को फिर से बोलने वाले किसी सिम्युलेटर का इस्तेमाल करें. जैसे, VS Code के लिए Google Home एक्सटेंशन या Android Studio के लिए Google Home प्लग इन.

डिवाइस की जानकारी देखना

डिवाइस की जानकारी वाली स्क्रीन पर, डिवाइस की पूरी जानकारी दिखती है:

  • नाम: डिवाइस को दिया गया आसान नाम.
  • डिवाइस टाइप: चुना गया डिवाइस टाइप.
  • डिस्क्रिमिनेटर: डिवाइस का मौजूदा डिस्क्रिमिनेटर.
  • वेंडर आईडी: डिवाइस का मौजूदा वेंडर आईडी.
  • प्रॉडक्ट आईडी: डिवाइस का मौजूदा प्रॉडक्ट आईडी.
  • आरपीसी पोर्ट: यह आरपीसी पोर्ट है, जिससे डिवाइस, कंट्रोलर (जीयूआई) के साथ संपर्क करता है.
  • Matter पोर्ट: आईपी नेटवर्क के ज़रिए कम्यूनिकेट करने के लिए, मौजूदा डिवाइस का इस्तेमाल किया जाने वाला पोर्ट.
  • पास कोड: नेटवर्क से डिवाइस को चालू करने के लिए इस्तेमाल किया जाने वाला पिन.
  • कॉन्फ़िगरेशन फ़ोल्डर: यह वह फ़ोल्डर होता है जिसमें वर्चुअल डिवाइस, कॉन्फ़िगरेशन सेव करता है.
  • कमीशन की जानकारी: यह उस फ़ैब्रिक को दिखाता है जिससे डिवाइस जुड़ा है और फ़ैब्रिक में डिवाइस का नोड आईडी.

डिवाइस लॉग देखना

अगर आपने टर्मिनल से MVD लॉन्च किया है, तो लॉग आउटपुट stdout पर दिखता है. डिवाइस लॉग टैब में जाकर भी डिवाइस लॉग देखे जा सकते हैं.

डिवाइस को बंद करना

डिवाइस को बंद करने और मिटाने के लिए, मिटाएं पर क्लिक करें.

ऐप्लिकेशन को बंद करना

कंट्रोल विंडो बंद करने पर, डिवाइस का डेटा मिट जाता है और MVD ऐप्लिकेशन बंद हो जाता है. अगर आपने टर्मिनल से ऐप्लिकेशन लॉन्च किया है, तो टर्मिनल में Ctrl-C टाइप करके भी ऐप्लिकेशन को बंद किया जा सकता है.

सहायता पाएं

MVD से जुड़ी मदद पाने, गड़बड़ी की शिकायत करने या किसी नई सुविधा का अनुरोध करने के लिए, Google की सहायता टीम से संपर्क करें.

विंडो के सबसे ऊपर दाएं कोने में मौजूद, सहायता बटन पर क्लिक करने से, आपको इस पेज पर ले जाया जाता है.

गड़बड़ी की शिकायत करें

अगर आपको लगता है कि MVD में कोई गड़बड़ी है, तो विंडो के सबसे ऊपर दाएं कोने में मौजूद समस्या बटन पर क्लिक करके, गड़बड़ी की शिकायत की जा सकती है.

सुझाव भेजें

MVD में आपको क्या पसंद है या इस टूल के इस्तेमाल को कैसे बेहतर बनाया जा सकता है, इस बारे में अपने विचार सबमिट करने के लिए, सुझाव/राय/शिकायत फ़ॉर्म भरें.

फ़ॉर्म को विंडो के ऊपरी दाएं कोने में मौजूद, सुझाव/राय/शिकायत/राय बटन से या यहां दिए गए बटन पर क्लिक करके लॉन्च किया जा सकता है.

हमें सुझाव/राय दें या शिकायत करें