Виртуальные устройства Matter полезны для разработки и тестирования решений Matter , их можно запускать в эксплуатацию с помощью Google Home app (GHA) и управлять ими с помощью GHA и Google Assistant , как и физическими устройствами Matter .
Для разработчиков приложений и других пользователей, которым необходимо тестировать или эмулировать виртуальное устройство Matter , но у которых нет ресурсов для создания собственного физического или виртуального устройства Matter , Google предлагает Matter Virtual Device (MVD) . MVD — это легковесный автономный инструмент для настольных компьютеров под управлением Linux или macOS, который имитирует различные типы виртуальных устройств Matter и предоставляет графический пользовательский интерфейс для управления и отображения состояний виртуального устройства Matter .
В отличие от физического устройства Matter , MVD не использует Bluetooth® Low Energy (BLE) или Thread® для подключения к сети Matter . Вместо этого он использует существующее Wi-Fi-соединение хост-машины под управлением Linux или macOS для ввода в эксплуатацию.
По сравнению с другими инструментами
MVD отличается от Virtual Device Controller (VDC) тем, что представляет собой автономное решение, объединяющее виртуальное устройство с пользовательским интерфейсом для управления им. В отличие от него, VDC используется для управления отдельным виртуальным устройством Matter .
MVD содержит несколько различных предварительно созданных виртуальных устройств и включает в себя интегрированный пользовательский интерфейс для их запуска и управления.
Поддерживаемые устройства
MVD поддерживает следующие типы устройств Matter :
| Тип устройства Matter | Кластер(ы) приложений | Тип домашней экосистемы |
|---|---|---|
| Очиститель воздуха | 0x0202 0x0006 0x0071 | Очиститель воздуха |
| Датчик качества воздуха | 0x005b 0x0402 0x0405 0x040c 0x040d 0x042a 0x042d 0x042e | Датчик |
| Базовый видеоплеер | 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).
Загрузите файл сигнатуры в формате armored-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 использует TCP-порт 33000 для выполнения RPC-вызовов к виртуальному устройству, поэтому, если этот порт уже занят другим процессом на вашем компьютере, обязательно освободите его.
Чтобы проверить, использует ли какой-либо процесс порт 33000:
Linux
sudo fuser -v 33000/tcpmacOS
lsof -i:33000Завершить любой процесс, использующий TCP-порт 33000, можно одной командой:
Linux
sudo fuser -k 33000/tcpmacOS
lsof -ti:33000 | xargs killЗапустите MVD
Linux
В Linux запустить MVD можно из папки приложений или из терминала:
mvdmacOS
В macOS для открытия MVD используйте Launchpad или запустите MVD из терминала:
cd /Applicationsopen mvd.app
Настройте ваше устройство
Главный экран появляется при запуске и позволяет настроить виртуальное устройство:
- Тип устройства : Выберите тип устройства (например, светильник, выключатель, датчик и т. д.).
- Название устройства : Присвойте устройству понятное для пользователя имя.
- Дискриминатор : 12-битное число, используемое для различения нескольких рекламных объявлений устройств, за которые начисляются комиссионные. (По умолчанию:
3840). - Порт Matter : Порт для ввода Matter в эксплуатацию и связи через IP-сети. По умолчанию Matter использует порт TCP/UDP 5540, но вы можете настроить виртуальное устройство на использование другого порта, при условии, что его не использует другая служба.
- Идентификатор поставщика : Поддерживается только тестовый идентификатор поставщика
0xFFF1. - Идентификатор продукта : Поддерживаются только тестовые идентификаторы продуктов
0x8000до0x801F.

Настройте свой брандмауэр
Linux
Если на вашем компьютере запущен брандмауэр, либо отключите его, либо разрешите входящие TCP/UDP-соединения на порту Matter .
Чтобы просмотреть текущие активные правила брандмауэра netfilter , выполните следующую команду:
sudo iptables -L -nЕсли вы используете `ufw`, его можно отключить с помощью:
sudo ufw disableИ его можно повторно включить с помощью:
sudo ufw enablemacOS
Чтобы настроить или отключить брандмауэр в macOS:
- Перейдите в меню Apple и выберите «Системные настройки» .
- В боковой панели выберите пункт «Сеть» .
- Нажмите «Брандмауэр» .
- Переведите переключатель брандмауэра в положение «Выкл.» .
Запустите ваше устройство
После настройки устройства нажмите «Создать устройство» . После создания устройства появится экран «Контроллер» . В зависимости от типа выбранного устройства вы можете увидеть один или несколько из следующих элементов управления:
- Включение/выключение : характерно для большинства устройств.
- Уровень : Например, у светильника может быть ползунок для регулировки яркости.
- Цвет : Например, цветной светильник может иметь такое управление.
- Датчик присутствия : Датчик присутствия обеспечивает эту функцию, позволяющую имитировать состояние занятости или незанятости помещения.
Все виртуальные устройства имеют следующие элементы управления:
- QR-код : Отображает QR-код, используемый для ввода в эксплуатацию.
- Перезагрузка : Перезапускает виртуальное устройство. Устройство на короткое время отключается от сети.
- Сброс : Выполняет сброс настроек устройства до заводских и очищает все состояние, включая состояние ввода в эксплуатацию, текущее состояние управления и т. д.
- Удалить : Уничтожает устройство и возвращает на экран создания устройства .

Характеристики, специфичные для производителя
Специфические для производителя (MS) характеристики поддерживаются API Home для Android и предоставляют дополнительные возможности по сравнению со стандартными характеристиками в Matter . Чтобы протестировать устройство со специфичной для производителя характеристикой, MVD позволяет взаимодействовать с характеристиками в разделе « Пользовательские кластеры» (см. изображение выше).
Введите ваше устройство в эксплуатацию
Устройство готово к вводу в эксплуатацию сразу после его изготовления.
Для ввода устройства в эксплуатацию необходимо выполнить несколько предварительных условий:
У вас должен быть проект в Google Home Developer Console . Этот проект должен содержать интеграцию с Matter , имеющую ту же комбинацию VID/PID, что и при настройке виртуального устройства. Подробности см. в руководстве по созданию проекта .
Вам потребуется Google Nest Hub, поддерживающий Matter.
Для работы вам потребуется телефон на базе Android 8.1 или более поздней версии с установленным GHA .
Телефон Android должен быть подключен к той же сети Wi-Fi, что и хаб.
Главный компьютер должен быть подключен к сети Wi-Fi.
Для ввода устройства в эксплуатацию с помощью GHA нажмите QR-код , чтобы отобразить QR-код устройства, а затем следуйте инструкциям в разделе «Сопряжение устройства Matter , в которых объясняется, как подключить устройство Matter с помощью GHA . Вы также можете ввести устройство в эксплуатацию, используя Google Home Sample App for Matter .
Ознакомьтесь с нашим руководством по Matter , чтобы узнать, как работает процесс ввода Matter в эксплуатацию.
Управляйте устройством
После ввода виртуального устройства в эксплуатацию вы можете управлять им с помощью приложения Google Home или голосового помощника Google Assistant . Вы можете сделать это одним из следующих способов:
- Управляйте устройством через GHA или Assistant , одновременно отслеживая изменения состояния виртуального устройства, или
- Управляйте устройством с помощью Sample App for Matter , отслеживая изменения состояния виртуального устройства, или
- Управляйте состоянием устройства непосредственно через MVD , отслеживая изменения состояния в GHA или Assistant .
Проверьте с помощью устройства.
Для тестирования с помощью Assistant мы рекомендуем использовать симулятор речевых реплик, например, расширение Google Home для VS Code или плагин Google Home для Android Studio .
Просмотреть сведения об устройстве
На экране «Подробная информация об устройстве» отображается подробная информация об устройстве:
- Имя: Удобное для пользователя имя, присвоенное устройству.
- Тип устройства : Выбранный тип устройства.
- Дискриминатор : Дискриминатор текущего устройства.
- Идентификатор поставщика : текущий идентификатор поставщика устройства.
- Идентификатор продукта : текущий идентификатор продукта устройства.
- RPC-порт : RPC-порт, через который устройство взаимодействует с контроллерами (графическим интерфейсом пользователя).
- Порт Matter : Порт, используемый текущим устройством для связи через IP-сеть.
- Код доступа : PIN-код, используемый для ввода устройства в эксплуатацию через сеть.
- Папка конфигурации : папка, в которой виртуальное устройство хранит конфигурацию.
- Информация о подключении : Отображает сеть (сети), к которой подключилось устройство, и идентификатор узла устройства в этой сети.
Просмотреть журналы устройства
Если вы запустили MVD из терминала, вывод логов появится в стандартном потоке вывода stdout . Вы также можете просмотреть логи устройства на вкладке «Журналы устройства» .
Остановите устройство
Чтобы остановить и уничтожить устройство, нажмите «Удалить» .
Завершить работу приложения
Закрытие окна управления уничтожает устройство и завершает работу приложения MVD . Если вы запустили приложение из терминала, вы также можете завершить его работу, набрав Ctrl-C в терминале.
Обратитесь за помощью
Чтобы получить помощь по MVD , сообщить об ошибке или запросить новую функцию, обратитесь к своему контактному лицу в службе поддержки Google.
Нажатие кнопки « в правом верхнем углу окна переведет вас на эту страницу.
Сообщить об ошибке
Если вы считаете, что обнаружили ошибку в MVD , вы можете сообщить о ней, нажав кнопку Issue в правом верхнем углу окна.
Отправить отзыв
Чтобы поделиться своими впечатлениями о том, что вам нравится в MVD , или как мы можем улучшить ваш опыт использования этого инструмента, заполните нашу форму обратной связи.
Форму можно открыть, нажав кнопку «Отзывы в правом верхнем углу окна или нажав кнопку ниже.
Вы также можете оставить отзыв, заполнив опрос, который появляется внизу страницы при использовании MVD .