How write user defined serial number to USB flash

Status
Not open for further replies.
Joined
Oct 8, 2015
Messages
15
Location
IL
We have a large number of USB flash drives that were serialized wrong by an outside vendor.

Below is the code to read said number: CA000000000000010023

string temp = wmi_dd1["PnPDeviceID"].ToString();

results: "USBSTOR\\DISK&VEN_SMI&PROD_USB_DISK&REV_1100\\CA000000000000010023&0"

I have been asked to look into correcting the numbers ourselves.
Can any help me write the defined serial number to the USB Flash drive.
 
Originally Posted By: ZTime33

Can any help me write the defined serial number to the USB Flash drive.


Probably not, but you'll need to start with some details of the chipset followed by a vendor data sheet with the programming specs unless you can find a vendor application to do it.
No rhyme or reason to these devices, nor any standard way of programming them.
 
Originally Posted By: ZTime33
We have a large number of USB flash drives that were serialized wrong by an outside vendor.

Below is the code to read said number: CA000000000000010023

string temp = wmi_dd1["PnPDeviceID"].ToString();

results: "USBSTOR\\DISK&VEN_SMI&PROD_USB_DISK&REV_1100\\CA000000000000010023&0"

I have been asked to look into correcting the numbers ourselves.
Can any help me write the defined serial number to the USB Flash drive.


I believe this might be of some use
 
I did not give this too much thought when writing my first response...

it depends on the device if you can do that and would basically require writing to it's internal eeprom. Other than that I'm really not aware of a usb standard providing a common method for changing serial numbers but it would be nice to have though to help identify devices when you have multiple.

typing in the linux terminal:

lsusb -v | grep -i serial
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
iSerial 0
iSerial 1
iSerial 0
iSerial 1
iSerial 1
iSerial 2

Couldn't open device, some information will be missing
Couldn't open device, some information will be missing
iSerial 0
iSerial 1


Pretty pointless to even have serial numbers like these since it doesn't help identify which is which. I guess if you could find who the serial/usb chip manufacturer is then maybe you can find if that manufacturer also provides an eeprom editor but for the most part I think they are just hardcoded in some form and not editable.

What you can do is just use the physical usb port to identify it. If you change hubs etc you would have to update that list but that would be the only practical way I can think of identifying the USB specifically.
 
Last edited:
Hard to tell if that is a hardware serial # or a disk id. On my system, it is the same as the disk ID. However my USB flash drive is so cheap it doesn't even have a serial # so maybe it returns that as a 'default'

You can change the disk ID using diskpart in Windows. I guess one way to test if it's the same is to run the following on the command line:

diskpart
list disk [find the disk # of the usb drive]
select disk # [where # is the usb drive]
list disk [double check]
detail disk [note the disk id]

You can then change the disk id using uniqueid command
 
Last edited:
Thanks everyone,
Took apart drive, determined it was a Chipsbank CMB2098E
I now can write serial number to drives.
 
Last edited:
Status
Not open for further replies.
Back
Top