CP2103 - driver install causes garbled serial # keys in registry
I've been looking into this some more, and as far as I can tell Windows thinks the devices have no serial numbers. It looks like those weird registry key values are system-created keys for USB devices with no serial number.Show more
I tried pulling up the serial # with USBDeview, but it lists it as blank. USBView (different program) shows the iSerialNumber offset as 0x03. I wanted to look at the raw data and see if the serial number string was invalid, or just blank, but I haven't quite figured that one out yet.
Using CP210xSetIDs.exe with CP210xManufacturing.DLL version 4.1 shows the serial number field as 0001, so I don't understand why it's not being detected when I install the drivers. The configuration tool they originally sent me used CP210xManufacturing.DLL version 1.1, and I wonder if mixing the two caused some issues? It seemed to work just fine for a while, though.
Oct 28 2017, 4:00 PM
CP2103 - driver install causes garbled serial # keys in registry on
A customer is using the CP2103 in one of their products. They supplied us with custom drivers and a USB configuration tool that's basically a stripped-down CP210xSetIDs.exe.Show more
Everything seemed to be working fine at first. When I changed the product's serial number, I would be prompted to reinstall the drivers, and new registry keys in the format Vid_[VID]&Pid_[PID]&[Serial #] (for the USB bus entry) and Vid_[VID]&Pid_[PID]&[Serial #]_00 (for the virtual COM port) were created.
At some point, I tried to reprogram the serial # on one of the products and the unit stopped responding. I looked at the registry entry, and the serial # section of the key name was garbled text. Even worse, when I change the serial # now, it has no effect on the product - the drivers don't reload, and no new registry key is created.
I uninstalled all the customer drivers/software, and I downloaded the latest SiLabs default drivers. I changed the VID/PID back to 10C4/EA60 and loaded the CP210x drivers. I'm still getting the same problem.
I can use the CP210xManufacturing API to change and read back serial number stored in the CP2103's EEPROM, and that works. But no matter what I change it to, the registry entry looks something like this (multiple entries from plugging the product into multiple USB ports):
I was expecting the keys to follow the serial #, like this:
I read about the [Manufacturing Ignore Serial Numbers] option in AN335, but I don't see that set anywhere in the drivers they gave me, and I'm still getting the problem using the default SiLabs drivers. I also get the issue if I move to a different PC.
Did I somehow screw up the CP2103's? Any ideas on what caused this problem, and is there any way of fixing it?
Oct 28 2017, 4:00 PM