I am looking for a way for a host system to identify that a certain mechanical module C is connected to it. This mechanical module doesn't need to have any electronics in it, but due to host compatibility reasons (with other mechanical components A, B), it has an I2C bus established between it and the host (even if we don't need it).

I was thinking on putting an IC on this bus, on the mechanical part side, so that the host could probe the bus looking for the IC, in order to know if the part has been attached.

Essentially, I'm looking for an I2C IC with only input pins (to configure it's address) that ACKs when its address is probed, and nothing else.

Do these kind of ICs exist? Or do I have to use some other regular IC (gpio expander, for example) with lots on configurable address pins?

  • 1
    How will you know you're actually talking to your I2C device instead of some other with the same address? I'd put something into the I2C to verify against, even if it's just a part number or something. – Steve Aug 19 at 17:18
up vote 16 down vote accepted

An EEPROM is the usual solution. The RAM SPD (Serial Presence Detect) function uses an EEPROM on an I2C bus.

The chips are remarkably inexpensive, for example the Microchip AT34C02D is $0.03 in 100 quantity at Digikey (factory price is 0.13 each, as Abe Karplus mentions, so that's a clearance price).

For your application you might not need to program the EEPROM (256 bytes), but doing so could allow you to encode revision numbers etc.

  • 2
    I don't think they're usually that cheap: the Digikey listing shows as "Non-stock", so 3 cents is a clearance price. The normal price for the AT34C02D, on Microchip Direct, is 13 cents in hundreds. (Still a good choice, but not as remarkably so.) – Abe Karplus Aug 19 at 19:24
  • @AbeKarplus Yes, you're right, I'll add that to the answer. – Spehro Pefhany Aug 19 at 19:25
  • Thank you for your answer. I think this is exactly what I was looking for. Here is a list of the current Microchip ICs that target SPD. – AmiguelS Aug 20 at 11:28

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.