Skip to content

Latest commit

 

History

History
58 lines (43 loc) · 2.25 KB

README_USB-VID-PID.md

File metadata and controls

58 lines (43 loc) · 2.25 KB

Note on USB VID and PID

!! Read this disclaimer carefully. You'll be responsible for
!! any misuse of the defaults provided with the project sources.

USB drivers identify hardware by means of two 16 bit identifiers

VID - Vendor ID
PID - Product ID

In a 'softcoded' USB Controler like the Cypress FX2 each firmware with a specific functionality should have a unique VID/PID so that drivers can automatically detect and configure.

The assignment of USB VID/PID is done by usb.org. Unfortunately there is no VID range reserved for 'development' or 'internal use', the only official way to obtain a VID is to buy one from usb.org, see http://www.usb.org/developers/vendor/

The usb_jtag project bought many years ago a small PID range from a re-seller and used

VID=16C0
PID=06AD

for a project which implemented an Altera UsbBlaster compatible JTAG interface.

The firmware provided with this project provides

  • a JTAG interface (via EP1 and EP2)
  • data channels (via EP4, EP6 and optionally EP8) The JTAG part is compatible with the usb_jtag implementation and by extension compatible with the usbblaster cable driver provided by UrJtag, and can therefore be operated with the jtag command.

However, because the firmware offers additional functionality it should have a separate VID/PID. Unfortunately it is not longer possible to buy at very modest cost a PID sub-range, as was done by the usb_jtag project bought many years ago.

VOTI, a small dutch company, has bought a VID for it's own developments and made a small range of PID publicly available as free for internal lab use. Usage is granted for internal lab use only by VOTI under the conditions:

  • the gadgets in which you use those PIDs do not leave your desk
  • you won't complain to VOTI if you get in trouble with duplicate PIDs (for instance because someone else did not follow the previous rule).
  • See http://www.voti.nl/pids/pidfaq.html for further details.

The retro11 project uses one of these free for internal lab use PIDs

VID=16C0
PID=03EF

from VOTI as default VID/PID.

So keep in mind

  • This is is perfectly fine for plain hobbyist usage
  • But respect the ownership of VOTI of this VID/PID and do not use this VID/PID for other purposes!