Matter Виртуальные устройства полезны для разработки и тестирования Matterрешений. Их можно инициализировать с помощью Google Home app (GHA) и контролировать с помощью GHA и Google Assistant, как и физические Matter устройства .
Разработчикам приложений и другим специалистам, которым нужно тестировать или эмулировать виртуальное устройство, но у которых нет ресурсов для создания собственного физического или виртуального устройства, Google предлагает Matter Virtual Device (MVD).MatterMatter MVD – это легкий отдельный инструмент для Linux или macOS, который имитирует различные типы виртуальных устройств Matter и предоставляет графический интерфейс пользователя для управления состояниями виртуального устройства Matter и их отображения.
В отличие от физического устройства Matter, MVD не использует Bluetooth® с низким энергопотреблением (BLE) или Thread® для подключения к сети Matter. Вместо этого для настройки используется существующее подключение к сети Wi-Fi на хост-компьютере с Linux или macOS.
Сравнение с другими инструментами
MVD отличается от Virtual Device Controller (VDC) тем, что представляет собой самостоятельное решение, сочетающее виртуальное устройство с интерфейсом для управления им. В отличие от этого, VDC используется для управления отдельным виртуальным устройством Matter.
MVD содержит несколько готовых виртуальных устройств и встроенный интерфейс для их запуска и управления.
Поддерживаемые устройства
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 |
Outlet |
| Посудомоечная машина |
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 |
Outlet |
| Датчик давления |
0x0403 |
Датчик |
| Насос |
0x0006 0x0200 0x0402 0x0403 0x0404 |
Pump |
| Робот-пылесос |
0x0054 0x0055 0x0061 |
Вакуум |
| Комнатный кондиционер |
0x0006 0x0201 0x0202 |
Кондиционер |
| Датчик дыма и угарного газа |
0x005C |
Детектор угарного газа
Детектор дыма |
| Датчик температуры |
0x0402 |
Датчик |
| Термостат |
0x0201 |
Термостат |
| Занавески |
0x0102 |
Жалюзи |
Как установить MVD
MVD работает на 64-разрядных компьютерах с процессором x86 под управлением Debian (13 Trixie или более поздней версии), Ubuntu (20.04 Noble Numbat или более поздней версии) или macOS.
Linux
Скачайте пакет Debian (.deb) для MVD
Скачайте файл подписи в формате ASCII (.asc)
Затем выполните команду dpkg, чтобы установить пакет Debian (.deb):MVD
sudo dpkg -i mvd_1.7.0_amd64.debmacOS
Скачать DMG-файл MVD (macOS x86)
Скачать DMG-файл MVD (ARM64 M1)
Затем дважды нажмите на файл 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 откройте Launchpad и выберите MVD или запустите MVD из терминала:
cd /Applicationsopen mvd.app
Как настроить устройство
При запуске появляется главный экран, на котором можно настроить виртуальное устройство:
- Тип устройства. Выберите тип устройства, например светильник, переключатель, датчик и т. д.
- Название устройства. Присвойте устройству понятное название.
- Дискриминатор. 12-битное число, используемое для различения нескольких объявлений устройств, которые можно ввести в эксплуатацию. (по умолчанию:
3840). - Matter Port (Порт ). Порт для 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 и выберите Системные настройки.
- На боковой панели нажмите Сеть.
- Нажмите Межсетевой экран.
- Переведите переключатель Брандмауэр в положение Выкл..
Как запустить устройство
После настройки устройства нажмите Создать устройство. После создания устройства появится экран Контроллер. В зависимости от типа выбранного устройства вам могут быть доступны следующие элементы управления:
- Включить/выключить. Эта команда поддерживается большинством устройств.
- Уровень. Например, у светильника может быть ползунок для регулировки яркости.
- Цвет. Например, этот элемент управления может быть у цветной лампы.
- Занятость. Датчик занятости позволяет имитировать состояние занятости или незанятости.
У всех виртуальных устройств есть следующие элементы управления:
- QRCode – QR-код, используемый для инициализации.
- Перезагрузка. Перезапускает виртуальное устройство. Устройство временно отключается от сети.
- Сброс. Сбрасывает текущее устройство до заводских настроек и удаляет все данные, в том числе сведения о настройке, текущем состоянии элементов управления и т. д.
- Удалить. Устройство будет уничтожено, и вы вернетесь на экран Создать устройство.
Свойства, заданные производителем
Свойства, относящиеся к производителю (MS), поддерживаются API для дома в Android и предоставляют дополнительные функции помимо стандартных свойств в Matter. Чтобы протестировать устройство с признаком MS, MVD позволяет взаимодействовать с признаками в разделе Специальные кластеры (см. изображение выше).
Как настроить устройство
Устройство можно настроить сразу после создания.
Чтобы настроить устройство, необходимо выполнить следующие условия:
У вас должен быть проект в Google Home Developer Console. В этом проекте должна быть интеграция Matter с той же комбинацией VID/PID, что и при настройке виртуального устройства. Подробнее о том, как создать проект…
У вас должен быть Google Nest Hub с поддержкой Matter.
Вам понадобится телефон с Android 8.1 или более поздней версии и установленным приложением GHA.
Телефон Android должен быть подключен к той же сети Wi-Fi, что и концентратор.
Основной компьютер должен быть подключен к сети Wi-Fi.
Чтобы инициализировать устройство с помощью GHA, нажмите QRCode, чтобы отобразить QR-код устройства, а затем следуйте инструкциям в разделе Как подключить устройство Matter, где рассказывается, как добавить устройство Matter с помощью GHA. Вы также можете настроить устройство с помощью Google Home Sample App for Matter.
Чтобы узнать, как работает Matter, ознакомьтесь с нашим Matter руководством.
Как управлять устройством
После настройки виртуального устройства вы сможете управлять им с помощью приложения Google Home или голосовых команд Google Ассистента. Вы можете:
- Управляйте устройством с помощью GHA или Assistant, отслеживая изменения состояния на виртуальном устройстве.
- Управляйте устройством с помощью Sample App for Matter и следите за изменениями состояния на виртуальном устройстве.
- Управляйте состоянием устройства через MVD, отслеживая изменения состояния в GHA или Assistant.
Как протестировать устройство
Чтобы протестировать приложение с помощью Assistant, рекомендуем использовать симулятор запросов, например Google Home Extension для VS Code или Google Home Plugin для Android Studio.
Как посмотреть сведения об устройстве
На экране Информация об устройстве можно посмотреть подробные сведения об устройстве:
- Название. Понятное название, присвоенное устройству.
- Тип устройства. Выбранный тип устройства.
- Дискриминатор – дискриминатор текущего устройства.
- Идентификатор поставщика – текущий идентификатор поставщика устройства.
- Идентификатор продукта – текущий идентификатор продукта устройства.
- Порт RPC – порт RPC, через который устройство обменивается данными с контроллерами (графическим интерфейсом пользователя).
- Matter Port – порт, используемый текущим устройством для связи через IP-сеть.
- Код доступа. PIN-код, используемый для инициализации устройства в сети.
- Папка конфигурации – папка, в которой виртуальное устройство хранит конфигурацию.
- Информация о комиссии. Показывает, к какой ткани присоединилось устройство и какой идентификатор узла у него в этой ткани.
Как посмотреть журналы устройства
Если вы запустили MVD из терминала, выходные данные журнала появятся в stdout.
Журналы устройств также можно посмотреть на вкладке Журналы устройств.
Как остановить устройство
Чтобы остановить и уничтожить устройство, нажмите Удалить.
Как закрыть приложение
Закрытие окна управления приводит к уничтожению устройства и завершению работы приложения MVD. Если вы запустили приложение из терминала, вы можете завершить его работу, нажав Ctrl+C.
Справка
Чтобы получить помощь по работе с MVD, сообщить об ошибке или запросить новую функцию, обратитесь к контактному лицу в службе поддержки Google.
Чтобы перейти на эту страницу, нажмите кнопку справки в правом верхнем углу окна.
Сообщить об ошибке
Если вы считаете, что в MVD есть дефект, вы можете сообщить об ошибке, нажав кнопку "Проблема" в правом верхнем углу окна.
Отправить отзыв
Чтобы поделиться своим мнением о том, что вам нравится в MVD или как мы можем улучшить инструмент, заполните форму обратной связи.
Форму можно открыть, нажав кнопку "Отправить отзыв" в правом верхнем углу окна или кнопку ниже.
Вы также можете оставить отзыв в опросе, который появляется внизу экрана при использовании MVD.