The issue of identifying the Gadgets is sort of a recurring thing. There needs to be a human-readable sticky label on the hardware, giving the model number, hardware revision, hardware options, and serial number; also, matching data needs to be programmed into the EEPROM, so that the equivalent of the label contents can be read by a computer via the USB cable.
The obvious approach is to have the sticky label include both human-readable text and a QR code. But... QR codes in the little area I have left after budgeting for legible text don't work very well.
So, ponder: why do we have things like barcodes, OCR fonts, and suchlike? Well, if we think back to the 1970s, what would we have needed to read ordinary text off a label?
Right. A fairly high resolution digital camera (yet to be invented), and a multi-gazillion-dollar supercomputer if we wanted the result this week.
Nowadays, that supercomputer can be had for under $50, retail; a suitable camera, maybe $15. Wholesale, much less. And OCR software has come a long way.
Just for giggles, I just pointed my phone's camera at some very fine print and told Google Giggle Gaggle Goggles to have a look at it. The result: perfectly OCR'ed text.
I'm thinking that my label should just have the information printed in human-readable form, using a very clear font, and I can have a small camera built into the programming / test / calibration fixture to read the label into the computer that's managing the process. Toss in additional knowledge of which positions should be letters and which should be figures, and reliability of OCR should be good enough (especially since much of the information is amenable to sanity checking).
I think a lot of the new-model barcode / QR-code scanners are really just cameras with special firmware (though supermarket scanners mostly still use lasers, as far as I've seen - unless those are just there for familiarity, and the actual work is done using a camera). Another generation of software, and they'll be able to read text directly... leaving only the problem of identifying which text the scanner should be reading (plus of course the detail of having to keep the legacy barcodes around for many years, for compatibility with the older scanners).