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 ফ্যাব্রিক জয়েন করার জন্য ব্লুটুথ® লো এনার্জি (BLE) বা Thread® প্রোটোকলের উপর নির্ভর করে না। এর পরিবর্তে, এটি কমিশনিংয়ের জন্য হোস্ট Linux বা macOS মেশিনের আগে থেকেই থাকা ওয়াই-ফাই নেটওয়ার্ক কানেকশন ব্যবহার করে।
অন্যান্য টুলের তুলনায়
MVD, Virtual Device Controller (VDC)-এর থেকে আলাদা কারণ এটি একটি স্বয়ংসম্পূর্ণ সমাধান, যা এটিকে নিয়ন্ত্রণ করার জন্য UI-এর সাথে একটি ভার্চুয়াল ডিভাইসকে একত্রিত করে। অন্যদিকে, VDC ব্যবহার করা হয় আলাদা ভার্চুয়াল Matter ডিভাইস কন্ট্রোল করতে।
MVD-এ আগে থেকেই তৈরি করা বিভিন্ন ভার্চুয়াল ডিভাইস রয়েছে এবং সেগুলি চালানোর ও নিয়ন্ত্রণ করার জন্য ইন্টিগ্রেটেড UI অন্তর্ভুক্ত।
যেসব ডিভাইসে এটি দেখা যাবে
MVD-এ নিম্নলিখিত Matter ডিভাইসের ধরন কাজ করে:
| Matter ডিভাইসের ধরন | অ্যাপ্লিকেশন ক্লাস্টার | হোম ইকোসিস্টেমের ধরন |
|---|---|---|
| এয়ার পিউরিফায়ার |
0x0202 0x0006 0x0071 0x0072 |
এয়ার পিউরিফায়ার |
| এয়ার কোয়ালিটি সেন্সর |
0x005b 0x0402 0x0405 0x040c 0x040d 0x042a 0x042b 0x042c 0x042d 0x042e 0x042f 0x0413 0x0415 |
সেন্সর |
| প্রাথমিক ভিডিও প্লেয়ার |
0x0006 0x0506 0x0509 |
টেলিভিশন |
| কালার টেম্পারেচার লাইট |
0x0300 0x0008 0x0006 |
লাইট |
| কন্ট্যাক্ট সেন্সর |
0x0045 |
সেন্সর |
| আলো কমানো যায় |
0x0008 0x0006 |
লাইট |
| ডিম করা যায় এমন প্লাগ-ইন ইউনিট |
0x0006 0x0008 |
আউটলেট |
| ডিশ ওয়াশার |
0x0006 0x0059 0x0056 0x0060 |
ডিশওয়াশার |
| ডোর লক |
0x0101 |
লক করুন |
| এক্সটেন্ডেড কালার লাইট |
0x0300 0x0008 0x0006 |
লাইট |
| ফ্যান |
0x0202 0x0006 |
ফ্যান |
| ফ্লো সেন্সর |
0x0404 |
সেন্সর |
| জেনেরিক সুইচ |
0x003b |
পরিবর্তন করুন |
| আর্দ্রতা সেন্সর |
0x0405 |
সেন্সর |
| লন্ড্রি ওয়াশার |
0x0006 0x0051 0x0053 0x0056 0x0060 |
ওয়াশার |
| লাইট সেন্সর |
0x0400 |
সেন্সর |
| অকুপেন্সি সেন্সর |
0x0406 |
সেন্সর |
| লাইট চালু/বন্ধ করা |
0x0008 0x0006 |
লাইট |
| লাইট সুইচ চালু/বন্ধ করা |
0x0006 |
পরিবর্তন করুন |
| চালু/বন্ধ করার প্লাগ-ইন ইউনিট |
0x0008 0x0006 |
আউটলেট |
| প্রেশার সেন্সর |
0x0403 |
সেন্সর |
| পাম্প |
0x0006 0x0200 0x0402 0x0403 0x0404 |
পাম্প |
| রোবট ভ্যাকুয়াম ক্লিনার |
0x0054 0x0055 0x0061 |
ভ্যাকুয়াম |
| রুম এয়ার কন্ডিশনার |
0x0006 0x0201 0x0202 |
এয়ার কন্ডিশনার |
| স্মোক ও কার্বন মনোক্সাইড অ্যালার্ম |
0x005C |
কার্বন মনোক্সাইড ডিটেক্টর
স্মোক ডিটেক্টর |
| তাপমাত্রা সেন্সর |
0x0402 |
সেন্সর |
| থার্মোস্ট্যাট |
0x0201 |
থার্মোস্ট্যাট |
| জানলার আচ্ছাদন |
0x0102 |
ব্লাইন্ড |
MVD ইনস্টল করা
MVD 64-বিট x86 প্রসেসর মেশিনে চলে, যা Debian
(13 Trixie বা তার পরের যেকোনও ভার্সন), Ubuntu (20.04 Noble Numbat বা তার পরের যেকোনও ভার্সন) বা macOS-এ চলে।
Linux
MVD Debian (.deb) প্যাকেজ ডাউনলোড করুন
আর্মরড-ASCII সিগনেচার (.asc) ফাইল ডাউনলোড করুন
তারপরে, dpkg রান করে MVD
Debian (.deb) প্যাকেজ ইনস্টল করুন:
sudo dpkg -i mvd_1.7.0_amd64.debmacOS
MVD (macOS x86) dmg ফাইল ডাউনলোড করুন
MVD (ARM64 M1) dmg ফাইল ডাউনলোড করুন
তারপরে ইনস্টলেশন উইন্ডো খুলতে dmg ফাইলে ডবল-ক্লিক করুন।
ইনস্টলেশন সম্পূর্ণ করতে, mvd আইকনটি বেছে নিয়ে টেনে এনে
Applications ফোল্ডারে রাখুন:
পোর্ট ব্যবহার চেক করা
MVD-এর কন্ট্রোলার মডিউল ভার্চুয়াল ডিভাইসে RPC কল করার জন্য TCP পোর্ট 33000 ব্যবহার করে, তাই আপনার কম্পিউটারে অন্য কোনও প্রসেস এই পোর্ট আগেই ব্যবহার করে থাকলে, সেটি ফ্রি করে নিতে ভুলবেন না।
কোনও প্রসেস পোর্ট ৩৩০০০ ব্যবহার করছে কিনা তা দেখতে:
Linux
sudo fuser -v 33000/tcpmacOS
lsof -i:33000আপনি একটি কমান্ডের মাধ্যমে TCP পোর্ট 33000 ব্যবহার করে যেকোনও প্রসেস বন্ধ করতে পারবেন:
Linux
sudo fuser -k 33000/tcpmacOS
lsof -ti:33000 | xargs killRun MVD
Linux
Linux-এ, আপনার অ্যাপ্লিকেশন ফোল্ডার থেকে অথবা টার্মিনাল থেকে MVD রান করান:
mvdmacOS
macOS-এ, MVD খুলতে Launchpad ব্যবহার করুন অথবা টার্মিনাল থেকে MVD রান করুন:
cd /Applicationsopen mvd.app
আপনার ডিভাইস কনফিগার করা
লঞ্চ করার পরে মূল স্ক্রিন দেখা যায় এবং এটি আপনাকে ভার্চুয়াল ডিভাইস কনফিগার করতে দেয়:
- ডিভাইসের ধরন: ডিভাইসের ধরন বেছে নিন (যেমন, আলো, সুইচ, সেন্সর ইত্যাদি)।
- ডিভাইসের নাম: ডিভাইসটিকে একটি ব্যবহারকারী-বান্ধব নাম দিন।
- ডিসক্রিমিনেটর: একাধিক কমিশন পাওয়ার উপযুক্ত ডিভাইস বিজ্ঞাপনের মধ্যে পার্থক্য করতে
১২-বিট সংখ্যা ব্যবহার করা হয়। (ডিফল্ট:
3840)। - Matter পোর্ট: IP নেটওয়ার্কের মাধ্যমেMatter কমিশনিং ও যোগাযোগের জন্য পোর্ট। Matter সাধারণত TCP/UDP পোর্ট 5540 ব্যবহার করে, কিন্তু আপনি ভার্চুয়াল ডিভাইসকে অন্য পোর্ট ব্যবহার করার জন্য কনফিগার করতে পারেন, তবে অন্য কোনও পরিষেবা সেটি ব্যবহার করলে চলবে না।
- ভেন্ডর আইডি: শুধুমাত্র টেস্ট ভেন্ডর আইডি
0xFFF1কাজ করে। - প্রোডাক্ট আইডি: শুধুমাত্র
0x8000থেকে0x801Fপর্যন্ত টেস্ট প্রোডাক্ট আইডি কাজ করে।
আপনার ফায়ারওয়াল কনফিগার করা
Linux
আপনার কম্পিউটারে ফায়ারওয়াল চালু থাকলে, সেটি বন্ধ করে দিন অথবা Matter পোর্টে ইনকামিং TCP/UDP কানেকশনকে অনুমতি দিন।
বর্তমান অ্যাক্টিভ netfilter ফায়ারওয়াল নিয়ম দেখতে, এগুলি রান করান:
sudo iptables -L -nআপনি `ufw` ব্যবহার করলে, এটি বন্ধ করা যেতে পারে:
sudo ufw disableএবং এটি এর মাধ্যমে আবার চালু করা যেতে পারে:
sudo ufw enablemacOS
macOS-এ ফায়ারওয়াল কনফিগার বা বন্ধ করতে:
- Apple মেনুতে গিয়ে সিস্টেম সেটিংস বিকল্প বেছে নিন।
- সাইডবার তালিকায় নেটওয়ার্ক বিকল্পে ক্লিক করুন।
- ফায়ারওয়াল বিকল্পে ক্লিক করুন।
- ফায়ারওয়ালের সুইচ টগল করে বন্ধ পজিশনে নিয়ে যান।
আপনার ডিভাইস রান করা
ডিভাইস কনফিগার করা হয়ে গেলে, ডিভাইস তৈরি করুন বিকল্পে ক্লিক করুন। ডিভাইস তৈরি করা হলে, কন্ট্রোলার স্ক্রিন দেখা যায়। আপনি যে ধরনের ডিভাইস বেছে নিয়েছেন তার উপর নির্ভর করে, আপনি নিম্নলিখিত কন্ট্রোলগুলির মধ্যে একটি বা একাধিক দেখতে পেতে পারেন:
- চালু/বন্ধ করুন: বেশিরভাগ ডিভাইসে এটি সাধারণ।
- লেভেল: যেমন, একটি লাইটে উজ্জ্বলতা অ্যাডজাস্ট করার জন্য একটি লেভেল স্লাইডার থাকতে পারে।
- রঙ: যেমন, কোনও রঙিন লাইটের এই কন্ট্রোল থাকতে পারে।
- অকুপেন্সি: অকুপেন্সি সেন্সর এই কন্ট্রোল অফার করে, যাতে অকুপাইড বা আনঅকুপাইড স্টেট সিমুলেট করা যায়।
সব ভার্চুয়াল ডিভাইসে নিম্নলিখিত কন্ট্রোল থাকে:
- QRCode: কমিশনিংয়ের জন্য ব্যবহৃত QR কোড দেখায়।
- রিবুট করুন: ভার্চুয়াল ডিভাইস রিস্টার্ট করে। ডিভাইসটি নেটওয়ার্ক থেকে কিছুক্ষণের জন্য ডিসকানেক্ট হয়ে গেছে।
- রিসেট করুন: বর্তমান ডিভাইস ফ্যাক্টরি রিসেট করে এবং কমিশনিং, বর্তমান কন্ট্রোল স্টেট ইত্যাদি সহ সব স্টেট মুছে দেয়
- মুছে দিন: ডিভাইসটি ধ্বংস করে দেয় এবং ডিভাইস তৈরি করুন স্ক্রিনে ফিরে আসে।
প্রস্তুতকারক-নির্দিষ্ট বৈশিষ্ট্য
নির্মাতা-নির্দিষ্ট (MS) ট্রেট Android-এর জন্য Home API-এর মাধ্যমে কাজ করে এবং Matter-এ উপলভ্য স্ট্যান্ডার্ড ট্রেট ছাড়াও অতিরিক্ত কার্যকারিতা প্রদান করে। MS ট্রেট সহ কোনও ডিভাইস পরীক্ষা করতে, MVD আপনাকে কাস্টম ক্লাস্টার নামের বিভাগে ট্রেটের সাথে ইন্টার্যাক্ট করতে দেয় (উপরের ছবি দেখুন)।
আপনার ডিভাইস কমিশন করা
ডিভাইস তৈরি হওয়ার সাথে সাথেই সেটি কমিশন পাওয়ার উপযুক্ত হয়ে যায়।
ডিভাইস কমিশন করার জন্য কিছু পূর্বশর্ত আছে:
আপনার অবশ্যই Google Home Developer Console-এ একটি প্রোজেক্ট থাকতে হবে। এই প্রোজেক্টে অবশ্যই Matter ইন্টিগ্রেশন থাকতে হবে, যেটির VID/PID কম্বিনেশন আপনার ভার্চুয়াল ডিভাইস সেট-আপ করার সময় ব্যবহার করা কম্বিনেশনের মতো হতে হবে। আরও বিবরণের জন্য প্রোজেক্ট তৈরি করার গাইড দেখুন।
আপনার কাছে অবশ্যই Matter কাজ করে এমন Google Nest Hub থাকতে হবে
আপনার কাছে Android 8.1 বা তার পরবর্তী যেকোনও ভার্সন সহ Android ফোন থাকতে হবে, সাথে GHA ইনস্টল করা থাকতে হবে।
Android ফোনটি অবশ্যই হাবের সাথে একই ওয়াই-ফাই নেটওয়ার্কে কানেক্ট করতে হবে।
হোস্ট মেশিনকে ওয়াই-ফাই নেটওয়ার্কের সাথে কানেক্ট করতে হবে।
GHA ব্যবহার করে ডিভাইস কমিশন করতে, ডিভাইসের QR কোড দেখতে 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 প্লাগ-ইন-এর মতো উচ্চারণ সিমুলেটর ব্যবহার করার পরামর্শ দিই।
ডিভাইসের বিবরণ দেখা
ডিভাইসের বিবরণ স্ক্রিনে ডিভাইসের বিস্তারিত তথ্য দেখানো হয়:
- নাম: ডিভাইসের জন্য দেওয়া পছন্দমতো নাম।
- ডিভাইসের ধরন: বেছে নেওয়া ডিভাইসের ধরন।
- ডিসক্রিমিনেটর: বর্তমান ডিভাইসের ডিসক্রিমিনেটর।
- ভেন্ডর আইডি: বর্তমান ডিভাইসের ভেন্ডর আইডি।
- প্রোডাক্ট আইডি: বর্তমান ডিভাইসের প্রোডাক্ট আইডি।
- RPC পোর্ট: ডিভাইসটি কন্ট্রোলারের (GUI) সাথে যে RPC পোর্টের মাধ্যমে যোগাযোগ করে।
- Matter পোর্ট: IP নেটওয়ার্কের মাধ্যমে যোগাযোগ করার জন্য বর্তমান ডিভাইসের ব্যবহার করা পোর্ট।
- পাস কোড: নেটওয়ার্কের মাধ্যমে ডিভাইস কমিশন করার জন্য ব্যবহৃত পিন।
- কনফিগারেশন ফোল্ডার: ভার্চুয়াল ডিভাইস যে ফোল্ডারে কনফিগারেশন সেভ করে।
- কমিশন সংক্রান্ত তথ্য: ডিভাইসটি যে ফ্যাব্রিক যোগ করেছে এবং ফ্যাব্রিকের মধ্যে ডিভাইসের নোড আইডি দেখায়।
ডিভাইস লগ দেখা
আপনি টার্মিনাল থেকে MVD লঞ্চ করলে, stdout-এ লগ আউটপুট দেখা যাবে।
এছাড়াও, আপনি ডিভাইস লগ ট্যাবে ডিভাইস লগ দেখতে পারবেন।
ডিভাইস বন্ধ করা
ডিভাইসটি বন্ধ ও ডেটা মুছে দিতে, মুছে দিন বিকল্পে ক্লিক করুন।
অ্যাপটি বন্ধ করে দেওয়া
কন্ট্রোল উইন্ডো বন্ধ করলে ডিভাইসটি ধ্বংস হয়ে যায় এবং MVD অ্যাপ্লিকেশনটি বন্ধ হয়ে যায়। আপনি টার্মিনাল থেকে লঞ্চ করে থাকলে, টার্মিনালে Ctrl-C টাইপ করেও অ্যাপ্লিকেশন বন্ধ করতে পারবেন।
সহায়তা পান
MVD-এর ব্যাপারে সাহায্য পেতে, কোনও বাগ সম্পর্কে অভিযোগ জানাতে অথবা নতুন ফিচারের অনুরোধ করতে, Google সহায়তা টিমের সাথে যোগাযোগ করুন।
উইন্ডোর উপরে ডানদিকের কোণে থাকা সহায়তা বোতামে ক্লিক করলে এই পৃষ্ঠায় আপনাকে নিয়ে যাওয়া হবে।
সমস্যার ব্যাপারে অভিযোগ জানান
আপনি যদি মনে করেন যে MVD-এ কোনও ত্রুটি খুঁজে পেয়েছেন, তাহলে আপনি উইন্ডোর উপরের ডানদিকের কোণে থাকা 'সমস্যা ' বোতামে ক্লিক করে একটি বাগ ফাইল করতে পারেন।
মতামত জানান
MVD সম্পর্কে আপনার কী ভালো লাগে অথবা কীভাবে টুল ব্যবহার করার অভিজ্ঞতা আরও ভালো করা যায় সেই বিষয়ে মতামত জমা দিতে, আমাদের মতামত ফর্ম পূরণ করুন।
উইন্ডোর উপরের ডানদিকের কোণে থাকা মতামত বোতামে ক্লিক করে অথবা নিচে দেওয়া বোতামে ক্লিক করে ফর্মটি লঞ্চ করা যাবে।
এছাড়াও, আপনি MVD ব্যবহার করার সময় স্ক্রিনের নিচে পপ-আপ করা সমীক্ষার মাধ্যমে মতামত জানাতে পারেন।