Перейти к содержанию
    

Правовые аспекты использования USB

Здравствуйте.

Хотелось бы убрать пробел в знаниях касаемо использования USB протокола в своих проектах. В интернете как то все мутно и разносторонне расписано.

 

Предположим, коммерческой фирмой разрабатывается прибор с использованием USB протокола, реализованного на одном из контроллеров Atmel. Сейчас для связи прибора и ПК используется FT232, но хотелось бы уйти от этого.

 

При настройке контроллера соответственно необходимо задать такие параметры как VID и PID, которые как пишут, нужно купить у конторы которая продвигает этот самый USB.

 

Как вы поступайте в своих проектах? Нужно ли заморачиваться по этому поводу. Или возможно есть какие то диапазоны VID и PID для общего использования. Ну и так далее...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если это коммерческое устройство, то лучше купить VID. Для организации это не так дорого.

 

А вообще для малых партий (до 10000 устройств) производители чипов могут дать PID из их диапазона VID.

 

Если использовать случайные числа, то есть шанс нарваться на проблемы с драйверами. И стоимость разрешения таких проблем на массовых устройствах может быть больше стоимости VID.

 

С точки зрения закона, если вы лого USB на продукт и упаковку не наносите, то делайте что хотите, ничего страшного не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а кто что скажет про вариант чтобы МК полностью прикинулся тем же ft232, чтобы использовать ftdiные же драйвера, которые по умолчанию уже есть везде.

клепают же китайцы клоны usb blasterов альтеровских (которые в оригинале на ft245) на силабсах C8051F32.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а кто что скажет про вариант чтобы МК полностью прикинулся тем же ft232, чтобы использовать ftdiные же драйвера, которые по умолчанию уже есть везде.

клепают же китайцы клоны usb blasterов альтеровских (которые в оригинале на ft245) на силабсах C8051F32.

Протокол FTDI полностью нигде не документирован, так что обновление драйверов может сломать совместимость. Такое произошло несколько месяцев назад, когда новые драйвера FTDI стали стирать EEPROM поддельных чипов.

 

Если нужен только COM-порт, то самое простое - это сделать CDC ACM (дрова тоже везде есть из коробки) и взять VID от любой из компаний, которые ушли из бизнеса. Таких в списке USB VID полно.

 

Есть так же сервисы, которые продают небольшие диапазоны PID от своего VID. USB IF это не нравится, он они не могут ничего сделать. Как только номер назначен его уже нельзя отобрать.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

и взять VID от любой из компаний, которые ушли из бизнеса. Таких в списке USB VID полно.

У меня при одинаковых для всех устройств левых и редких VID&PID, ещё для удобства - поля:

MANUFACTURE_NAME - содержат название нашей фирмы;

PRODUCT_NAME - название изделия;

SERIAL_NAME - уникальный для каждого номер.

 

В результате, даже новое SERIAL_NAME - вызывает установку драйвера и всегда можно посмотреть в свойствах - что за устройство и какого типа драйвер встал.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если нужен только COM-порт, то самое простое - это сделать CDC ACM (дрова тоже везде есть из коробки) и взять VID от любой из компаний, которые ушли из бизнеса. Таких в списке USB VID полно.
Звучит заманчиво. Более того, даже работет. Под линухом. Воткнул и играй. А вот Виндовс, даже несмотря на то, что класс устройства стандартный и дрова у него на борту есть, все равно требует .inf с прописанными туда VID и PID именно этого устройства. Я замучался искать эти дрова для VID и PID от STM32 CDC для XP. А для семерки и выше, как я понимаю, в случае своих или левых VID и PID придется стандартные дрова с этими VID/PID еще и подписывать?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А вот Виндовс, даже несмотря на то, что класс устройства стандартный и дрова у него на борту есть, все равно требует .inf с прописанными туда VID и PID именно этого устройства. Я замучался искать эти дрова для VID и PID от STM32 CDC для XP. А для семерки и выше, как я понимаю, в случае своих или левых VID и PID придется стандартные дрова с этими VID/PID еще и подписывать?

вот собственно по этой причине (только не с стм32, а кипарис) и возник вопрос, кем бы так прикинуться со стороны МК (ftdi'ем ft232) чтобы иметь CDC и про драйвера со стороны ПК вообще не вспоминать.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вот собственно по этой причине (только не с стм32, а кипарис) и возник вопрос, кем бы так прикинуться со стороны МК (ftdi'ем ft232) чтобы иметь CDC и про драйвера со стороны ПК вообще не вспоминать.
FTDI - это не CDC.

 

INF файл можно руками написать по примеру за пол часа. Зато получится свой "драйвер" со своими строками в названиях и т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

INF файл можно руками написать по примеру за пол часа. Зато получится свой "драйвер" со своими строками в названиях и т.д.

Пример не покажете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пример не покажете?
Я все время начинаю с этого, так как оно всегда под рукой.

 

В сети можно найти получше примеры, в том числе и от производителей МК.

RZUsbStick.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я все время начинаю с этого, так как оно всегда под рукой.
Спасибо. Этот файл подписывать не нужно?

И еще вопрос - вот там всякие магические цифры в ClassGuid - они откуда берутся?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо. Этот файл подписывать не нужно?
Я не пробовал ни на чем новее Win7, но не думаю. INF просто указывает на стандартный драйвер из винды.

 

И еще вопрос - вот там всякие магические цифры в ClassGuid - они откуда берутся?

 

Они стандартные. Значения должны быть в MSDN где-то. Но их менять в общем случае не нужно.

Изменено пользователем ataradov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Встречал аномалии при работе с микросхемой преобразователь USB-COM AS8303, которая имеет такие же PID/VID как PL2303. Видимо подделывается ею. Аномалии не объяснить ни электрической, ни программной кривизной. Причём аномалии встречались и у устройств, подключённых через эту микросхему.

 

Возможно, если от законного владельца не было публичного или персонального разрешения на использование клонов, то гарантии безглючности не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...