Каждое подключенное устройство USB идентифицирует себя комбинацией VID/PID. В этой паре VID — 16-битный идентификатор производителя (Vendor ID), а PID — 16-битный идентификатор изделия (Product ID). Персональный компьютер использует эту комбинацию, чтобы найти драйверы для устройства, если таковые существуют в природе.
Естественно, для корректной работы всей экосистемы у каждого устройства USB должна быть уникальная комбинация VID/PID, чтобы не происходило путаницы с драйверами.
Реестром идентификаторов управляет некоммерческая организация USB Implementers Forum, Inc. (USB.org). Есть только два способа зарегистрировать у них VID: стать членом USB.org, уплачивая ежегодные взносы, или купить идентификатор VID за $5000. Далее каждый владелец VID распределяет идентификаторы PID на своё усмотрение.
В таких условиях возникает вопрос: а что делать участникам некоммерческих Open Source проектов, у которых нет денег, чтобы оплатить членство или выкупить идентификатор, но им нужен VID для обеспечения нормальной дееспособности устройств?
Специально для решения этой проблемы запущен PID.codes — база бесплатных PID для всех желающих.
В качестве базового VID используется идентификатор 0x1209 одной компании, которая зарегистрировала его ещё до изменения правил, запрещающих передачу PID третьим лицам. Сама компания уже прекратила производство продукции, так что 16-битный диапазон её адресов передаётся во всеобщее достояние.