Виртуальные устройства 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 Fabric. Вместо этого он использует существующее сетевое соединение 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 | Кондиционер |
Детектор дыма CO | 0x005C | Детектор CO2 Детектор дыма |
Датчик температуры | 0x0402 | Датчик |
Термостат | 0x0201 | Термостат |
Покрытие окон | 0x0102 | Жалюзи |
Установить МВД
MVD работает на компьютерах с 64-разрядным процессором x86 под управлением Debian (13 Trixie
или выше), Ubuntu (20.04 Noble Numbat
или выше) или macOS.
Линукс
Загрузите пакет MVD Debian (.deb)
Загрузите файл сигнатуры armored-ASCII (.asc)
Затем запустите dpkg
для установки пакета MVD Debian (.deb):
sudo dpkg -i mvd_1.7.0_amd64.deb
macOS
Загрузите dmg-файл MVD (macOS x86)
Загрузить файл MVD (ARM64 M1) dmg
Затем дважды щелкните файл dmg
, чтобы открыть окно установки.
Для завершения установки выберите и перетащите значок mvd
в папку Applications
:
Проверить использование порта
Модуль контроллера в MVD использует TCP-порт 33000 для выполнения RPC-вызовов к виртуальному устройству, поэтому, если этот порт уже используется другим процессом на вашем компьютере, обязательно освободите его.
Чтобы узнать, использует ли какой-либо процесс порт 33000:
Линукс
sudo fuser -v 33000/tcp
macOS
lsof -i:33000
Вы можете завершить любой процесс, использующий TCP-порт 33000, с помощью одной команды:
Линукс
sudo fuser -k 33000/tcp
macOS
lsof -ti:33000 | xargs kill
Запуск МВД
Линукс
В Linux запустите MVD из папки приложений или из терминала:
mvd
macOS
На macOS используйте Launchpad для открытия MVD или запустите MVD из терминала:
cd /Applications
open mvd.app
Настройте свое устройство
При запуске появляется главный экран, на котором можно настроить виртуальное устройство:
- Тип устройства : выберите тип устройства (например, светильник, выключатель, датчик и т. д.).
- Имя устройства : дайте устройству удобное имя.
- Дискриминатор : 12-битное число, используемое для различения нескольких объявлений об устройствах, за которые взимается комиссия. (По умолчанию:
3840
). - Matter Port : порт для ввода в эксплуатацию и связи Matter через IP-сети. Matter по умолчанию использует порт TCP/UDP 5540, но вы можете настроить виртуальное устройство на использование другого порта, если никакая другая служба его не использует.
- ID поставщика : поддерживается только тестовый ID поставщика
0xFFF1
. - Идентификатор продукта : поддерживаются только идентификаторы тестовых продуктов от
0x8000
до0x801F
.
Настройте брандмауэр
Линукс
Если на вашем компьютере запущен брандмауэр, отключите его или разрешите входящие TCP/UDP-подключения через порт Matter .
Чтобы просмотреть текущие активные правила брандмауэра Netfilter , выполните:
sudo iptables -L -n
Если вы используете `ufw`, его можно отключить с помощью:
sudo ufw disable
И его можно снова включить с помощью:
sudo ufw enable
macOS
Чтобы настроить или отключить брандмауэр в macOS:
- Перейдите в меню Apple и выберите Системные настройки .
- Нажмите «Сеть» в списке боковой панели.
- Нажмите «Брандмауэр» .
- Переведите переключатель брандмауэра в положение «Выкл.» .
Запустите свое устройство
После настройки устройства нажмите Создать устройство . После создания устройства появится экран Контроллер . В зависимости от выбранного типа устройства вы можете увидеть один или несколько из следующих элементов управления:
- Вкл./Выкл .: обычно для большинства устройств.
- Уровень : например, светильник может иметь ползунок уровня для регулировки яркости.
- Цвет : например, такой элемент управления может иметь цветной светильник.
- Занятость : Датчик занятости обеспечивает этот контроль, имитируя занятое или незанятое состояние.
Все виртуальные устройства имеют следующие элементы управления:
- QR-код : показывает QR-код, используемый для ввода в эксплуатацию.
- Перезагрузка : Перезапускает виртуальное устройство. Устройство на короткое время отключается от сети.
- Сброс : сброс текущего устройства к заводским настройкам и очистка всех состояний, включая ввод в эксплуатацию, текущее состояние элементов управления и т. д.
- Удалить : уничтожает устройство и возвращает на экран создания устройства .
Характеристики, специфичные для производителя
Специфичные для производителя (MS) черты поддерживаются API Home для 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-код устройства, затем следуйте инструкциям в разделе Pair a Matter device , которые объясняют, как подключить устройство Matter с помощью GHA . Вы также можете ввести устройство в эксплуатацию с помощью Google Home Sample App for Matter .
Ознакомьтесь с нашим руководством по Matter Primer , чтобы узнать, как работает Matter Commissioning.
Управляйте устройством
После ввода в эксплуатацию виртуального устройства вы можете управлять устройством с помощью приложения Google Home или Google Assistant голосом . Вы можете:
- Управляйте устройством через GHA или Assistant , отслеживая изменения состояния на виртуальном устройстве, или
- Управляйте устройством с помощью Sample App for Matter отслеживая изменения состояния на виртуальном устройстве, или
- Управляйте состоянием устройства через MVD , отслеживая изменения состояния в GHA или Assistant .
Тест с устройством
Для тестирования с Assistant мы рекомендуем использовать симулятор речевых сообщений, например Google Home Extension для VS Code или Google Home Plugin для Android Studio .
Просмотреть сведения об устройстве
На экране сведений об устройстве отображается подробная информация об устройстве:
- Имя: Понятное имя, присвоенное устройству.
- Тип устройства : выбранный тип устройства.
- Дискриминатор : Текущий дискриминатор устройства.
- Идентификатор поставщика : текущий идентификатор поставщика устройства.
- Идентификатор продукта : идентификатор текущего продукта устройства.
- Порт RPC : порт RPC, через который устройство взаимодействует с контроллерами (GUI).
- Matter Port : порт, используемый текущим устройством для связи через IP-сеть.
- Пароль : PIN-код, используемый для ввода устройства в эксплуатацию через сеть.
- Папка конфигурации : папка, в которой виртуальное устройство хранит конфигурацию.
- Информация о комиссии : показывает структуру(ы), к которым подключено устройство, и идентификатор узла устройства в структуре.
Просмотр журналов устройства
Если вы запустили MVD из терминала, вывод журнала появится на stdout
. Вы также можете просмотреть журналы устройства на вкладке Журналы устройства .
Остановите устройство.
Чтобы остановить и уничтожить устройство, нажмите «Удалить» .
Завершить работу приложения
Закрытие окна управления уничтожает устройство и завершает приложение MVD . Если вы запустили его из терминала, вы также можете завершить приложение, набрав Ctrl-C в терминале.
Получить помощь
Чтобы получить помощь с MVD , сообщить об ошибке или запросить новую функцию, обратитесь к своему контактному лицу в службе поддержки Google.
Нажав кнопку «
в правом верхнем углу окна, вы попадете на эту страницу.Сообщить об ошибке
Если вы считаете, что обнаружили дефект в MVD , вы можете сообщить об ошибке, нажав кнопку Issue в правом верхнем углу окна.
Отправить отзыв
Чтобы поделиться своими мыслями о том, что вам нравится в MVD или как мы можем улучшить ваш опыт использования инструмента, заполните нашу форму обратной связи.
Форму можно запустить с помощью кнопки обратной связи
в правом верхнем углу окна или нажав кнопку ниже.Вы также можете оставить отзыв, заполнив опрос, который появляется внизу при использовании MVD .