Hardware revision + unique serial IC's !!?? - Page 1
Forum section: electronics / general

author: dav888
author_rank: Regular Contributor
timestamp: September 20, 2018, 03:04:15 pm
content: Hi,I'm dreaming of an IC that is a combined QR-code and Hardware revisioning tag.Anyone knows if this exists!?There are cheap temp-sensors with i2c and unique serials, and there are passive laser-etched tags with some sort of qr-code on them...but what I'd like is:QR-Code with unique counterI2C to read-out that same QR-code4 gpio's to tie to GND or VDD for indicating Hardware revision (also read via I2C)Thoughts??

author: JPortici
author_rank: Super Contributor
timestamp: September 20, 2018, 03:08:31 pm
content: mm.. ST makes I2C EEPROMs with a 128 byte OTP area, so you can write there your serial number, hardware revision and all other info that must not be erased or altered(i do this when i'm not using dsPICs which have a dedicated OTP area on chip)no idea about the QR code, though

author: Ice-Tea
author_rank: Super Contributor
timestamp: September 20, 2018, 03:12:06 pm
content: Not sure what your preocupation with QR codes is? That's just another way to represent a string of data, in this case a serial number?

author: Ice-Tea
author_rank: Super Contributor
timestamp: September 20, 2018, 05:10:45 pm
content: Quote from: blueskull on September 20, 2018, 03:14:59 pmOh!OK. That makes sense. Kinda. Would need quite a bit of surface on the chip to make it big enough to scan, though...

author: dgtl
author_rank: Regular Contributor
timestamp: September 20, 2018, 06:30:11 pm
content: I've used 1-wire chips for identification. There are some with parallel inputs, that you can use for board revision (DS28E04-100).I've not seen any with the number on the case; it would probably not be readable with a scanner anyway. Read it out electronically.Another idea would be using the dynamic RFID tag chips. It acts like an RFID/NFC tag, but has additional I2C interface. Use an NFC reader to scan the tags.

author: PA0PBZ
author_rank: Super Contributor
timestamp: September 20, 2018, 06:52:03 pm
content: Quote from: dgtl on September 20, 2018, 06:30:11 pmI'm not sure OP wants the QR code on the chip itself.

author: ajb
author_rank: Super Contributor
timestamp: September 20, 2018, 07:42:12 pm
content: The other option is to print QR code labels, then as part of the initial board config scan the QR code and load the data into your NV memory. The QR code labels can include version info if you want.

author: AloyseTech
author_rank: Regular Contributor
timestamp: September 20, 2018, 08:55:32 pm
content: Some microcontroller development board have either an internal unique ID or an external I2C ID chip (basically a 128bit unique identifier which is garantied by manufacturer). It is also common to see laser-etched QR code on mass produced PCB. I don't know if it is a unique QR code though.

author: donotdespisethesnake
author_rank: Super Contributor
timestamp: September 20, 2018, 09:13:51 pm
content: Quote from: ajb on September 20, 2018, 07:42:12 pmWhat happens if programming the NV memory depends on the hardware revision?I would settle for a unique id + configurable hardware id, but a QR code on the IC as well would be pretty neat.

author: djacobow
author_rank: Super Contributor
timestamp: September 20, 2018, 09:16:45 pm
content: I can see the benefit of a chip that can be read electronically, by eyeball, and optically by machine, but I agree that the latter necessitate something large that is not going to price/space friendly.I think what is commonly done in manufacturing environments is that as part of the program/test plan, a decal is generated with serial number read off the chip on it. The decal can then be applied to the box, the outside or inside of the case, and stored on a computer.I worked for an IoT company that did this. When configuring the product, the end user had to enter the code on the box which was a hashed version of the serial. This meant that someone else couldn't easily reconfigure your hardware. And when the device phoned home the first time, that value was compared with what we had on file to keep coutnerfeit hardware off our systems.

author: ejeffrey
author_rank: Super Contributor
timestamp: September 20, 2018, 10:44:05 pm
content: The idea sounds cool but I think it doesn't have much of a market. In large volumes labels are going to be cheaper and more flexible. Presumably whatever project this is already needs to be tested and flashed as part of assembly. Adding label printing to the assembly process is trivial. The advantage here is that the label can be any size and location. This can be on the edge of the board away from components or on the enclosure so the user can read it without opening.

author: ajb
author_rank: Super Contributor
timestamp: September 21, 2018, 02:54:23 pm
content: Quote from: donotdespisethesnake on September 20, 2018, 09:13:51 pmThe same thing that happens when you bring up a device for the first time normally? If you're doing field/OTA updates, then sure, you want the device to be able to intrinsically know who and what it is whenever it wakes up, but when doing the initial configuration, you presumably know what device is on your bench or on your production line, so you flash the board, tell it what it is and what revision, and whatever else it should store in its NV contents. If you need to unequivocally know the hardware revision, then you can continue to use pin strapping on the board itself.

author: TomS_
author_rank: Frequent Contributor
timestamp: September 24, 2018, 03:42:27 pm
content: Maxim DS2431+ is a 1-wire, 1kbit EEPROM with a 64 bit factory set unique ID that cannot be altered (I believe it is laser etched).Though that doesnt satisfy the GPIO requirement, theres no particular reason you couldnt store the HW version in a byte of the EEPROM and read it out, along with the 64 bit unique ID?But as with most Maxim stuff, they arent cheap.

author: brabus
author_rank: Frequent Contributor
timestamp: September 24, 2018, 04:08:08 pm
content: Not really sure if the OP knowswhat a QR Code is, though...

author: dav888
author_rank: Regular Contributor
timestamp: December 30, 2020, 10:43:47 pm
content: we usually print or laser the QR codes today, min size that works seems to be 4*4mmso the chip I wantcould be 4*4 bga or qfn style.a cool additional feature for it to make more sense would be a set of say 4x gpio'sthis way you could easily define your board revision or bom-config by simply pulling the ones for that revision to gnd

author: gussy
author_rank: Contributor
timestamp: December 31, 2020, 10:45:30 am
content: Molex actually made a "chip" with a unique QR code etched on top:https://www.digikey.com/en/product-highlight/m/molex-connector/track-it-traceability-padIt looks like they EOL'd them in the last few years though. Not surprising given their cost compared to a QR code sticker. Every CM that I've ever worked with, large and small, has been completely capable of printing and placing small QR stickers for PCBA traceability.If the molex parts actually did something active, like being having some EEPROM and the serial number on I2C then it could be more interesting, but they were essentially just expensive QR code stickers that a PnP machine could place.

author: fchk
author_rank: Frequent Contributor
timestamp: December 31, 2020, 11:36:20 am
content: Quote from: dav888 on December 30, 2020, 10:43:47 pmWould RFID also be ok?ST has EEPROMS that have both I2C and RFID:https://www.st.com/en/nfc/st25-dynamic-nfc-tags.htmlfchk

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: December 31, 2020, 11:48:13 am
content: I think your best bet is a QR code label, which gets read and programmed into an eeprom as part of the production test process. Or depending on your process, maybe a unique ID (from an MCU or other serial-number device) that gets printed onto a QR code label in production.Microchip sell EEPROMs with unique MAC addresses :https://www.digikey.co.uk/product-detail/en/microchip-technology/24AA02E48T-I-OT/24AA02E48T-I-OTCT-ND/2003468A standard SO8 I2C EEPROM can give you 3 inputs for hardware version - the address pins, but you could probably also porgram the HW version as part of the above production programming step.