Uzak Sanal Cihaz

Madde ; Ana Sayfa API'leri

Matter sanal cihazlar, Matter çözümlerini geliştirip test etmek için kullanışlıdır. Google Home app (GHA) kullanılarak devreye alınabilir ve fiziksel Matter cihazlar gibi GHA ve Google Assistant kullanılarak kontrol edilebilir.

Uygulama geliştiriciler ve sanal bir cihazı test etmesi ya da emüle etmesi gereken ancak kendi Matter cihazını oluşturmak için kaynakları olmayan diğer kullanıcılar için Google, Matter Virtual Device (MVD)'ı sunar.Matter MVD, farklı sanal Matter cihaz türlerini 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, bağımsız ve hafif bir Linux veya macOS masaüstü aracıdır.

Fiziksel bir Matter aygıtının aksine, MVD bir Matter yapısına katılmak için Bluetooth® Low Energy (BLE) veya Thread®'e güvenmez. Bunun yerine, devreye alma için ana Linux veya macOS makinesinin mevcut Wi-Fi ağ bağlantısını kullanır.

Diğer araçlarla karşılaştırma

MVD, Virtual Device Controller (VDC)'den farklı olarak, sanal cihazı kontrol etmek için kullanıcı arayüzüyle birleştiren bağımsız bir çözümdür. Buna karşılık, VDC ayrı bir sanal Matter cihazı kontrol etmek için kullanılır.

MVD, çeşitli önceden oluşturulmuş sanal cihazlar içerir ve bunları çalıştırmak ve kontrol etmek için entegre bir kullanıcı arayüzü sunar.

Desteklenen cihazlar

MVD, aşağıdaki Matter cihaz türlerini destekler:

Tablo: Matter cihaz MVD için desteklenen türler
Matter Cihaz Türü Uygulama kümeleri Ev Ekosistemi Türü
Hava Temizleyici 0x0202
0x0006
0x0071
Hava Temizleyici
Hava Kalitesi Sensörü 0x005b
0x0402
0x0405
0x040c
0x040d
0x042a
0x042d
0x042e
Sensör
Temel video oynatıcı 0x0006
0x0506
0x0509
Televizyon
Renk Sıcaklığı Işığı 0x0300
0x0008
0x0006
Light
Temas Sensörü 0x0045
Sensör
Parlaklığı Ayarlanabilir Işık 0x0008
0x0006
Light
Parlaklığı Ayarlanabilir Eklenti Birimi 0x0006
0x0008
Outlet
Bulaşık makinesi 0x0006
0x0059
0x0056
0x0060
Bulaşık makinesi
Kapı Kilidi 0x0101
Kilitle
Extended Color Light 0x0300
0x0008
0x0006
Light
Vantilatör 0x0202
0x0006
Fan
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
Işığı Açma/Kapatma 0x0008
0x0006
Işık
Açma/Kapatma Işık Anahtarı 0x0006
Geçiş yapma
Açma/Kapatma Eklenti Birimi 0x0008
0x0006
Outlet
Basınç Sensörü 0x0403
Sensör
Pompa 0x0006
0x0200
0x0402
0x0403
0x0404
Pump
Robot Süpürge 0x0054
0x0055
0x0061
Vacuum
Oda Kliması 0x0006
0x0201
0x0202
Klima
Duman ve karbonmonoksit alarmı 0x005C
Karbonmonoksit Alarmı
Duman Dedektörü
Sıcaklık Sensörü 0x0402
Sensör
Termostat 0x0201
Termostat
Pencere Örtüsü 0x0102
Panjur

MVD'yi yükleme

MVD, Debian (13 Trixie veya üstü), Ubuntu (20.04 Noble Numbat veya üstü) ya da macOS çalıştıran 64 bit x86 işlemcili makinelerde çalışır.

Linux

MVD Debian (.deb) paketini indirin

Armored-ASCII imzası (.asc) dosyasını indirin

Ardından MVD Debian (.deb) paketini yüklemek için dpkg komutunu çalıştırın:

sudo dpkg -i mvd_1.7.0_amd64.deb

macOS

MVD (macOS x86) dmg dosyasını indirin

MVD (ARM64 M1) dmg dosyasını indirin

Daha sonra dmg dosyasına çift tıklayarak kurulum penceresini açın.

Kurulumu tamamlamak için mvd simgesini seçip Applications klasörüne sürükleyin:

macOS kurulumu

Bağlantı noktası kullanımını kontrol etme

MVD içindeki denetleyici modülü, sanal cihaza RPC çağrıları yapmak için 33000 numaralı TCP bağlantı noktasını kullanır. Bu nedenle, bu bağlantı noktası bilgisayarınızda başka bir işlem tarafından zaten kullanılıyorsa bağlantı noktasını boşaltın.

Herhangi bir işlemin 33000 portunu kullanıp kullanmadığını görmek için:

Linux

sudo fuser -v 33000/tcp

macOS

lsof -i:33000

TCP bağlantı noktası 33000'i kullanan tüm işlemleri tek bir komutla sonlandırabilirsiniz:

Linux

sudo fuser -k 33000/tcp

macOS

lsof -ti:33000 | xargs kill

MVD'yi çalıştırma

Linux

Linux'ta, uygulamalar klasörünüzden veya terminalden MVD komutunu çalıştırın:

mvd

macOS

macOS'te MVD açmak veya terminalden MVD çalıştırmak için Launchpad'i kullanın:

cd /Applications
open mvd.app

Cihazınızı yapılandırma

Uygulama başlatıldığında ana ekran görünür ve sanal cihaz yapılandırmanıza olanak tanır:

  • Cihaz Türü: Cihaz türünü seçin (örneğin, Işık, Anahtar, Sensör vb.).
  • Cihaz Adı: Cihaza kullanıcı dostu bir ad verin.
  • Ayırt edici: Birden fazla komisyonlu cihaz reklamı arasında ayrım yapmak için kullanılan 12 bitlik bir sayıdır. (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 5540 numaralı TCP/UDP bağlantı noktasını kullanır ancak başka bir hizmet tarafından kullanılmadığı sürece sanal cihazı farklı bir bağlantı noktası kullanacak şekilde yapılandırabilirsiniz.
  • Satıcı kimliği: Yalnızca test satıcı kimliği 0xFFF1 desteklenir.
  • Ürün kimliği: Yalnızca 0x8000 ile 0x801F arasındaki test ürün kimlikleri desteklenir.

Sanal Cihaz yapılandırması ekranı

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 aşağıdaki komutla devre dışı bırakılabilir:

sudo ufw disable

Aşağıdaki yöntemlerle yeniden etkinleştirilebilir:

sudo ufw enable

macOS

macOS'te güvenlik duvarını yapılandırmak veya devre dışı bırakmak için:

  1.  Apple menüsüne gidip Sistem Ayarları'nı seçin.
  2. Kenar çubuğu listesinde 'ı tıklayın.
  3. Güvenlik duvarı'nı tıklayın.
  4. Güvenlik duvarı anahtarını Kapalı konumuna getirin.

Cihazınızı çalıştırma

Cihaz yapılandırıldıktan sonra Cihaz oluştur'u tıklayın. Cihaz oluşturulduğunda Denetleyici ekranı görüntülenir. Seçtiğiniz aygıt türüne bağlı olarak aşağıdaki denetimlerden birini veya birkaçını görebilirsiniz:

  • Açık/Kapalı: Çoğu cihazda bulunur.
  • Düzey: Örneğin, bir ışığın parlaklığı ayarlamak için düzey kaydırma çubuğu olabilir.
  • Renk: Örneğin, bir renkli ışık bu kontrole sahip olabilir.
  • Doluluk: Doluluk Sensörü, dolu veya boş durumunu simüle etmek için bu kontrolü sunar.

Tüm sanal cihazlarda aşağıdaki kontroller bulunur:

  • QRCode: Kullanıma alma için kullanılan QR kodunu gösterir.
  • Yeniden başlatma: Sanal cihazı yeniden başlatır. Cihazın ağ bağlantısı kısa süreliğine kesilir.
  • Sıfırla: Mevcut cihazı fabrika ayarlarına sıfırlar ve devreye alma, mevcut kontroller durumu gibi tüm durumları temizler.
  • Sil: Cihazı yok eder ve Cihaz oluştur ekranına döner.

Sanal Cihaz kontrol ekranı

Üreticiye özgü özellikler

Üreticiye özel (MS) özellikler Android için Home API'leri tarafından desteklenir ve Matter'deki standart özelliklerin ötesinde ek işlevler sağlar. Bir cihazı MS özelliğine sahip olarak test etmek için MVD, Özel Kümeler adlı bölümdeki özelliklerle etkileşim kurmanızı sağlar (yukarıdaki resme bakın).

Cihazınızı devreye alın

Cihaz, oluşturulur oluşturulmaz komisyon kazanmaya uygundur.

Cihazın devreye alınması için birkaç ön koşul vardır:

  • Google Home Developer Console'da bir projeniz olmalıdır. Bu proje, sanal cihazınızı kurarken kullandığınız VID/PID kombinasyonuyla aynı olan bir Matter entegrasyonunu 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 üzeri işletim sistemine sahip ve GHA yüklü bir Android telefonunuz olmalıdır.

  • Android telefon, hub ile aynı kablosuz ağa bağlı olmalıdır.

  • Ana makinenin Wi-Fi ağına bağlı olması gerekir.

Cihazı GHA kullanarak devreye almak için cihazın QR kodunu görüntülemek üzere QRCode'a tıklayın, ardından GHA kullanarak bir Matter cihazının nasıl devreye alınacağını açıklayan Bir Matter cihazını eşleştirme bölümündeki talimatları izleyin. Cihazı Google Home Sample App for Matter kullanarak da devreye alabilirsiniz.

Matter Devreye Alma işleminin nasıl çalıştığını öğrenmek için Matter Giriş Kılavuzumuzu inceleyin.

Cihazı kontrol edin

Sanal bir cihazı devreye aldıktan sonra, cihazı Google Home Uygulamasını veya Google Asistan'ı sesli olarak kullanarak kontrol edebilirsiniz. Aşağıdaki yöntemlerden birini uygulayabilirsiniz:

  • Sanal cihazdaki durum değişikliklerini izlerken cihazı GHA veya Assistant üzerinden kontrol edin veya
  • Sanal cihazdaki durum değişikliklerini izlerken cihazı Sample App for Matter kullanarak kontrol edin veya
  • GHA veya Assistant içindeki durum değişikliklerini izlerken cihaz durumunu MVD üzerinden kontrol edin.

Cihazla test edin

Assistant ile test etmek için VS Code için Google Home Eklentisi 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üle

Cihaz ayrıntıları ekranı ayrıntılı cihaz bilgilerini gösterir:

  • Ad: Cihaza verilen kullanıcı dostu ad.
  • Cihaz Türü: Seçilen cihaz türü.
  • Ayırıcı: Geçerli cihaz ayırıcısı.
  • Satıcı kimliği: Mevcut cihaz satıcı kimliği.
  • Ürün Kimliği: Geçerli cihaz ürün kimliği.
  • RPC bağlantı noktası: Cihazın denetleyicilerle (GUI) iletişim kurduğu RPC bağlantı noktası.
  • Matter Bağlantı noktası: Geçerli cihazın IP ağı üzerinden iletişim kurmak için kullandığı bağlantı noktası.
  • Geçiş Kodu: Cihazı ağ üzerinden devreye almak için kullanılan PIN.
  • Yapılandırma Klasörü: Sanal cihazın yapılandırmayı depoladığı klasör.
  • Komisyon bilgileri: Cihazın katıldığı kumaşları ve kumaşta cihazın 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 yok etmek için Sil'i tıklayın.

Uygulamayı sonlandırma

Kontrol penceresinin kapatılması cihazı bozar ve MVD uygulamasını sonlandırır. Terminalden başlattıysanız terminale Ctrl-C yazarak da uygulamayı sonlandırabilirsiniz.

Yardım alın

MVD ile ilgili yardım almak, bir hatayı bildirmek veya yeni bir özellik istemek için Google destek ekibindeki ilgili kişinizle 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 kusur bulduğunuzu düşünüyorsanız pencerenin sağ üst köşesindeki Sorun düğmesini tıklayarak hata bildirebilirsiniz.

Geri bildirim gönder

MVD ile ilgili beğendiğiniz noktalar veya araçla ilgili deneyiminizi nasıl iyileştirebileceğimiz konusundaki 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 başlatabilirsiniz.

Geri bildiriminizi bize gönderin

MVD kullanırken alt kısımda açılan anketle de geri bildirim sağlayabilirsiniz.