This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Using an I2C capable IC for a unique identifier

Other Parts Discussed in Thread: TCA6408A, TCA9534

Hello,

I am currently working on a project that involves plugging multiple devices into one test system. Each of these devices are unique.

Currently the production tech selects the device from a drop down menu in our software. We have came across a problem that if the wrong profile is selected, it will either damage the DUT or the test system itself.

I would like to use some form of I2C device to hold a unique programmable field that I could read with each test profile to ensure that the test adapter being used is correct for the DUT.

I am not really sure what type of device I need for this application. I am quite familiar with the BQ series of smart battery chips that TI manufactures. Does TI have any IC's like I am looking for that will address/communicate like the SBS chips do?

Thanks,

  • Hello Alex, thank you for posting to The Forum.

    TI's first thoughts on a unique identifier would be an I2C device that has programmable memory like an EEPROM. You could have each device that plugs into the system have a unique byte of data when read from a specific address in the EEPROM. TI does not make EEPROM though as it has a lot of difficulties (R/W life cycle for one).

    You could have an I/O expander which can be externally set through the port pins. For an 8 bit I/O expander, this would give up to 256 unique identifiers. For cost TCA9534 and for size TCA6408A.

    The logic H/L can be set externally with pull up/pull down resistors. After The logic is set, when the user plugs in the card, they can read the input ports of TCA9534 to identify which card was plugged in.

    The trick to this though would be that all the cards would have the TCA9534 so each TCA9534 would need a unique address OR you could use dynamic addressing. The question is how many cards are being planned on plugging in at one time?


    Looking forward to your reply.

  • Thanks for your suggestion.

    I believe this is the route we will go, as I am not very familiar with programming/communicating with EEPROM. It appears I can address this chip just like a smart battery chip.

    We will use this on our fixtures that connect our smart batteries to our test system. We will only be testing one battery pack model and one battery pack at a time, so addresses will not be a problem.

    We do use the recommended SMBus protocol for our smart battery communication. I will want to use that same bus for this I/O ex-pander. Do you think that the chip will work with the difference in pull-up resistance?

  • Hey Alex,

    " Do you think that the chip will work with the difference in pull-up resistance?"
    This shouldn't be a problem at all. The SMbus is based off of the I2C protocol so they are very similar, I2C has rise time requirements based on the frequency that you operate at, for 100kHz rise time needs to be below 1 microsecond and for 400kHz you need to be below 300ns. Assuming your bus capacitance is low, you likely won't have an issue with this.

    If you have any furhter questions, let us know.
    Thanks,
    -Bobby
  • Thanks for your help. I greatly appreciate it.