Perangkat Virtual Matter

Matter ; Home API

Perangkat virtual Matter berguna untuk mengembangkan dan menguji solusi Matter, serta dapat di-commission menggunakan Google Home app (GHA), dan dikontrol menggunakan GHA dan Google Assistant, sama seperti perangkat Matter fisik.

Untuk developer aplikasi dan pihak lain yang perlu menguji atau mengemulasikan perangkat Matter virtual, tetapi tidak memiliki resource untuk membuat perangkat Matter fisik atau virtual sendiri, Google menawarkan Matter Virtual Device (MVD). MVD adalah alat desktop Linux atau macOS mandiri yang ringan, yang menyimulasikan berbagai jenis perangkat Matter virtual dan menyediakan antarmuka pengguna grafis untuk mengontrol dan menampilkan status perangkat Matter virtual.

Tidak seperti perangkat Matter fisik, MVD tidak mengandalkan Bluetooth® Hemat Energi (BLE) atau Thread® untuk bergabung ke fabric Matter. Sebagai gantinya, perangkat ini menggunakan koneksi jaringan Wi-Fi yang ada di mesin Linux atau macOS host untuk commissioning.

Dibandingkan dengan alat lain

MVD berbeda dengan Virtual Device Controller (VDC) karena merupakan solusi mandiri, yang menggabungkan perangkat virtual dengan UI untuk mengontrolnya. Sebaliknya, VDC digunakan untuk mengontrol perangkat Matter virtual terpisah.

MVD berisi beberapa perangkat virtual bawaan yang berbeda dan menyertakan UI terintegrasi untuk menjalankan dan mengontrolnya.

Perangkat yang didukung

MVD mendukung jenis perangkat Matter berikut:

Tabel: Jenis perangkat Matter yang didukung untuk MVD
Jenis Perangkat Matter Cluster Aplikasi Jenis Ekosistem Rumah
Penjernih Udara 0x0202
0x0006
0x0071
0x0072
Pembersih Udara
Sensor Kualitas Udara 0x005b
0x0402
0x0405
0x040c
0x040d
0x042a
0x042b
0x042c
0x042d
0x042e
0x042f
0x0413
0x0415
Sensor
Pemutar Video Dasar 0x0006
0x0506
0x0509
Televisi
Lampu Suhu Warna 0x0300
0x0008
0x0006
Terang
Sensor Kontak 0x0045
Sensor
Lampu yang Dapat Diredupkan 0x0008
0x0006
Terang
Unit Plugin yang Dapat Diredupkan 0x0006
0x0008
Outlet
Mesin pencuci piring 0x0006
0x0059
0x0056
0x0060
Mesin pencuci piring
Kunci Pintu 0x0101
Kunci
Lampu Warna yang Diperluas 0x0300
0x0008
0x0006
Terang
Kipas 0x0202
0x0006
Kipas
Sensor Aliran 0x0404
Sensor
Sakelar Umum 0x003b
Tombol akses
Sensor Kelembapan 0x0405
Sensor
Mesin Cuci 0x0006
0x0051
0x0053
0x0056
0x0060
Mesin cuci
Sensor Cahaya 0x0400
Sensor
Sensor Kehadiran 0x0406
Sensor
Lampu On/Off 0x0008
0x0006
Terang
Sakelar Lampu On/Off 0x0006
Tombol akses
Unit Plugin On/Off 0x0008
0x0006
Outlet
Sensor Tekanan 0x0403
Sensor
Pompa 0x0006
0x0200
0x0402
0x0403
0x0404
Pompa
Robot Penyedot Debu 0x0054
0x0055
0x0061
Penyedot debu
Penyejuk Udara Ruangan 0x0006
0x0201
0x0202
AC
Alarm Asap dan Gas CO 0x005C
Detektor Gas CO
Detektor Asap
Sensor Suhu 0x0402
Sensor
Termostat 0x0201
Termostat
Penutup Jendela 0x0102
Tirai

Menginstal MVD

MVD berjalan di mesin prosesor x86 64-bit yang menjalankan Debian (13 Trixie atau yang lebih baru), Ubuntu (20.04 Noble Numbat atau yang lebih baru), atau macOS.

Linux

Download paket Debian (.deb) MVD

Download file tanda tangan ASCII lapis baja (.asc)

Kemudian, jalankan dpkg untuk menginstal paket Debian (.deb) MVD:

sudo dpkg -i mvd_1.7.0_amd64.deb

macOS

Download file dmg MVD (macOS x86)

Download file dmg MVD (ARM64 M1)

Kemudian, klik dua kali file dmg untuk membuka jendela penginstalan.

Untuk menyelesaikan penginstalan, pilih dan tarik ikon mvd ke folder Applications:

Penginstalan macOS

Memeriksa penggunaan port

Modul pengontrol di MVD menggunakan port TCP 33000 untuk melakukan panggilan RPC ke perangkat virtual. Jadi, jika port ini sudah digunakan oleh proses lain di komputer Anda, pastikan untuk mengosongkannya.

Untuk melihat apakah ada proses yang menggunakan port 33000:

Linux

sudo fuser -v 33000/tcp

macOS

lsof -i:33000

Anda dapat menghentikan proses apa pun yang menggunakan port TCP 33000 dengan satu perintah:

Linux

sudo fuser -k 33000/tcp

macOS

lsof -ti:33000 | xargs kill

Menjalankan MVD

Linux

Di Linux, jalankan MVD dari folder aplikasi atau dari terminal:

mvd

macOS

Di macOS, gunakan Launchpad untuk membuka MVD atau jalankan MVD dari terminal:

cd /Applications
open mvd.app

Mengonfigurasi perangkat

Layar utama akan muncul saat peluncuran, dan memungkinkan Anda mengonfigurasi perangkat virtual:

  • Jenis Perangkat: Pilih jenis perangkat (misalnya, Lampu, Sakelar, Sensor, dan sebagainya).
  • Nama Perangkat: Beri nama perangkat yang mudah digunakan.
  • Diskriminator: Angka 12 bit yang digunakan untuk membedakan beberapa iklan perangkat yang dapat dikomisi. (Default: 3840).
  • Port Matter: Port untuk commissioning dan komunikasi Matter melalui jaringan IP. Matter menggunakan port TCP/UDP 5540 secara default, tetapi Anda dapat mengonfigurasi perangkat virtual untuk menggunakan port lain, asalkan tidak ada layanan lain yang menggunakannya.
  • ID Vendor: Hanya ID vendor pengujian 0xFFF1 yang didukung.
  • ID Produk: Hanya ID produk pengujian 0x8000 hingga 0x801F yang didukung.

Layar konfigurasi Perangkat Virtual

Mengonfigurasi firewall

Linux

Jika Anda memiliki firewall yang berjalan di komputer, nonaktifkan atau izinkan koneksi TCP/UDP masuk di port Matter.

Untuk melihat aturan firewall netfilter yang aktif saat ini, jalankan:

sudo iptables -L -n

Jika Anda menggunakan `ufw`, fitur ini dapat dinonaktifkan dengan:

sudo ufw disable

Dan dapat diaktifkan kembali dengan:

sudo ufw enable

macOS

Untuk mengonfigurasi atau menonaktifkan firewall di macOS:

  1. Buka menu  Apple, lalu pilih System Settings.
  2. Klik Network di daftar sidebar.
  3. Klik Firewall.
  4. Alihkan tombol untuk Firewall ke posisi Nonaktif.

Menjalankan perangkat Anda

Setelah perangkat dikonfigurasi, klik Create device. Saat perangkat dibuat, layar Pengontrol akan muncul. Bergantung pada jenis perangkat yang Anda pilih, Anda mungkin melihat satu atau beberapa kontrol berikut:

  • Aktif/Nonaktif: Umum untuk sebagian besar perangkat.
  • Level: Misalnya, lampu dapat memiliki penggeser level untuk menyesuaikan kecerahan.
  • Warna: Misalnya, lampu berwarna dapat memiliki kontrol ini.
  • Occupancy: Sensor Kehadiran menawarkan kontrol ini, untuk menyimulasikan status terisi atau kosong.

Semua perangkat virtual memiliki kontrol berikut:

  • QRCode: Menampilkan kode QR yang digunakan untuk commissioning.
  • Reboot: Memulai ulang perangkat virtual. Perangkat terputus dari jaringan sebentar.
  • Reset: Mereset perangkat saat ini ke setelan pabrik dan menghapus semua status, termasuk commissioning, status kontrol saat ini, dan sebagainya
  • Delete: Menghancurkan perangkat dan kembali ke layar Create device.

Layar kontrol
Perangkat Virtual

Sifat khusus produsen

Karakteristik khusus produsen (MS) didukung oleh Home API untuk Android dan menyediakan fungsi tambahan di luar karakteristik standar di Matter. Untuk menguji perangkat dengan karakteristik MS, MVD memungkinkan Anda berinteraksi dengan karakteristik di bagian yang disebut Cluster Kustom (lihat gambar di atas).

Menyiapkan perangkat Anda

Perangkat dapat dioperasikan segera setelah dibuat.

Ada beberapa prasyarat untuk mengaktifkan perangkat:

  • Anda harus memiliki project di Google Home Developer Console. Project ini harus berisi integrasi Matter yang memiliki kombinasi VID/PID yang sama dengan yang Anda gunakan dalam menyiapkan perangkat virtual. Lihat panduan pembuatan project untuk mengetahui detailnya.

  • Anda harus memiliki Google Nest Hub yang mendukung Matter

  • Anda harus memiliki ponsel Android yang menjalankan Android 8.1 atau yang lebih baru, dengan GHA terinstal.

  • Ponsel Android harus terhubung ke jaringan Wi-Fi yang sama dengan hub.

  • Mesin host harus terhubung ke jaringan Wi-Fi.

Untuk mengaktifkan perangkat menggunakan GHA, klik QRCode untuk menampilkan kode QR perangkat, lalu ikuti petunjuk di Menyambungkan perangkat Matter yang menjelaskan cara mengaktifkan perangkat Matter menggunakan GHA. Anda juga dapat mengonfigurasi perangkat menggunakan Google Home Sample App for Matter.

Lihat Matter Primer kami untuk mempelajari cara kerja Commissioning Matter.

Mengontrol perangkat

Setelah mengaktifkan perangkat virtual, Anda dapat mengontrol perangkat menggunakan Aplikasi Google Home atau Asisten Google melalui suara. Anda dapat:

  • Kontrol perangkat melalui GHA atau Assistant sambil memantau perubahan status di perangkat virtual, atau
  • Kontrol perangkat menggunakan Sample App for Matter sambil memantau perubahan status pada perangkat virtual,atau
  • Kontrol status perangkat melalui MVD itu sendiri sambil memantau perubahan status di GHA atau Assistant.

Menguji dengan perangkat

Untuk menguji dengan Assistant, sebaiknya gunakan simulator ucapan seperti Ekstensi Google Home untuk VS Code atau Plugin Google Home untuk Android Studio.

Melihat detail perangkat

Layar Detail perangkat menampilkan informasi perangkat yang mendetail:

  • Nama: Nama yang cocok yang diberikan ke perangkat.
  • Jenis Perangkat: Jenis perangkat yang dipilih.
  • Diskriminator: Diskriminator perangkat saat ini.
  • ID Vendor: ID vendor perangkat saat ini.
  • ID Produk: ID produk perangkat saat ini.
  • Port RPC: Port RPC yang digunakan perangkat untuk berkomunikasi dengan pengontrol (GUI).
  • Port Matter: Port yang digunakan oleh perangkat saat ini untuk berkomunikasi melalui jaringan IP.
  • Kode Sandi: PIN yang digunakan untuk mengaktifkan perangkat melalui jaringan.
  • Configuration Folder: Folder tempat perangkat virtual menyimpan konfigurasi.
  • Informasi Komisi: Menampilkan fabric yang diikuti perangkat dan ID node perangkat di fabric.

Melihat log perangkat

Jika Anda meluncurkan MVD dari terminal, output log akan muncul di stdout. Anda juga dapat melihat log perangkat di tab Log perangkat.

Hentikan perangkat

Untuk menghentikan dan menghancurkan perangkat, klik Delete.

Menghentikan aplikasi

Menutup jendela kontrol akan menghancurkan perangkat dan menghentikan aplikasi MVD. Jika Anda meluncurkan dari terminal, Anda juga dapat menghentikan aplikasi dengan mengetik Ctrl-C di terminal.

Dapatkan bantuan

Untuk mendapatkan bantuan terkait MVD, melaporkan bug, atau meminta fitur baru, hubungi kontak dukungan Google Anda.

Mengklik tombol bantuan di sudut kanan atas jendela akan mengarahkan Anda ke halaman ini.

Laporkan bug

Jika Anda merasa telah menemukan cacat pada MVD, Anda dapat melaporkan bug dengan mengklik tombol Laporkan di sudut kanan atas jendela.

Kirim masukan

Untuk mengirimkan pendapat Anda tentang hal yang Anda sukai dari MVD atau cara kami dapat meningkatkan pengalaman Anda dalam menggunakan alat ini, lengkapi Formulir Masukan kami.

Formulir dapat diluncurkan dari tombol masukan di sudut kanan atas jendela, atau dengan mengklik tombol di bawah.

Kirim masukan Anda

Anda juga dapat memberikan masukan melalui survei yang muncul di bagian bawah saat Anda menggunakan MVD.