Qu'est-ce qu'un ID produit en USB et dois-je l'acheter pour mon projet?

11

J'essaie de développer un appareil portable qui me permettra de transférer des données d'un périphérique de stockage USB à un autre sans utiliser de PC / ordinateur portable. Je lisais le guide du développeur de Jan Axelson où je suis tombé sur une section qui disait qu'il fallait acheter un ID de fournisseur / ID de produit USB pour fabriquer n'importe quel périphérique USB. J'ai lu la même chose sur le forum des implémenteurs USB. Je ne suis pas sûr de l'importance de cet ID produit dans mon projet.

  • S'agit-il d'une adresse MAC pour les ordinateurs / ordinateurs portables et en aurai-je besoin?

  • Est-ce quelque chose requis uniquement pour développer des périphériques et non des périphériques comme ce que je souhaite implémenter (qui, je suppose, ressemble plus à un hôte)?

Infusion de Wormwood n Asfodel
la source
Il semble que vous agissez en tant qu'hôte dans ce cas, vous n'en aurez donc pas besoin selon la réponse de Wouter.
PeterJ
@PeterJ Je suis désolé d'avoir apporté cela en retard, mais je prévois également de développer une interface à écran tactile pour ignorer et gérer le transfert de périphériques. Suis-je toujours prêt à me passer d'un ID de fournisseur / ID de produit?
Infusion de Wormwood n Asfodel
Si celui-ci était connecté via USB au même périphérique hôte, ce serait un périphérique et en auriez besoin. Voir ici pour les prix: usb.org/developers/vendor . Vous n'avez vraiment besoin que d'un seul pour utiliser le logo et pour la production, si vous êtes juste à un stade de concept / test, vous pouvez simplement en créer un. Aucun ID de fournisseur officiel 666 n'a été attribué, par exemple, j'ai remarqué il y a quelque temps. De plus, je ne suis pas sûr à 100% que vous en auriez besoin de toute façon, les conflits ne seraient pas un problème s'il n'était pas destiné à se connecter à un PC et vous n'auriez probablement pas besoin d'un logo USB, bien que je ne sois pas sûr sur le côté juridique des choses.
PeterJ
Je prévois de l'intégrer dans le même appareil comme un écran tactile sur un smartphone. Cela le rendra-t-il redevable desdits frais?
Infusion de Wormwood n Asfodel
Non ça ira. Il s'agit vraiment uniquement de compatibilité avec les produits destinés aux utilisateurs finaux lorsqu'ils sont directement connectés à un PC.
PeterJ

Réponses:

12

Je ne sais pas exactement ce que vous voulez faire, mais s'il s'agit d'un périphérique hôte, vous n'avez en effet pas besoin d'un USB VID / PID.

Le VID / PID USB d'un périphérique esclave est utilisé par l'hôte pour identifier le ou les pilotes à utiliser pour le périphérique esclave. Un périphérique hôte n'a pas besoin de s'identifier auprès de l'esclave, il n'a donc pas besoin d'un VID / PID.

Wouter van Ooijen
la source
Un appareil qui peut être utilisé pour transférer des données d'un périphérique de stockage USB (clé USB) à un autre, éliminant ainsi un ordinateur portable / PC qui est principalement utilisé pour y parvenir.
Infusion de Wormwood n Asfodel
J'ai reformulé la première phrase au cas où elle serait ambiguë.
Infusion de Wormwood n Asfodel
Cela ignore les périphériques OTG, qui peuvent être à la fois hôtes ou esclaves.
Passant
@Passerby: Quand un appareil OTG est un appareil, il a besoin d'un VID et d'un PID, quand c'est un hôte, il n'en a pas. Vous devez donc acheter un VID pour la fois où c'est un appareil.
Warren Hill
5

Seuls les appareils ont besoin d'un VID et d'un PID pas d'hôtes.

Le Vendor ID ou VID est un numéro 16 bits que vous devez acheter auprès de l'USB Foundation. Si vous souhaitez créer un périphérique USB (et respecter pleinement les règles), le VID identifie votre organisation.

L'ID de produit ou PID est également un nombre de 16 bits, mais est sous votre contrôle. Lorsque vous achetez un VID, vous avez le droit de l'utiliser avec tous les PID possibles, ce qui vous donne 65536 combinaisons VID: PID possibles. L'intention est qu'une combinaison VID: PID identifie de manière unique un poduit particulier à l'échelle mondiale.

Cela garantit qu'aucun PC ne peut jamais voir deux appareils différents avec le même VID et PID car le PC les utilise pour identifier l'appareil, sinon un conflit pourrait se produire.

Remarque: contrairement à un MAC-ID, le but d'une combinaison VID: PID est d'identifier de manière unique un type de périphérique dans la mesure où le système d'exploitation sait quels pilotes utiliser, il n'est pas toujours nécessaire de pouvoir distinguer deux périphériques identiques. Par exemple, deux clés USB ont l'ordinateur ne sait pas seulement quel est l'appareil, il sait à quel port il est branché.

Lorsque vous branchez un périphérique USB dans le système d'exploitation, le périphérique demande son VID et son PID et lui donne une adresse qu'il continuera à utiliser jusqu'à ce que le périphérique soit retiré (ou l'ordinateur éteint).

Une fois que le PC connaît le VID et le PID, il vérifie s'il les connaît déjà. Si c'est le cas, il charge les bons pilotes; sinon, vous avez la possibilité d'installer les pilotes appropriés. Ce processus est appelé dénombrement.

D'un autre côté, un MAC-ID ne fournit pas en soi d'informations sur ce qu'est un périphérique (ordinateur, imprimante, routeur, etc.) mais identifie de manière unique un périphérique: deux PC identiques auront des MAC-ID différents comme s'ils les deux sont branchés sur le même réseau Ethernet, cela ne fonctionnera pas correctement. Cependant, deux clés USB identiques auront un VID et un PID identiques.

Si je veux fabriquer et vendre 1 million de périphériques USB identiques, je n'ai besoin d'acheter qu'un seul VID. Si je veux fabriquer et vendre 1 million d'appareils Ethernet, je dois acheter 1 million de MAC-ID

Warren Hill
la source
Pourquoi n'ont-ils pas simplement émis un ID de périphérique USB détectable comme une adresse Bluetooth dans les appareils Bluetooth ou même des adresses MAC dans les ordinateurs portables?
Infusion de Wormwood n Asfodel
@StaceyMyers J'ai étendu ma réponse pour expliquer la différence dans ce qu'une combinaison USB VID: PID tente de réaliser par opposition à un MAC-ID. Je n'ai jamais conçu un appareil Bluetooth, je ne le comprends donc pas assez pour commenter.
Warren Hill
Ce sont des informations très utiles pour la connaissance générale de l'USB (j'ai donc voté également), mais je ne pense pas que cela réponde à la question de l'OP (comme le fait la réponse acceptée), car la chose que l'OP veut concevoir serait un hôte USB. Je ne suggère pas de modifications à ce stade, cependant - juste pour info.
cp.engr
2

Notez que certains fournisseurs de matériel, tels que Microchip , sont prêts à sous-licencier gratuitement leur propre ID de fournisseur à leurs clients.

martinm
la source
Vous serez généralement limité à produire 10000 unités de votre appareil au maximum si vous sous-licenciez le VID d'un fournisseur de microcontrôleur de cette manière.
cp.engr