Matter sanal cihazları, Matter çözümlerini geliştirme ve test etme konusunda faydalıdır. Bu cihazlar, tıpkı fiziksel Matter cihazları gibi Google Home app (GHA) kullanılarak devreye alınabilir ve GHA ile Google Assistant kullanılarak kontrol edilebilir.
Google, sanal bir cihazı test etmesi veya emüle etmesi gereken ancak kendi fiziksel ya da sanal Matter cihazını oluşturmak için yeterli kaynağı olmayan uygulama geliştiriciler ve diğer kullanıcılar için Matter Virtual Device (MVD) hizmetini sunar.Matter MVD, farklı türde sanal Matter cihazları simüle eden ve sanal Matter cihazın durumlarını kontrol edip görüntülemek için grafik kullanıcı arayüzü sağlayan, hafif ve bağımsız bir Linux veya macOS masaüstü aracıdır.
Fiziksel bir Matter cihazın aksine MVD, Matter yapısına katılmak için Bluetooth® Düşük Enerji (BLE) veya Thread®'i kullanmaz. Bunun yerine, devreye alma için ana makine Linux veya macOS makinesinin mevcut kablosuz ağ bağlantısını kullanır.
Diğer araçlara kıyasla
MVD, sanal bir cihazı kontrol etmek için kullanıcı arayüzüyle birleştiren bağımsız bir çözüm olmasıyla Virtual Device Controller (VDC)'dan farklıdır. Buna karşılık VDC, ayrı bir sanal Matter cihazını kontrol etmek için kullanılır.
MVD, önceden oluşturulmuş birkaç farklı sanal cihaz içerir ve bunları çalıştırıp kontrol etmek için entegre bir kullanıcı arayüzü sunar.
Desteklenen cihazlar
MVD, aşağıdaki Matter cihaz türlerini destekler:
| Matter Cihaz Türü | Uygulama kümeleri | Ev Ekosistemi Türü |
|---|---|---|
| Hava Temizleyici |
0x0202 0x0006 0x0071 0x0072 |
Hava Temizleyici |
| Hava Kalitesi Sensörü |
0x005b 0x0402 0x0405 0x040c 0x040d 0x042a 0x042b 0x042c 0x042d 0x042e 0x042f 0x0413 0x0415 |
Sensör |
| Temel Video Oynatıcı |
0x0006 0x0506 0x0509 |
Televizyon |
| Renk Sıcaklığı Işığı |
0x0300 0x0008 0x0006 |
Açık |
| Kontak Sensörü |
0x0045 |
Sensör |
| Parlaklığı Ayarlanabilir Işık |
0x0008 0x0006 |
Açık |
| Parlaklığı Ayarlanabilir Eklenti Birimi |
0x0006 0x0008 |
Priz |
| Bulaşık makinesi |
0x0006 0x0059 0x0056 0x0060 |
Bulaşık makinesi |
| Kapı Kilidi |
0x0101 |
Kilitleme |
| Genişletilmiş Renkli Işık |
0x0300 0x0008 0x0006 |
Açık |
| Vantilatör |
0x0202 0x0006 |
Takipçi |
| Akış Sensörü |
0x0404 |
Sensör |
| Genel Anahtar |
0x003b |
Geçiş yapma |
| Nem Sensörü |
0x0405 |
Sensör |
| Çamaşır Makinesi |
0x0006 0x0051 0x0053 0x0056 0x0060 |
Çamaşır makinesi |
| Işık Sensörü |
0x0400 |
Sensör |
| Varlık Sensörü |
0x0406 |
Sensör |
| Açma/Kapama Işığı |
0x0008 0x0006 |
Açık |
| Açma/Kapatma Işık Anahtarı |
0x0006 |
Geçiş yapma |
| Açma/Kapama Eklenti Birimi |
0x0008 0x0006 |
Priz |
| Basınç Sensörü |
0x0403 |
Sensör |
| Pompa |
0x0006 0x0200 0x0402 0x0403 0x0404 |
Pompa |
| Robot Süpürge |
0x0054 0x0055 0x0061 |
Elektrikli süpürge |
| Oda Kliması |
0x0006 0x0201 0x0202 |
Klima |
| Duman ve Karbonmonoksit Alarmı |
0x005C |
Karbonmonoksit Dedektörü
Duman Dedektörü |
| Sıcaklık Sensörü |
0x0402 |
Sensör |
| Termostat |
0x0201 |
Termostat |
| Pencere Örtü Sistemi |
0x0102 |
Stor perdeler |
MVD'yi yükleme
MVD, Debian (13 Trixie veya üzeri), Ubuntu (20.04 Noble Numbat veya üzeri) ya da macOS çalıştıran 64 bit x86 işlemci makinelerinde çalışır.
Linux
MVD Debian (.deb) paketini indirme
Zırhlı ASCII imza (.asc) dosyasını indirme
Ardından MVD Debian (.deb) paketini yüklemek için dpkg komutunu çalıştırın:
sudo dpkg -i mvd_1.7.0_amd64.debmacOS
MVD (macOS x86) dmg dosyasını indirme
MVD (ARM64 M1) dmg dosyasını indirme
Ardından, yükleme penceresini açmak için dmg dosyasını çift tıklayın.
Yüklemeyi tamamlamak için mvd simgesini seçip Applications klasörüne sürükleyin:
Bağlantı noktası kullanımını kontrol etme
MVD içindeki denetleyici modülü, sanal cihaza RPC çağrıları yapmak için TCP bağlantı noktası 33000'i kullanır. Bu bağlantı noktası bilgisayarınızdaki başka bir işlem tarafından kullanılıyorsa bağlantı noktasını boşalttığınızdan emin olun.
33000 numaralı bağlantı noktasını kullanan bir işlem olup olmadığını görmek için:
Linux
sudo fuser -v 33000/tcpmacOS
lsof -i:33000TCP bağlantı noktası 33000'i kullanan tüm işlemleri tek bir komutla sonlandırabilirsiniz:
Linux
sudo fuser -k 33000/tcpmacOS
lsof -ti:33000 | xargs killMVD'yi çalıştırma
Linux
Linux'ta, uygulamalar klasörünüzden veya terminalden MVD komutunu çalıştırın:
mvdmacOS
macOS'te MVD uygulamasını açmak için Launchpad'i kullanın veya terminalden MVD komutunu çalıştırın:
cd /Applicationsopen mvd.app
Cihazınızı yapılandırma
Başlatıldığında ana ekran görünür ve sanal bir cihaz yapılandırmanıza olanak tanır:
- Cihaz Türü: Cihaz türünü seçin (ör. Işık, Anahtar, Sensör vb.).
- Cihaz Adı: Cihaza kullanıcı dostu bir ad verin.
- Ayırt edici: Birden fazla devreye alınabilir cihaz reklamını ayırt etmek için kullanılan 12 bitlik bir sayı. (Varsayılan:
3840). - Matter Bağlantı Noktası: Matter IP ağları üzerinden devreye alma ve iletişim için kullanılan bir bağlantı noktası. Matter varsayılan olarak TCP/UDP bağlantı noktası 5540'ı kullanır ancak sanal cihazı, başka bir hizmet tarafından kullanılmadığı sürece farklı bir bağlantı noktası kullanacak şekilde yapılandırabilirsiniz.
- Tedarikçi kimliği: Yalnızca test tedarikçi kimliği
0xFFF1desteklenir. - Ürün Kimliği: Yalnızca
0x8000ile0x801Farasındaki test ürün kimlikleri desteklenir.
Güvenlik duvarınızı yapılandırma
Linux
Bilgisayarınızda çalışan bir güvenlik duvarı varsa bunu kapatın veya Matter bağlantı noktasında gelen TCP/UDP bağlantılarına izin verin.
Mevcut etkin netfilter güvenlik duvarı kurallarını görüntülemek için şu komutu çalıştırın:
sudo iptables -L -n`ufw` kullanıyorsanız şu komutla devre dışı bırakabilirsiniz:
sudo ufw disableAşağıdaki komutla yeniden etkinleştirilebilir:
sudo ufw enablemacOS
macOS'te güvenlik duvarını yapılandırmak veya devre dışı bırakmak için:
- Apple menüsüne gidip Sistem Ayarları'nı seçin.
- Kenar çubuğu listesinde Ağ'ı tıklayın.
- Firewall'u (Güvenlik duvarı) tıklayın.
- Güvenlik duvarı anahtarını Kapalı konumuna getirin.
Cihazınızı çalıştırma
Cihaz yapılandırıldıktan sonra Create device'ı (Cihaz oluştur) tıklayın. Cihaz oluşturulduğunda Kumanda ekranı görünür. Seçtiğiniz cihaz türüne bağlı olarak aşağıdaki kontrollerden birini veya daha fazlasını görebilirsiniz:
- Açma/Kapatma: Cihazların çoğunda ortaktır.
- Seviye: Örneğin, bir ışığın parlaklığını ayarlamak için seviye kaydırma çubuğu olabilir.
- Renk: Örneğin, renkli bir ışıkta bu kontrol bulunabilir.
- Varlık: Varlık sensörü, dolu veya boş durumunu simüle etmek için bu kontrolü sunar.
Tüm sanal cihazlarda aşağıdaki kontroller bulunur:
- QRCode: Devreye alma için kullanılan QR kodunu gösterir.
- Yeniden başlat: Sanal cihazı yeniden başlatır. Cihazın ağ bağlantısı kısa bir süreliğine kesilir.
- Sıfırla: Mevcut cihazı fabrika ayarlarına sıfırlar ve devreye alma, mevcut kontrollerin durumu vb. dahil tüm durumları temizler.
- Delete (Sil): Cihazı siler ve Create device (Cihaz oluştur) ekranına döner.
Üreticiye özgü özellikler
Üreticiye özel (MS) özellikler, Android için Home API'leri tarafından desteklenir ve Matter içindeki standart özelliklerin ötesinde ek işlevler sağlar. MS özelliğine sahip bir cihazı test etmek için MVD, Özel Kümeler adlı bölümdeki özelliklerle etkileşim kurmanıza olanak tanır (yukarıdaki resme bakın).
Cihazınızı devreye alma
Cihaz, oluşturulduğu anda devreye alınabilir.
Cihazı devreye almak için birkaç ön koşul vardır:
Google Home Developer Console içinde bir projeniz olmalıdır. Bu proje, sanal cihazınızı ayarlarken kullandığınız VID/PID kombinasyonuna sahip bir Matter entegrasyonu içermelidir. Ayrıntılar için proje oluşturma kılavuzuna bakın.
Matter'ı destekleyen bir Google Nest Hub'ınız olmalıdır.
Android 8.1 veya sonraki sürümlerin yüklü olduğu ve GHA uygulamasının bulunduğu bir Android telefonunuz olmalıdır.
Android telefon, hub ile aynı kablosuz ağa bağlı olmalıdır.
Ana makine, kablosuz ağa bağlı olmalıdır.
Cihazı GHA kullanarak devreye almak için QRCode'nu tıklayarak cihazın QR kodunu görüntüleyin, ardından Matter cihazı eşleme bölümündeki talimatları uygulayın. Bu bölümde, GHA kullanarak Matter cihazın ilk katılımının nasıl yapılacağı açıklanmaktadır. Cihazı Google Home Sample App for Matter kullanarak da devreye alabilirsiniz.
MatterDevreye alma işleminin nasıl çalıştığını öğrenmek için Mattertemel bilgiler sayfamıza göz atın.
Cihazı kontrol etme
Sanal bir cihazı devreye aldıktan sonra Google Home uygulamasını veya Google Asistan'ı sesinizle kullanarak cihazı kontrol edebilirsiniz. Aşağıdaki yöntemlerden birini uygulayabilirsiniz:
- Sanal cihazdaki durum değişikliklerini izlerken cihazı GHA veya Assistant üzerinden kontrol etme ya da
- Sanal cihazdaki durum değişikliklerini izlerken Sample App for Matter kullanarak cihazı kontrol edin veya
- MVD veya Assistant'deki durum değişikliklerini izlerken cihaz durumunu GHA üzerinden kontrol edin.
Cihazla test etme
Assistant ile test yapmak için VS Code için Google Home Uzantısı veya Android Studio için Google Home Eklentisi gibi bir ifade simülatörü kullanmanızı öneririz.
Cihaz ayrıntılarını görüntüleme
Cihaz ayrıntıları ekranında ayrıntılı cihaz bilgileri gösterilir:
- Ad: Cihaza verilen kolay ad.
- Cihaz Türü: Seçilen cihaz türü.
- Ayrıştırıcı: Mevcut cihaz ayrıştırıcısı.
- Satıcı kimliği: Mevcut cihaz satıcı kimliği.
- Ürün kimliği: Mevcut cihaz ürün kimliği.
- RPC Port (RPC Bağlantı Noktası): Cihazın denetleyicilerle (GUI) iletişim kurduğu RPC bağlantı noktası.
- Matter Bağlantı Noktası: Mevcut cihazın IP ağı üzerinden iletişim kurmak için kullandığı bağlantı noktası.
- Şifre Kodu: Cihazı ağ üzerinden devreye almak için kullanılan PIN.
- Configuration Folder (Yapılandırma Klasörü): Sanal cihazın yapılandırmayı depoladığı klasör.
- Komisyon Bilgileri: Cihazın katıldığı yapıyı ve cihazın yapıdaki düğüm kimliğini gösterir.
Cihaz günlüklerini görüntüleme
MVD uygulamasını terminalden başlattıysanız günlük çıkışı stdout üzerinde görünür.
Cihaz günlüklerini Cihaz günlükleri sekmesinde de görüntüleyebilirsiniz.
Cihazı durdurma
Cihazı durdurup imha etmek için Sil'i tıklayın.
Uygulamayı sonlandırma
Kontrol penceresi kapatıldığında cihaz imha edilir ve MVD uygulaması sonlandırılır. Uygulamayı terminalden başlattıysanız terminale Ctrl-C yazarak da uygulamayı sonlandırabilirsiniz.
Yardım alın
MVD ile ilgili yardım almak, hata bildirmek veya yeni bir özellik isteğinde bulunmak için Google destek ekibindeki temsilcinizle iletişime geçin.
Pencerenin sağ üst köşesindeki yardım düğmesini tıkladığınızda bu sayfaya yönlendirilirsiniz.
Hata bildir
MVD içinde bir hata bulduğunuzu düşünüyorsanız pencerenin sağ üst köşesindeki Sorun düğmesini tıklayarak hata bildiriminde bulunabilirsiniz.
Geri bildirim gönder
MVD ile ilgili beğendiğiniz özellikler veya araçla ilgili deneyiminizi nasıl iyileştirebileceğimiz hakkındaki düşüncelerinizi göndermek için geri bildirim formumuzu doldurun.
Formu, pencerenin sağ üst köşesindeki geri bildirim düğmesinden veya aşağıdaki düğmeyi tıklayarak açabilirsiniz.
MVD kullanırken alt kısımda açılan anket aracılığıyla da geri bildirim gönderebilirsiniz.