USB PIDs for Open Source USB Projects
At some point in the past, I wrote a blog post about USB PIDs/VIDs and Hackaday recently released a post about a company that was willing to give out PIDs to qualified open source USB projects. Now I don’t think about this everyday, so I was a bit rusty and asked why this was necessary. The following is a summary of what I was taught!
It seems that if you use a USB to serial chip, such as one of FTDI’s many offerings, you can use their PID/VID. The PID is what allows the OS to figure out what drivers to load. Since all FT232x (for instance) have the same driver requirements, people just usually use FTDI’s VID/PID. Ie, it’s only relevant for drivers for the USB to 232 chip.
FTDI has drivers for various other variants of theirs, but in each case their chip is a single-function device, so it’s easier to write generic drivers. But if you’re writing something based on an ATMega32U4, for instance, you’ll need your own PID, since it could do anything.
IE. The ATMega32U4 can be used as an USB to serial chip, as well as anything else you’re able to make it do. So using the ATMega32U4 decreases the number of parts for the board since you don’t need to include a dedicated USB to Serial chip. And of course the MCU of your choice can do anything else - you can make an HID device, or any other number of kinds of devices.
Anyway! So that’s why you might want your own PID - if you’re getting rid of the specific USB to serial chip on your board, and rolling that functionality into a chip that’s doing something else.
For more information on how to get one: http://hackaday.com/2015/04/03/usb-pids-for-all/ and http://hackaday.com/2015/04/03/usb-pids-for-all/
@atdiy/@tymkrs










