Подключение к последовательному USB-устройству через WebUSB

У меня есть оборудование, которое подключено к Mac или Windows через последовательный USB-режим. В настоящее время у меня есть приложение nodejs, которое отправляет и принимает сообщения на это оборудование, используя «последовательный» модуль узла. Я пытаюсь подключиться к оборудованию через веб-страницу. Я использовал WebUSB serial.js. Я вижу устройство и предполагаю, что оно подключается. Но когда я пытаюсь отправить / получить сообщение - он говорит, что не могу потребовать интерфейс.

Я хотел бы знать, могу ли я использовать WebUSB для USB с поддержкой последовательного порта?


person btech    schedule 29.01.2019    source источник
comment
Добро пожаловать в Stack Overflow! Вы смотрели на такие вещи, как github.com/monteslu/webusb-serial? Было бы здорово включить некоторые из вещей, которые вы пробовали, и то, что может работать или не работать. Примеры кода и т. Д.   -  person Frederik Spang    schedule 30.01.2019


Ответы (2)


Вызов claimInterface() завершился ошибкой, потому что ваша операционная система уже загрузила драйвер последовательного класса USB для этого устройства (или, возможно, зависящий от производителя, например FTDI). Интерфейсы USB могут быть востребованы только одним устройством за раз. Возможность изменить прошивку устройства так, чтобы интерфейс больше не распознавался драйвером (измените класс интерфейса или идентификаторы продукта), тогда вы сможете запросить интерфейс и использовать код, такой как serial.js библиотеки Arduino WebUSB, который вы нашли .

Другой вариант - дождаться, пока Chrome завершит реализацию Serial API. Статус этого можно отслеживать здесь.

person Reilly Grant    schedule 30.01.2019

У меня сработало запустить sudo modprobe -r ftdi_sio в консоли.

Таким образом, он выгружает USB из ОС и делает его доступным для WebUSB, чтобы использовать его и потребовать интерфейс.

person KZander    schedule 08.11.2019