Is it practical for firmware to be uniquely identified in production

You may be asking about a software-only solution but if you are able to add a cheap IC to your board, you can use a 'Silicon Serial Number' chip.

These are tiny ROM chips that each device contains a unique binary number. Examples are Maxim's DS2401 (1-wire bus) and DS28CM00 (I2C) which have a 48-bit unique number.

The number is unique amongst the all the ICs made of that part number by that manufacturer. It's not unique amongst all the SSN chips made by everybody in the world, obviously. But they make it very easy to pick a device for your board and know that each board ever made will read a different and unique number from it.


Most production programmers are capable of inserting a unique serial number into the programmed memory, its a process normally called serialization. This is a grab of the Serialization screen from an old Dataman programmer.

serialization display from Dataman programmer


yes, certainly, as mentioned mac addresses are an obvious one, usually in a flash/eeprom next to the mac if it is a separate part, or in a flash/eeprom elsewhere. vital product data (board serial number, etc) can be placed in a separate eeprom or flash or in the same device used to store other firmware.

When you have a situation for example where field upgrades of the firmware are possible, part of the system design, you dont want the VPD data erased when the firmware flash is erased and reprogrammed, so you need to solve that by either using write protect features of the flash device (putting the VPD in its on bank/area and locking that area), and not necessarily publishing/documenting publicly how to release the write protect pin and/or some other solution such that you can program the VPD in mfg and then keep it locked otherwise (a pull down/up as required then when programmed during/around ICT that fixture can pull it the other way).

It is probably more common than you think, medical is but a very very tiny subset of folks that would do this. Maybe not a television remote control but probably a mouse or keyboard and certainly a cell phone, etc.

If/when a sticker is also used on the board, you may find it has a barcode, so that during manufacturing the fixture or operator can scan the barcode, assembly rev, etc and add that to the VPD for that board.