This guide provides a step-by-step process for finalizing your CP210x or USB microcontroller (MCU) product.
Each USB device attached to a USB host must have a unique Vendor ID (VID), Product ID (PID) and Serial String combination in order to function properly.
- The Vendor ID is obtained from USB.org and requires a yearly fee to maintain.
- The Product IDs are assigned and maintained by the vendor who owns the VID. Product IDs are normally used to distinguish between different products under a single VID - this is at the discretion of the vendor. If a Silicon Labs USB device is used in a product, it is permissible for a company to use their own VID or a Silicon Labs VID. To use a Silicon Labs VID, you must be issued a custom PID directly from Silicon Labs. It is not allowed to use a random PID under the Silicon Labs VID, nor to use a PID assigned to a different company.
- The Product String is a text string used to describe the product. This string will be displayed in the Device Manager whenever the USB product is connected to the PC.
- The Serial String is used to distinguish between multiple devices which have the same VID and PID. By default, all CP21xx devices except the CP2101, CP2102 and CP2103 are programmed with a unique 32-bit serial number per device family at the factory. This number will be converted to an eight-character hexadecimal string. The CP2101, CP2102 and CP2103 will only be programmed with serial numbers upon request. Custom serialization for all devices can also be requested.
Request a custom Vendor ID (Optional)
Request a custom Product ID for use with the Silicon Labs Vendor ID (Recommended)
Step 2: Customize a Driver
Customize a driver using AN220: Driver Customization Wizard.
More information on the selections in the software can be found in the AN220 application note.
Step 3: Customize the USB MCU or CP210x Hardware
For CP210x devices, use AN721: CP210x/CP211x Customization Wizard. More information on the customizable fields in the AN721 software can be found in the AN721 application note.
For USB MCU devices, add the custom PID to the hardware descriptors and recompile the code.
Step 4: Test and Package the Driver
Test the driver on the desired operating system(s).
Note: On Windows 7 and later, installing a driver created by the AN220 software will require disabling driver signing, since the driver is uncertified after customization. More Information: Disabling Driver Signing. The driver will no longer require driver signing to be disabled after WHQL recertification.
Once the driver is tested, consider wrapping the driver installer (DPInst) created by the AN220 software into a custom installer that installs all software needed by the product. The DPInst installer can be placed in Quiet Mode to do this. More information can be found here: What is DPInst?
Step 5: Recertify the Driver
More information on this process can be found in AN807.
Step 6: Custom Pre-Programming Requests
To request that we pre-program a custom VID/PID number and/or serialize devices prior to shipment of CP21xx USB devices, contact your local Silicon Labs sales office or authorized representative.